@rnmapbox/maps 10.1.0-rc.6 → 10.1.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 (661) hide show
  1. package/CHANGELOG.md +5 -9
  2. package/README.md +31 -5
  3. package/android/build.gradle +2 -6
  4. package/android/install.md +21 -5
  5. package/android/src/main/AndroidManifest.xml +1 -1
  6. package/android/src/main/java/com/rnmapbox/rnmbx/RNMBXPackage.kt +12 -76
  7. package/android/src/main/java/com/rnmapbox/rnmbx/components/AbstractEvent.java +35 -0
  8. package/android/src/main/java/com/rnmapbox/rnmbx/components/AbstractEventEmitter.kt +0 -5
  9. package/android/src/main/java/com/rnmapbox/rnmbx/components/annotation/RNMBXMarkerView.kt +6 -17
  10. package/android/src/main/java/com/rnmapbox/rnmbx/components/annotation/RNMBXMarkerViewManager.kt +9 -8
  11. package/android/src/main/java/com/rnmapbox/rnmbx/components/annotation/RNMBXPointAnnotation.kt +35 -33
  12. package/android/src/main/java/com/rnmapbox/rnmbx/components/annotation/RNMBXPointAnnotationManager.kt +7 -8
  13. package/android/src/main/java/com/rnmapbox/rnmbx/components/camera/RNMBXCamera.kt +4 -4
  14. package/android/src/main/java/com/rnmapbox/rnmbx/components/images/RNMBXImages.kt +1 -2
  15. package/android/src/main/java/com/rnmapbox/rnmbx/components/images/RNMBXImagesManager.kt +6 -31
  16. package/android/src/main/java/com/rnmapbox/rnmbx/components/location/LocationComponentManager.kt +47 -78
  17. package/android/src/main/java/com/rnmapbox/rnmbx/components/location/RNMBXNativeUserLocation.kt +25 -246
  18. package/android/src/main/java/com/rnmapbox/rnmbx/components/location/RNMBXNativeUserLocationManager.kt +7 -90
  19. package/android/src/main/java/com/rnmapbox/rnmbx/components/mapview/NativeMapViewModule.kt +8 -1
  20. package/android/src/main/java/com/rnmapbox/rnmbx/components/mapview/RNMBXMapView.kt +114 -185
  21. package/android/src/main/java/com/rnmapbox/rnmbx/components/mapview/RNMBXMapViewManager.kt +8 -16
  22. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/RNMBXStyle.kt +1 -1
  23. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/RNMBXStyleFactory.kt +101 -1176
  24. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXCircleLayerManager.kt +0 -8
  25. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXFillLayerManager.kt +5 -12
  26. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXHeatmapLayerManager.kt +0 -7
  27. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXLayer.kt +6 -25
  28. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXLineLayerManager.kt +0 -7
  29. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXRasterLayer.kt +0 -4
  30. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXRasterLayerManager.kt +2 -8
  31. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXSymbolLayerManager.kt +0 -8
  32. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/sources/RNMBXShapeSource.kt +6 -56
  33. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/sources/RNMBXShapeSourceManager.kt +5 -7
  34. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/sources/RNMBXVectorSource.kt +1 -1
  35. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/sources/RNMBXVectorSourceManager.kt +4 -5
  36. package/android/src/main/java/com/rnmapbox/rnmbx/events/AndroidCallbackEvent.java +1 -1
  37. package/android/src/main/java/com/rnmapbox/rnmbx/events/FeatureClickEvent.java +3 -3
  38. package/android/src/main/java/com/rnmapbox/rnmbx/events/IEvent.kt +4 -1
  39. package/android/src/main/java/com/rnmapbox/rnmbx/events/ImageMissingEvent.java +1 -1
  40. package/android/src/main/java/com/rnmapbox/rnmbx/events/LocationEvent.kt +1 -1
  41. package/android/src/main/java/com/rnmapbox/rnmbx/events/MapChangeEvent.kt +1 -1
  42. package/android/src/main/java/com/rnmapbox/rnmbx/events/MapClickEvent.java +2 -2
  43. package/android/src/main/java/com/rnmapbox/rnmbx/events/MapUserTrackingModeEvent.kt +4 -4
  44. package/android/src/main/java/com/rnmapbox/rnmbx/events/PointAnnotationClickEvent.java +1 -1
  45. package/android/src/main/java/com/rnmapbox/rnmbx/events/PointAnnotationDragEvent.java +3 -3
  46. package/android/src/main/java/com/rnmapbox/rnmbx/events/constants/EventKeys.java +39 -0
  47. package/android/src/main/java/com/rnmapbox/rnmbx/modules/RNMBXModule.kt +1 -18
  48. package/android/src/main/java/com/rnmapbox/rnmbx/modules/RNMBXOfflineModule.kt +1 -4
  49. package/android/src/main/java/com/rnmapbox/rnmbx/utils/BitmapUtils.kt +0 -3
  50. package/android/src/main/java/com/rnmapbox/rnmbx/utils/DownloadMapImageTask.kt +2 -5
  51. package/android/src/main/java/com/rnmapbox/rnmbx/utils/GeoJSONUtils.kt +0 -5
  52. package/android/src/main/java/com/rnmapbox/rnmbx/utils/extensions/ReadableArray.kt +1 -21
  53. package/android/src/main/java/com/rnmapbox/rnmbx/utils/extensions/ReadableMap.kt +0 -111
  54. package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/Annotation.kt +1 -33
  55. package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/Image.kt +1 -17
  56. package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/Location.kt +9 -6
  57. package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/MapboxMap.kt +0 -11
  58. package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/OfflineManager.kt +0 -6
  59. package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/Annotation.kt +1 -29
  60. package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/Image.kt +1 -21
  61. package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/Location.kt +2 -2
  62. package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/MapboxMap.kt +0 -5
  63. package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/OfflineManager.kt +0 -4
  64. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXCircleLayerManagerDelegate.java +6 -9
  65. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXCircleLayerManagerInterface.java +2 -3
  66. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXFillLayerManagerDelegate.java +6 -9
  67. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXFillLayerManagerInterface.java +2 -3
  68. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXHeatmapLayerManagerDelegate.java +6 -9
  69. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXHeatmapLayerManagerInterface.java +2 -3
  70. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXLineLayerManagerDelegate.java +6 -9
  71. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXLineLayerManagerInterface.java +2 -3
  72. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXMapViewManagerDelegate.java +0 -3
  73. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXMapViewManagerInterface.java +0 -1
  74. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXMarkerViewManagerDelegate.java +0 -3
  75. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXMarkerViewManagerInterface.java +0 -1
  76. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXNativeUserLocationManagerDelegate.java +2 -23
  77. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXNativeUserLocationManagerInterface.java +1 -8
  78. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXRasterLayerManagerDelegate.java +6 -9
  79. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXRasterLayerManagerInterface.java +2 -3
  80. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXSymbolLayerManagerDelegate.java +6 -9
  81. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXSymbolLayerManagerInterface.java +2 -3
  82. package/ios/RNMBX/CommonLayerProperties.H +0 -2
  83. package/ios/RNMBX/CustomHttpHeaders.swift +9 -2
  84. package/ios/RNMBX/RNMBXCamera.swift +4 -4
  85. package/ios/RNMBX/RNMBXEvent.swift +0 -2
  86. package/ios/RNMBX/RNMBXImageModule.mm +2 -2
  87. package/ios/RNMBX/RNMBXImages.swift +6 -22
  88. package/ios/RNMBX/RNMBXImagesComponentView.mm +1 -19
  89. package/ios/RNMBX/RNMBXInteractiveElement.swift +1 -1
  90. package/ios/RNMBX/RNMBXLayer.swift +0 -27
  91. package/ios/RNMBX/RNMBXLocationModule.swift +14 -25
  92. package/ios/RNMBX/RNMBXLocationModuleV11.swift +14 -81
  93. package/ios/RNMBX/RNMBXLogging.swift +0 -8
  94. package/ios/RNMBX/RNMBXMapView.swift +207 -507
  95. package/ios/RNMBX/RNMBXMapViewComponentView.mm +20 -28
  96. package/ios/RNMBX/RNMBXMapViewManager.m +0 -1
  97. package/ios/RNMBX/RNMBXMapViewManager.swift +1 -0
  98. package/ios/RNMBX/RNMBXMapViewModule.mm +1 -0
  99. package/ios/RNMBX/RNMBXMarkerView.swift +3 -11
  100. package/ios/RNMBX/RNMBXMarkerViewComponentView.mm +0 -5
  101. package/ios/RNMBX/RNMBXMarkerViewManager.m +0 -1
  102. package/ios/RNMBX/RNMBXModule.m +1 -1
  103. package/ios/RNMBX/RNMBXModule.swift +0 -24
  104. package/ios/RNMBX/RNMBXNativeUserLocation.swift +19 -248
  105. package/ios/RNMBX/RNMBXNativeUserLocationComponentView.mm +6 -15
  106. package/ios/RNMBX/RNMBXNativeUserLocationViewManager.m +0 -8
  107. package/ios/RNMBX/RNMBXOfflineModule.m +1 -1
  108. package/ios/RNMBX/RNMBXPointAnnotation.swift +1 -34
  109. package/ios/RNMBX/RNMBXPointAnnotationModule.mm +2 -2
  110. package/ios/RNMBX/RNMBXShapeSource.swift +15 -54
  111. package/ios/RNMBX/RNMBXStyle.swift +1 -786
  112. package/ios/RNMBX/RNMBXStyleValue.swift +4 -56
  113. package/ios/RNMBX/RNMBXUtils.swift +7 -2
  114. package/ios/RNMBX/rnmapbox_maps-Swift.pre.h +0 -3
  115. package/ios/install.md +26 -5
  116. package/lib/commonjs/Mapbox.js +0 -63
  117. package/lib/commonjs/Mapbox.js.map +1 -1
  118. package/lib/commonjs/RNMBXModule.js +1 -3
  119. package/lib/commonjs/RNMBXModule.js.map +1 -1
  120. package/lib/commonjs/classes/AnimatedCoordinatesArray.js.map +1 -1
  121. package/lib/commonjs/classes/AnimatedExtractCoordinateFromArray.js.map +1 -1
  122. package/lib/commonjs/classes/AnimatedPoint.js.map +1 -1
  123. package/lib/commonjs/classes/AnimatedRouteCoordinatesArray.js.map +1 -1
  124. package/lib/commonjs/classes/AnimatedShape.js.map +1 -1
  125. package/lib/commonjs/classes/index.d.js.map +1 -1
  126. package/lib/commonjs/classes/index.js.map +1 -1
  127. package/lib/commonjs/components/AbstractLayer.js +1 -1
  128. package/lib/commonjs/components/AbstractLayer.js.map +1 -1
  129. package/lib/commonjs/components/AbstractSource.js.map +1 -1
  130. package/lib/commonjs/components/Annotation.js.map +1 -1
  131. package/lib/commonjs/components/Atmosphere.js.map +1 -1
  132. package/lib/commonjs/components/BackgroundLayer.js.map +1 -1
  133. package/lib/commonjs/components/Callout.js.map +1 -1
  134. package/lib/commonjs/components/Camera.js.map +1 -1
  135. package/lib/commonjs/components/CircleLayer.js +2 -7
  136. package/lib/commonjs/components/CircleLayer.js.map +1 -1
  137. package/lib/commonjs/components/FillExtrusionLayer.js.map +1 -1
  138. package/lib/commonjs/components/FillLayer.js +2 -7
  139. package/lib/commonjs/components/FillLayer.js.map +1 -1
  140. package/lib/commonjs/components/HeadingIndicator.js.map +1 -1
  141. package/lib/commonjs/components/HeatmapLayer.js +2 -7
  142. package/lib/commonjs/components/HeatmapLayer.js.map +1 -1
  143. package/lib/commonjs/components/Image.js.map +1 -1
  144. package/lib/commonjs/components/ImageSource.js.map +1 -1
  145. package/lib/commonjs/components/Images.js.map +1 -1
  146. package/lib/commonjs/components/Light.js.map +1 -1
  147. package/lib/commonjs/components/LineLayer.js +2 -7
  148. package/lib/commonjs/components/LineLayer.js.map +1 -1
  149. package/lib/commonjs/components/MapView.js +8 -0
  150. package/lib/commonjs/components/MapView.js.map +1 -1
  151. package/lib/commonjs/components/MarkerView.js +3 -5
  152. package/lib/commonjs/components/MarkerView.js.map +1 -1
  153. package/lib/commonjs/components/NativeBridgeComponent.js.map +1 -1
  154. package/lib/commonjs/components/{CustomLocationProvider.js → NativeUserLocation.js} +5 -5
  155. package/lib/commonjs/components/NativeUserLocation.js.map +1 -0
  156. package/lib/commonjs/components/PointAnnotation.js.map +1 -1
  157. package/lib/commonjs/components/RasterDemSource.js.map +1 -1
  158. package/lib/commonjs/components/RasterLayer.js +2 -7
  159. package/lib/commonjs/components/RasterLayer.js.map +1 -1
  160. package/lib/commonjs/components/RasterSource.js.map +1 -1
  161. package/lib/commonjs/components/ShapeSource.js.map +1 -1
  162. package/lib/commonjs/components/SkyLayer.js +2 -2
  163. package/lib/commonjs/components/SkyLayer.js.map +1 -1
  164. package/lib/commonjs/components/Style.js.map +1 -1
  165. package/lib/commonjs/components/StyleImport.js.map +1 -1
  166. package/lib/commonjs/components/SymbolLayer.js +2 -7
  167. package/lib/commonjs/components/SymbolLayer.js.map +1 -1
  168. package/lib/commonjs/components/Terrain.js.map +1 -1
  169. package/lib/commonjs/components/UserLocation.js +2 -2
  170. package/lib/commonjs/components/UserLocation.js.map +1 -1
  171. package/lib/commonjs/components/VectorSource.js.map +1 -1
  172. package/lib/commonjs/global.d.js.map +1 -1
  173. package/lib/commonjs/index.js.map +1 -1
  174. package/lib/commonjs/index.web.js.map +1 -1
  175. package/lib/commonjs/modules/location/locationManager.js.map +1 -1
  176. package/lib/commonjs/modules/offline/OfflineCreatePackOptions.js.map +1 -1
  177. package/lib/commonjs/modules/offline/OfflinePack.js.map +1 -1
  178. package/lib/commonjs/modules/offline/offlineManager.js +4 -4
  179. package/lib/commonjs/modules/offline/offlineManager.js.map +1 -1
  180. package/lib/commonjs/modules/snapshot/SnapshotOptions.js.map +1 -1
  181. package/lib/commonjs/modules/snapshot/snapshotManager.js.map +1 -1
  182. package/lib/commonjs/requestAndroidLocationPermissions.js.map +1 -1
  183. package/lib/commonjs/specs/NativeMapViewModule.js.map +1 -1
  184. package/lib/commonjs/specs/NativeRNMBXImageModule.js.map +1 -1
  185. package/lib/commonjs/specs/NativeRNMBXPointAnnotationModule.js.map +1 -1
  186. package/lib/commonjs/specs/NativeRNMBXShapeSourceModule.js.map +1 -1
  187. package/lib/commonjs/specs/RNMBXAtmosphereNativeComponent.js.map +1 -1
  188. package/lib/commonjs/specs/RNMBXBackgroundLayerNativeComponent.js.map +1 -1
  189. package/lib/commonjs/specs/RNMBXCalloutNativeComponent.js.map +1 -1
  190. package/lib/commonjs/specs/RNMBXCameraNativeComponent.js.map +1 -1
  191. package/lib/commonjs/specs/RNMBXCircleLayerNativeComponent.js +0 -2
  192. package/lib/commonjs/specs/RNMBXCircleLayerNativeComponent.js.map +1 -1
  193. package/lib/commonjs/specs/RNMBXFillExtrusionLayerNativeComponent.js.map +1 -1
  194. package/lib/commonjs/specs/RNMBXFillLayerNativeComponent.js +0 -2
  195. package/lib/commonjs/specs/RNMBXFillLayerNativeComponent.js.map +1 -1
  196. package/lib/commonjs/specs/RNMBXHeatmapLayerNativeComponent.js +0 -2
  197. package/lib/commonjs/specs/RNMBXHeatmapLayerNativeComponent.js.map +1 -1
  198. package/lib/commonjs/specs/RNMBXImageNativeComponent.js.map +1 -1
  199. package/lib/commonjs/specs/RNMBXImageSourceNativeComponent.js.map +1 -1
  200. package/lib/commonjs/specs/RNMBXImagesNativeComponent.js.map +1 -1
  201. package/lib/commonjs/specs/RNMBXLightNativeComponent.js.map +1 -1
  202. package/lib/commonjs/specs/RNMBXLineLayerNativeComponent.js +0 -2
  203. package/lib/commonjs/specs/RNMBXLineLayerNativeComponent.js.map +1 -1
  204. package/lib/commonjs/specs/RNMBXMapViewNativeComponent.js.map +1 -1
  205. package/lib/commonjs/specs/RNMBXMarkerViewNativeComponent.js.map +1 -1
  206. package/lib/commonjs/specs/RNMBXNativeUserLocationNativeComponent.js +0 -1
  207. package/lib/commonjs/specs/RNMBXNativeUserLocationNativeComponent.js.map +1 -1
  208. package/lib/commonjs/specs/RNMBXPointAnnotationNativeComponent.js.map +1 -1
  209. package/lib/commonjs/specs/RNMBXRasterDemSourceNativeComponent.js.map +1 -1
  210. package/lib/commonjs/specs/RNMBXRasterLayerNativeComponent.js +0 -2
  211. package/lib/commonjs/specs/RNMBXRasterLayerNativeComponent.js.map +1 -1
  212. package/lib/commonjs/specs/RNMBXRasterSourceNativeComponent.js.map +1 -1
  213. package/lib/commonjs/specs/RNMBXShapeSourceNativeComponent.js.map +1 -1
  214. package/lib/commonjs/specs/RNMBXSkyLayerNativeComponent.js.map +1 -1
  215. package/lib/commonjs/specs/RNMBXStyleImportNativeComponent.js.map +1 -1
  216. package/lib/commonjs/specs/RNMBXSymbolLayerNativeComponent.js +0 -2
  217. package/lib/commonjs/specs/RNMBXSymbolLayerNativeComponent.js.map +1 -1
  218. package/lib/commonjs/specs/RNMBXTerrainNativeComponent.js.map +1 -1
  219. package/lib/commonjs/specs/RNMBXVectorSourceNativeComponent.js.map +1 -1
  220. package/lib/commonjs/specs/codegenUtils.js.map +1 -1
  221. package/lib/commonjs/types/BaseProps.js.map +1 -1
  222. package/lib/commonjs/types/OnPressEvent.js.map +1 -1
  223. package/lib/commonjs/types/Position.js.map +1 -1
  224. package/lib/commonjs/types/index.js.map +1 -1
  225. package/lib/commonjs/utils/BridgeValue.js.map +1 -1
  226. package/lib/commonjs/utils/Logger.js.map +1 -1
  227. package/lib/commonjs/utils/MapboxStyles.d.js +0 -5
  228. package/lib/commonjs/utils/MapboxStyles.d.js.map +1 -1
  229. package/lib/commonjs/utils/StyleValue.js.map +1 -1
  230. package/lib/commonjs/utils/animated/Animated.js.map +1 -1
  231. package/lib/commonjs/utils/checkRequiredProps.js.map +1 -1
  232. package/lib/commonjs/utils/deprecation.js.map +1 -1
  233. package/lib/commonjs/utils/filterUtils.js.map +1 -1
  234. package/lib/commonjs/utils/geoUtils.js.map +1 -1
  235. package/lib/commonjs/utils/getAnnotationsLayerID.js.map +1 -1
  236. package/lib/commonjs/utils/index.js.map +1 -1
  237. package/lib/commonjs/utils/nativeRef.js.map +1 -1
  238. package/lib/commonjs/utils/styleMap.js +2 -67
  239. package/lib/commonjs/utils/styleMap.js.map +1 -1
  240. package/lib/commonjs/web/MapContext.js.map +1 -1
  241. package/lib/commonjs/web/MapboxModule.js.map +1 -1
  242. package/lib/commonjs/web/UnimplementedComponent.js.map +1 -1
  243. package/lib/commonjs/web/components/Camera.js.map +1 -1
  244. package/lib/commonjs/web/components/MapView.js.map +1 -1
  245. package/lib/commonjs/web/index.js.map +1 -1
  246. package/lib/commonjs/web/utils/Logger.js.map +1 -1
  247. package/lib/module/Mapbox.js +0 -18
  248. package/lib/module/Mapbox.js.map +1 -1
  249. package/lib/module/RNMBXModule.js +0 -1
  250. package/lib/module/RNMBXModule.js.map +1 -1
  251. package/lib/module/classes/AnimatedCoordinatesArray.js.map +1 -1
  252. package/lib/module/classes/AnimatedExtractCoordinateFromArray.js.map +1 -1
  253. package/lib/module/classes/AnimatedPoint.js.map +1 -1
  254. package/lib/module/classes/AnimatedRouteCoordinatesArray.js.map +1 -1
  255. package/lib/module/classes/AnimatedShape.js.map +1 -1
  256. package/lib/module/classes/index.d.js.map +1 -1
  257. package/lib/module/classes/index.js.map +1 -1
  258. package/lib/module/components/AbstractLayer.js +1 -1
  259. package/lib/module/components/AbstractLayer.js.map +1 -1
  260. package/lib/module/components/AbstractSource.js.map +1 -1
  261. package/lib/module/components/Annotation.js.map +1 -1
  262. package/lib/module/components/Atmosphere.js.map +1 -1
  263. package/lib/module/components/BackgroundLayer.js.map +1 -1
  264. package/lib/module/components/Callout.js.map +1 -1
  265. package/lib/module/components/Camera.js.map +1 -1
  266. package/lib/module/components/CircleLayer.js +2 -7
  267. package/lib/module/components/CircleLayer.js.map +1 -1
  268. package/lib/module/components/FillExtrusionLayer.js.map +1 -1
  269. package/lib/module/components/FillLayer.js +2 -7
  270. package/lib/module/components/FillLayer.js.map +1 -1
  271. package/lib/module/components/HeadingIndicator.js.map +1 -1
  272. package/lib/module/components/HeatmapLayer.js +2 -7
  273. package/lib/module/components/HeatmapLayer.js.map +1 -1
  274. package/lib/module/components/Image.js.map +1 -1
  275. package/lib/module/components/ImageSource.js.map +1 -1
  276. package/lib/module/components/Images.js.map +1 -1
  277. package/lib/module/components/Light.js.map +1 -1
  278. package/lib/module/components/LineLayer.js +2 -7
  279. package/lib/module/components/LineLayer.js.map +1 -1
  280. package/lib/module/components/MapView.js +8 -0
  281. package/lib/module/components/MapView.js.map +1 -1
  282. package/lib/module/components/MarkerView.js +3 -5
  283. package/lib/module/components/MarkerView.js.map +1 -1
  284. package/lib/module/components/NativeBridgeComponent.js.map +1 -1
  285. package/lib/module/components/NativeUserLocation.js +7 -0
  286. package/lib/module/components/NativeUserLocation.js.map +1 -0
  287. package/lib/module/components/PointAnnotation.js.map +1 -1
  288. package/lib/module/components/RasterDemSource.js.map +1 -1
  289. package/lib/module/components/RasterLayer.js +2 -7
  290. package/lib/module/components/RasterLayer.js.map +1 -1
  291. package/lib/module/components/RasterSource.js.map +1 -1
  292. package/lib/module/components/ShapeSource.js.map +1 -1
  293. package/lib/module/components/SkyLayer.js +2 -2
  294. package/lib/module/components/SkyLayer.js.map +1 -1
  295. package/lib/module/components/Style.js.map +1 -1
  296. package/lib/module/components/StyleImport.js.map +1 -1
  297. package/lib/module/components/SymbolLayer.js +2 -7
  298. package/lib/module/components/SymbolLayer.js.map +1 -1
  299. package/lib/module/components/Terrain.js.map +1 -1
  300. package/lib/module/components/UserLocation.js +1 -1
  301. package/lib/module/components/UserLocation.js.map +1 -1
  302. package/lib/module/components/VectorSource.js.map +1 -1
  303. package/lib/module/global.d.js.map +1 -1
  304. package/lib/module/index.js.map +1 -1
  305. package/lib/module/index.web.js.map +1 -1
  306. package/lib/module/modules/location/locationManager.js.map +1 -1
  307. package/lib/module/modules/offline/OfflineCreatePackOptions.js.map +1 -1
  308. package/lib/module/modules/offline/OfflinePack.js.map +1 -1
  309. package/lib/module/modules/offline/offlineManager.js +4 -4
  310. package/lib/module/modules/offline/offlineManager.js.map +1 -1
  311. package/lib/module/modules/snapshot/SnapshotOptions.js.map +1 -1
  312. package/lib/module/modules/snapshot/snapshotManager.js.map +1 -1
  313. package/lib/module/requestAndroidLocationPermissions.js.map +1 -1
  314. package/lib/module/specs/NativeMapViewModule.js.map +1 -1
  315. package/lib/module/specs/NativeRNMBXImageModule.js.map +1 -1
  316. package/lib/module/specs/NativeRNMBXPointAnnotationModule.js.map +1 -1
  317. package/lib/module/specs/NativeRNMBXShapeSourceModule.js.map +1 -1
  318. package/lib/module/specs/RNMBXAtmosphereNativeComponent.js.map +1 -1
  319. package/lib/module/specs/RNMBXBackgroundLayerNativeComponent.js.map +1 -1
  320. package/lib/module/specs/RNMBXCalloutNativeComponent.js.map +1 -1
  321. package/lib/module/specs/RNMBXCameraNativeComponent.js.map +1 -1
  322. package/lib/module/specs/RNMBXCircleLayerNativeComponent.js +0 -3
  323. package/lib/module/specs/RNMBXCircleLayerNativeComponent.js.map +1 -1
  324. package/lib/module/specs/RNMBXFillExtrusionLayerNativeComponent.js.map +1 -1
  325. package/lib/module/specs/RNMBXFillLayerNativeComponent.js +0 -3
  326. package/lib/module/specs/RNMBXFillLayerNativeComponent.js.map +1 -1
  327. package/lib/module/specs/RNMBXHeatmapLayerNativeComponent.js +0 -3
  328. package/lib/module/specs/RNMBXHeatmapLayerNativeComponent.js.map +1 -1
  329. package/lib/module/specs/RNMBXImageNativeComponent.js.map +1 -1
  330. package/lib/module/specs/RNMBXImageSourceNativeComponent.js.map +1 -1
  331. package/lib/module/specs/RNMBXImagesNativeComponent.js.map +1 -1
  332. package/lib/module/specs/RNMBXLightNativeComponent.js.map +1 -1
  333. package/lib/module/specs/RNMBXLineLayerNativeComponent.js +0 -3
  334. package/lib/module/specs/RNMBXLineLayerNativeComponent.js.map +1 -1
  335. package/lib/module/specs/RNMBXMapViewNativeComponent.js.map +1 -1
  336. package/lib/module/specs/RNMBXMarkerViewNativeComponent.js.map +1 -1
  337. package/lib/module/specs/RNMBXNativeUserLocationNativeComponent.js +0 -3
  338. package/lib/module/specs/RNMBXNativeUserLocationNativeComponent.js.map +1 -1
  339. package/lib/module/specs/RNMBXPointAnnotationNativeComponent.js.map +1 -1
  340. package/lib/module/specs/RNMBXRasterDemSourceNativeComponent.js.map +1 -1
  341. package/lib/module/specs/RNMBXRasterLayerNativeComponent.js +0 -3
  342. package/lib/module/specs/RNMBXRasterLayerNativeComponent.js.map +1 -1
  343. package/lib/module/specs/RNMBXRasterSourceNativeComponent.js.map +1 -1
  344. package/lib/module/specs/RNMBXShapeSourceNativeComponent.js.map +1 -1
  345. package/lib/module/specs/RNMBXSkyLayerNativeComponent.js.map +1 -1
  346. package/lib/module/specs/RNMBXStyleImportNativeComponent.js.map +1 -1
  347. package/lib/module/specs/RNMBXSymbolLayerNativeComponent.js +0 -3
  348. package/lib/module/specs/RNMBXSymbolLayerNativeComponent.js.map +1 -1
  349. package/lib/module/specs/RNMBXTerrainNativeComponent.js.map +1 -1
  350. package/lib/module/specs/RNMBXVectorSourceNativeComponent.js.map +1 -1
  351. package/lib/module/specs/codegenUtils.js.map +1 -1
  352. package/lib/module/types/BaseProps.js.map +1 -1
  353. package/lib/module/types/OnPressEvent.js.map +1 -1
  354. package/lib/module/types/Position.js.map +1 -1
  355. package/lib/module/types/index.js.map +1 -1
  356. package/lib/module/utils/BridgeValue.js.map +1 -1
  357. package/lib/module/utils/Logger.js.map +1 -1
  358. package/lib/module/utils/MapboxStyles.d.js +0 -5
  359. package/lib/module/utils/MapboxStyles.d.js.map +1 -1
  360. package/lib/module/utils/StyleValue.js.map +1 -1
  361. package/lib/module/utils/animated/Animated.js.map +1 -1
  362. package/lib/module/utils/checkRequiredProps.js.map +1 -1
  363. package/lib/module/utils/deprecation.js.map +1 -1
  364. package/lib/module/utils/filterUtils.js.map +1 -1
  365. package/lib/module/utils/geoUtils.js.map +1 -1
  366. package/lib/module/utils/getAnnotationsLayerID.js.map +1 -1
  367. package/lib/module/utils/index.js.map +1 -1
  368. package/lib/module/utils/nativeRef.js.map +1 -1
  369. package/lib/module/utils/styleMap.js +2 -67
  370. package/lib/module/utils/styleMap.js.map +1 -1
  371. package/lib/module/web/MapContext.js.map +1 -1
  372. package/lib/module/web/MapboxModule.js.map +1 -1
  373. package/lib/module/web/UnimplementedComponent.js.map +1 -1
  374. package/lib/module/web/components/Camera.js.map +1 -1
  375. package/lib/module/web/components/MapView.js.map +1 -1
  376. package/lib/module/web/index.js.map +1 -1
  377. package/lib/module/web/utils/Logger.js.map +1 -1
  378. package/lib/typescript/src/Mapbox.d.ts +2 -16
  379. package/lib/typescript/src/Mapbox.d.ts.map +1 -1
  380. package/lib/typescript/src/RNMBXModule.d.ts +1 -1
  381. package/lib/typescript/src/RNMBXModule.d.ts.map +1 -1
  382. package/lib/typescript/src/components/AbstractLayer.d.ts +4 -9
  383. package/lib/typescript/src/components/AbstractLayer.d.ts.map +1 -1
  384. package/lib/typescript/src/components/Camera.d.ts +3 -5
  385. package/lib/typescript/src/components/Camera.d.ts.map +1 -1
  386. package/lib/typescript/src/components/CircleLayer.d.ts +3 -11
  387. package/lib/typescript/src/components/CircleLayer.d.ts.map +1 -1
  388. package/lib/typescript/src/components/FillLayer.d.ts +1 -10
  389. package/lib/typescript/src/components/FillLayer.d.ts.map +1 -1
  390. package/lib/typescript/src/components/HeatmapLayer.d.ts +4 -12
  391. package/lib/typescript/src/components/HeatmapLayer.d.ts.map +1 -1
  392. package/lib/typescript/src/components/Images.d.ts +1 -1
  393. package/lib/typescript/src/components/LineLayer.d.ts +1 -10
  394. package/lib/typescript/src/components/LineLayer.d.ts.map +1 -1
  395. package/lib/typescript/src/components/MapView.d.ts +6 -6
  396. package/lib/typescript/src/components/MapView.d.ts.map +1 -1
  397. package/lib/typescript/src/components/MarkerView.d.ts +1 -5
  398. package/lib/typescript/src/components/MarkerView.d.ts.map +1 -1
  399. package/lib/typescript/src/components/NativeUserLocation.d.ts +22 -0
  400. package/lib/typescript/src/components/NativeUserLocation.d.ts.map +1 -0
  401. package/lib/typescript/src/components/RasterLayer.d.ts +2 -11
  402. package/lib/typescript/src/components/RasterLayer.d.ts.map +1 -1
  403. package/lib/typescript/src/components/SymbolLayer.d.ts +5 -17
  404. package/lib/typescript/src/components/SymbolLayer.d.ts.map +1 -1
  405. package/lib/typescript/src/components/UserLocation.d.ts +0 -1
  406. package/lib/typescript/src/components/UserLocation.d.ts.map +1 -1
  407. package/lib/typescript/src/modules/offline/offlineManager.d.ts +1 -1
  408. package/lib/typescript/src/modules/offline/offlineManager.d.ts.map +1 -1
  409. package/lib/typescript/src/specs/NativeMapViewModule.d.ts +1 -0
  410. package/lib/typescript/src/specs/NativeMapViewModule.d.ts.map +1 -1
  411. package/lib/typescript/src/specs/NativeRNMBXImageModule.d.ts +1 -0
  412. package/lib/typescript/src/specs/NativeRNMBXImageModule.d.ts.map +1 -1
  413. package/lib/typescript/src/specs/NativeRNMBXPointAnnotationModule.d.ts +1 -0
  414. package/lib/typescript/src/specs/NativeRNMBXPointAnnotationModule.d.ts.map +1 -1
  415. package/lib/typescript/src/specs/NativeRNMBXShapeSourceModule.d.ts +1 -0
  416. package/lib/typescript/src/specs/NativeRNMBXShapeSourceModule.d.ts.map +1 -1
  417. package/lib/typescript/src/specs/RNMBXCircleLayerNativeComponent.d.ts +11 -16
  418. package/lib/typescript/src/specs/RNMBXCircleLayerNativeComponent.d.ts.map +1 -1
  419. package/lib/typescript/src/specs/RNMBXFillLayerNativeComponent.d.ts +4 -9
  420. package/lib/typescript/src/specs/RNMBXFillLayerNativeComponent.d.ts.map +1 -1
  421. package/lib/typescript/src/specs/RNMBXHeatmapLayerNativeComponent.d.ts +4 -9
  422. package/lib/typescript/src/specs/RNMBXHeatmapLayerNativeComponent.d.ts.map +1 -1
  423. package/lib/typescript/src/specs/RNMBXLineLayerNativeComponent.d.ts +4 -9
  424. package/lib/typescript/src/specs/RNMBXLineLayerNativeComponent.d.ts.map +1 -1
  425. package/lib/typescript/src/specs/RNMBXMapViewNativeComponent.d.ts +0 -1
  426. package/lib/typescript/src/specs/RNMBXMapViewNativeComponent.d.ts.map +1 -1
  427. package/lib/typescript/src/specs/RNMBXMarkerViewNativeComponent.d.ts +0 -1
  428. package/lib/typescript/src/specs/RNMBXMarkerViewNativeComponent.d.ts.map +1 -1
  429. package/lib/typescript/src/specs/RNMBXNativeUserLocationNativeComponent.d.ts +3 -20
  430. package/lib/typescript/src/specs/RNMBXNativeUserLocationNativeComponent.d.ts.map +1 -1
  431. package/lib/typescript/src/specs/RNMBXRasterLayerNativeComponent.d.ts +4 -9
  432. package/lib/typescript/src/specs/RNMBXRasterLayerNativeComponent.d.ts.map +1 -1
  433. package/lib/typescript/src/specs/RNMBXSymbolLayerNativeComponent.d.ts +4 -9
  434. package/lib/typescript/src/specs/RNMBXSymbolLayerNativeComponent.d.ts.map +1 -1
  435. package/lib/typescript/src/specs/codegenUtils.d.ts +1 -0
  436. package/lib/typescript/src/specs/codegenUtils.d.ts.map +1 -1
  437. package/lib/typescript/src/types/Position.d.ts +0 -3
  438. package/lib/typescript/src/types/Position.d.ts.map +1 -1
  439. package/lib/typescript/src/utils/styleMap.d.ts.map +1 -1
  440. package/package.json +10 -11
  441. package/plugin/install.md +14 -6
  442. package/rnmapbox-maps.podspec +4 -26
  443. package/setup-jest.js +1 -30
  444. package/src/Mapbox.ts +0 -21
  445. package/src/RNMBXModule.ts +0 -2
  446. package/src/components/AbstractLayer.tsx +5 -11
  447. package/src/components/Camera.tsx +3 -8
  448. package/src/components/CircleLayer.tsx +5 -17
  449. package/src/components/FillLayer.tsx +3 -16
  450. package/src/components/HeatmapLayer.tsx +6 -18
  451. package/src/components/Images.tsx +1 -1
  452. package/src/components/LineLayer.tsx +3 -16
  453. package/src/components/MapView.tsx +9 -7
  454. package/src/components/MarkerView.tsx +5 -12
  455. package/src/components/NativeUserLocation.tsx +29 -0
  456. package/src/components/RasterLayer.tsx +4 -17
  457. package/src/components/SkyLayer.tsx +2 -2
  458. package/src/components/SymbolLayer.tsx +7 -26
  459. package/src/components/UserLocation.tsx +1 -2
  460. package/src/modules/offline/offlineManager.ts +4 -4
  461. package/src/specs/RNMBXCircleLayerNativeComponent.ts +12 -21
  462. package/src/specs/RNMBXFillLayerNativeComponent.ts +4 -13
  463. package/src/specs/RNMBXHeatmapLayerNativeComponent.ts +4 -13
  464. package/src/specs/RNMBXLineLayerNativeComponent.ts +4 -13
  465. package/src/specs/RNMBXMapViewNativeComponent.ts +0 -2
  466. package/src/specs/RNMBXMarkerViewNativeComponent.ts +0 -1
  467. package/src/specs/RNMBXNativeUserLocationNativeComponent.ts +3 -29
  468. package/src/specs/RNMBXRasterLayerNativeComponent.ts +4 -13
  469. package/src/specs/RNMBXSymbolLayerNativeComponent.ts +4 -13
  470. package/src/types/Position.ts +0 -3
  471. package/src/utils/MapboxStyles.d.ts +63 -526
  472. package/src/utils/styleMap.ts +2 -69
  473. package/android/src/main/java/com/rnmapbox/rnmbx/components/AbstractEvent.kt +0 -24
  474. package/android/src/main/java/com/rnmapbox/rnmbx/components/annotation/RNMBXMarkerViewContent.kt +0 -31
  475. package/android/src/main/java/com/rnmapbox/rnmbx/components/annotation/RNMBXMarkerViewContentManager.kt +0 -23
  476. package/android/src/main/java/com/rnmapbox/rnmbx/components/camera/RNMBXVIewportManager.kt +0 -55
  477. package/android/src/main/java/com/rnmapbox/rnmbx/components/camera/RNMBXViewport.kt +0 -408
  478. package/android/src/main/java/com/rnmapbox/rnmbx/components/camera/RNMBXViewportModule.kt +0 -66
  479. package/android/src/main/java/com/rnmapbox/rnmbx/components/images/ImageManager.kt +0 -53
  480. package/android/src/main/java/com/rnmapbox/rnmbx/components/location/RNMBXCustomLocationProvider.kt +0 -114
  481. package/android/src/main/java/com/rnmapbox/rnmbx/components/location/RNMBXCustomLocationProviderManager.kt +0 -54
  482. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXModelLayer.kt +0 -33
  483. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXModelLayerManager.kt +0 -85
  484. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/codeparts/LayerManagerCommonProps.codepart-kt.ejs +0 -59
  485. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/model/RNMBXModels.kt +0 -33
  486. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/model/RNMBXModelsManager.kt +0 -59
  487. package/android/src/main/java/com/rnmapbox/rnmbx/events/constants/EventKeys.kt +0 -44
  488. package/android/src/main/java/com/rnmapbox/rnmbx/modules/RNMBXOfflineModuleLegacy.kt +0 -444
  489. package/android/src/main/java/com/rnmapbox/rnmbx/shape_animators/RNMBXMovePointShapeAnimatorModule.kt +0 -55
  490. package/android/src/main/java/com/rnmapbox/rnmbx/shape_animators/ShapeAnimatorCommon.kt +0 -110
  491. package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/Cancelable.kt +0 -15
  492. package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/Layer.kt +0 -7
  493. package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/StyleFactory.kt +0 -395
  494. package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/Cancelable.kt +0 -3
  495. package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/Layer.kt +0 -3
  496. package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/StyleFactory.kt +0 -8
  497. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXCustomLocationProviderManagerDelegate.java +0 -35
  498. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXCustomLocationProviderManagerInterface.java +0 -18
  499. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXMarkerViewContentManagerDelegate.java +0 -25
  500. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXMarkerViewContentManagerInterface.java +0 -16
  501. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXModelLayerManagerDelegate.java +0 -65
  502. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXModelLayerManagerInterface.java +0 -28
  503. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXModelsManagerDelegate.java +0 -32
  504. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXModelsManagerInterface.java +0 -17
  505. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXViewportManagerDelegate.java +0 -35
  506. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXViewportManagerInterface.java +0 -18
  507. package/android/src/main/old-arch/com/rnmapbox/rnmbx/NativeRNMBXMovePointShapeAnimatorModuleSpec.java +0 -44
  508. package/android/src/main/old-arch/com/rnmapbox/rnmbx/NativeRNMBXViewportModuleSpec.java +0 -49
  509. package/ios/RNMBX/ImageManager.swift +0 -41
  510. package/ios/RNMBX/RNMBXCustomLocationProvider.swift +0 -274
  511. package/ios/RNMBX/RNMBXCustomLocationProviderComponentView.h +0 -15
  512. package/ios/RNMBX/RNMBXCustomLocationProviderComponentView.mm +0 -67
  513. package/ios/RNMBX/RNMBXCustomLocationProviderVIewManager.swift +0 -13
  514. package/ios/RNMBX/RNMBXCustomLocationProviderViewManager.m +0 -10
  515. package/ios/RNMBX/RNMBXFabricPropConvert.h +0 -47
  516. package/ios/RNMBX/RNMBXFabricPropConvert.mm +0 -136
  517. package/ios/RNMBX/RNMBXMarkerViewContentComponentView.h +0 -15
  518. package/ios/RNMBX/RNMBXMarkerViewContentComponentView.mm +0 -55
  519. package/ios/RNMBX/RNMBXMarkerViewContentManager.m +0 -6
  520. package/ios/RNMBX/RNMBXMarkerViewContentManager.swift +0 -14
  521. package/ios/RNMBX/RNMBXModelLayer.swift +0 -59
  522. package/ios/RNMBX/RNMBXModelLayerComponentView.h +0 -15
  523. package/ios/RNMBX/RNMBXModelLayerComponentView.mm +0 -70
  524. package/ios/RNMBX/RNMBXModelLayerViewManager.m +0 -12
  525. package/ios/RNMBX/RNMBXModelLayerViewManager.swift +0 -13
  526. package/ios/RNMBX/RNMBXModels.swift +0 -63
  527. package/ios/RNMBX/RNMBXModelsComponentView.h +0 -17
  528. package/ios/RNMBX/RNMBXModelsComponentView.mm +0 -67
  529. package/ios/RNMBX/RNMBXModelsManager.mm +0 -9
  530. package/ios/RNMBX/RNMBXModelsManager.swift +0 -13
  531. package/ios/RNMBX/RNMBXOfflineModuleLegacy.m +0 -33
  532. package/ios/RNMBX/RNMBXOfflineModuleLegacy.swift +0 -431
  533. package/ios/RNMBX/RNMBXViewport.swift +0 -349
  534. package/ios/RNMBX/RNMBXViewportComponentView.h +0 -17
  535. package/ios/RNMBX/RNMBXViewportComponentView.mm +0 -119
  536. package/ios/RNMBX/RNMBXViewportManager.m +0 -12
  537. package/ios/RNMBX/RNMBXViewportManager.swift +0 -38
  538. package/ios/RNMBX/RNMBXViewportModule.h +0 -18
  539. package/ios/RNMBX/RNMBXViewportModule.mm +0 -87
  540. package/ios/RNMBX/ShapeAnimators/RNMBXMovePointShapeAnimatorModule.m +0 -61
  541. package/ios/RNMBX/ShapeAnimators/RNMBXMovePointShapeAnimatorModule.swift +0 -47
  542. package/ios/RNMBX/ShapeAnimators/ShapeAnimatorCommon.swift +0 -76
  543. package/ios/RNMBX/ShapeAnimators/ShapeAnimatorManager.swift +0 -45
  544. package/ios/RNMBX/Uitls/PropertyChanges.swift +0 -57
  545. package/lib/commonjs/components/CustomLocationProvider.js.map +0 -1
  546. package/lib/commonjs/components/LocationPuck.js +0 -66
  547. package/lib/commonjs/components/LocationPuck.js.map +0 -1
  548. package/lib/commonjs/components/ModelLayer.js +0 -37
  549. package/lib/commonjs/components/ModelLayer.js.map +0 -1
  550. package/lib/commonjs/components/Models.js +0 -43
  551. package/lib/commonjs/components/Models.js.map +0 -1
  552. package/lib/commonjs/components/Viewport.js +0 -105
  553. package/lib/commonjs/components/Viewport.js.map +0 -1
  554. package/lib/commonjs/components/codeparts/LayerPropsCommon.codepart-tsx +0 -62
  555. package/lib/commonjs/modules/offline/OfflinePackLegacy.js +0 -40
  556. package/lib/commonjs/modules/offline/OfflinePackLegacy.js.map +0 -1
  557. package/lib/commonjs/modules/offline/offlineManagerLegacy.js +0 -166
  558. package/lib/commonjs/modules/offline/offlineManagerLegacy.js.map +0 -1
  559. package/lib/commonjs/shape_animators/MovePointShapeAnimator.js +0 -21
  560. package/lib/commonjs/shape_animators/MovePointShapeAnimator.js.map +0 -1
  561. package/lib/commonjs/shape_animators/ShapeAnimatorManager.js +0 -15
  562. package/lib/commonjs/shape_animators/ShapeAnimatorManager.js.map +0 -1
  563. package/lib/commonjs/specs/NativeRNMBXMovePointShapeAnimatorModule.js +0 -10
  564. package/lib/commonjs/specs/NativeRNMBXMovePointShapeAnimatorModule.js.map +0 -1
  565. package/lib/commonjs/specs/NativeRNMBXViewportModule.js +0 -10
  566. package/lib/commonjs/specs/NativeRNMBXViewportModule.js.map +0 -1
  567. package/lib/commonjs/specs/RNMBXCustomLocationProviderNativeComponent.js +0 -11
  568. package/lib/commonjs/specs/RNMBXCustomLocationProviderNativeComponent.js.map +0 -1
  569. package/lib/commonjs/specs/RNMBXMarkerViewContentNativeComponent.js +0 -11
  570. package/lib/commonjs/specs/RNMBXMarkerViewContentNativeComponent.js.map +0 -1
  571. package/lib/commonjs/specs/RNMBXModelLayerNativeComponent.js +0 -13
  572. package/lib/commonjs/specs/RNMBXModelLayerNativeComponent.js.map +0 -1
  573. package/lib/commonjs/specs/RNMBXModelsNativeComponent.js +0 -10
  574. package/lib/commonjs/specs/RNMBXModelsNativeComponent.js.map +0 -1
  575. package/lib/commonjs/specs/RNMBXViewportNativeComponent.js +0 -36
  576. package/lib/commonjs/specs/RNMBXViewportNativeComponent.js.map +0 -1
  577. package/lib/commonjs/specs/codeparts/CommonLayerNativeComponentsProps.codepart-ts +0 -18
  578. package/lib/module/components/CustomLocationProvider.js +0 -7
  579. package/lib/module/components/CustomLocationProvider.js.map +0 -1
  580. package/lib/module/components/LocationPuck.js +0 -57
  581. package/lib/module/components/LocationPuck.js.map +0 -1
  582. package/lib/module/components/ModelLayer.js +0 -30
  583. package/lib/module/components/ModelLayer.js.map +0 -1
  584. package/lib/module/components/Models.js +0 -36
  585. package/lib/module/components/Models.js.map +0 -1
  586. package/lib/module/components/Viewport.js +0 -96
  587. package/lib/module/components/Viewport.js.map +0 -1
  588. package/lib/module/components/codeparts/LayerPropsCommon.codepart-tsx +0 -62
  589. package/lib/module/modules/offline/OfflinePackLegacy.js +0 -34
  590. package/lib/module/modules/offline/OfflinePackLegacy.js.map +0 -1
  591. package/lib/module/modules/offline/offlineManagerLegacy.js +0 -154
  592. package/lib/module/modules/offline/offlineManagerLegacy.js.map +0 -1
  593. package/lib/module/shape_animators/MovePointShapeAnimator.js +0 -13
  594. package/lib/module/shape_animators/MovePointShapeAnimator.js.map +0 -1
  595. package/lib/module/shape_animators/ShapeAnimatorManager.js +0 -8
  596. package/lib/module/shape_animators/ShapeAnimatorManager.js.map +0 -1
  597. package/lib/module/specs/NativeRNMBXMovePointShapeAnimatorModule.js +0 -6
  598. package/lib/module/specs/NativeRNMBXMovePointShapeAnimatorModule.js.map +0 -1
  599. package/lib/module/specs/NativeRNMBXViewportModule.js +0 -6
  600. package/lib/module/specs/NativeRNMBXViewportModule.js.map +0 -1
  601. package/lib/module/specs/RNMBXCustomLocationProviderNativeComponent.js +0 -6
  602. package/lib/module/specs/RNMBXCustomLocationProviderNativeComponent.js.map +0 -1
  603. package/lib/module/specs/RNMBXMarkerViewContentNativeComponent.js +0 -6
  604. package/lib/module/specs/RNMBXMarkerViewContentNativeComponent.js.map +0 -1
  605. package/lib/module/specs/RNMBXModelLayerNativeComponent.js +0 -9
  606. package/lib/module/specs/RNMBXModelLayerNativeComponent.js.map +0 -1
  607. package/lib/module/specs/RNMBXModelsNativeComponent.js +0 -3
  608. package/lib/module/specs/RNMBXModelsNativeComponent.js.map +0 -1
  609. package/lib/module/specs/RNMBXViewportNativeComponent.js +0 -33
  610. package/lib/module/specs/RNMBXViewportNativeComponent.js.map +0 -1
  611. package/lib/module/specs/codeparts/CommonLayerNativeComponentsProps.codepart-ts +0 -18
  612. package/lib/typescript/src/components/CustomLocationProvider.d.ts +0 -15
  613. package/lib/typescript/src/components/CustomLocationProvider.d.ts.map +0 -1
  614. package/lib/typescript/src/components/LocationPuck.d.ts +0 -85
  615. package/lib/typescript/src/components/LocationPuck.d.ts.map +0 -1
  616. package/lib/typescript/src/components/ModelLayer.d.ts +0 -77
  617. package/lib/typescript/src/components/ModelLayer.d.ts.map +0 -1
  618. package/lib/typescript/src/components/Models.d.ts +0 -15
  619. package/lib/typescript/src/components/Models.d.ts.map +0 -1
  620. package/lib/typescript/src/components/Viewport.d.ts +0 -136
  621. package/lib/typescript/src/components/Viewport.d.ts.map +0 -1
  622. package/lib/typescript/src/modules/offline/OfflinePackLegacy.d.ts +0 -24
  623. package/lib/typescript/src/modules/offline/OfflinePackLegacy.d.ts.map +0 -1
  624. package/lib/typescript/src/modules/offline/offlineManagerLegacy.d.ts +0 -93
  625. package/lib/typescript/src/modules/offline/offlineManagerLegacy.d.ts.map +0 -1
  626. package/lib/typescript/src/shape_animators/MovePointShapeAnimator.d.ts +0 -7
  627. package/lib/typescript/src/shape_animators/MovePointShapeAnimator.d.ts.map +0 -1
  628. package/lib/typescript/src/shape_animators/ShapeAnimatorManager.d.ts +0 -5
  629. package/lib/typescript/src/shape_animators/ShapeAnimatorManager.d.ts.map +0 -1
  630. package/lib/typescript/src/specs/NativeRNMBXMovePointShapeAnimatorModule.d.ts +0 -10
  631. package/lib/typescript/src/specs/NativeRNMBXMovePointShapeAnimatorModule.d.ts.map +0 -1
  632. package/lib/typescript/src/specs/NativeRNMBXViewportModule.d.ts +0 -35
  633. package/lib/typescript/src/specs/NativeRNMBXViewportModule.d.ts.map +0 -1
  634. package/lib/typescript/src/specs/RNMBXCustomLocationProviderNativeComponent.d.ts +0 -12
  635. package/lib/typescript/src/specs/RNMBXCustomLocationProviderNativeComponent.d.ts.map +0 -1
  636. package/lib/typescript/src/specs/RNMBXMarkerViewContentNativeComponent.d.ts +0 -6
  637. package/lib/typescript/src/specs/RNMBXMarkerViewContentNativeComponent.d.ts.map +0 -1
  638. package/lib/typescript/src/specs/RNMBXModelLayerNativeComponent.d.ts +0 -28
  639. package/lib/typescript/src/specs/RNMBXModelLayerNativeComponent.d.ts.map +0 -1
  640. package/lib/typescript/src/specs/RNMBXModelsNativeComponent.d.ts +0 -15
  641. package/lib/typescript/src/specs/RNMBXModelsNativeComponent.d.ts.map +0 -1
  642. package/lib/typescript/src/specs/RNMBXViewportNativeComponent.d.ts +0 -59
  643. package/lib/typescript/src/specs/RNMBXViewportNativeComponent.d.ts.map +0 -1
  644. package/src/components/CustomLocationProvider.tsx +0 -22
  645. package/src/components/LocationPuck.tsx +0 -143
  646. package/src/components/ModelLayer.tsx +0 -107
  647. package/src/components/Models.tsx +0 -44
  648. package/src/components/Viewport.tsx +0 -330
  649. package/src/components/codeparts/LayerPropsCommon.codepart-tsx +0 -62
  650. package/src/modules/offline/OfflinePackLegacy.ts +0 -55
  651. package/src/modules/offline/offlineManagerLegacy.ts +0 -181
  652. package/src/shape_animators/MovePointShapeAnimator.ts +0 -18
  653. package/src/shape_animators/ShapeAnimatorManager.tsx +0 -8
  654. package/src/specs/NativeRNMBXMovePointShapeAnimatorModule.ts +0 -16
  655. package/src/specs/NativeRNMBXViewportModule.ts +0 -41
  656. package/src/specs/RNMBXCustomLocationProviderNativeComponent.ts +0 -19
  657. package/src/specs/RNMBXMarkerViewContentNativeComponent.ts +0 -9
  658. package/src/specs/RNMBXModelLayerNativeComponent.ts +0 -38
  659. package/src/specs/RNMBXModelsNativeComponent.ts +0 -18
  660. package/src/specs/RNMBXViewportNativeComponent.ts +0 -117
  661. package/src/specs/codeparts/CommonLayerNativeComponentsProps.codepart-ts +0 -18
@@ -14,6 +14,7 @@ class FeatureEntry {
14
14
  }
15
15
  }
16
16
 
17
+
17
18
  #if RNMBX_11
18
19
  extension QueriedRenderedFeature {
19
20
  var feature : Feature { return queriedFeature.feature }
@@ -97,103 +98,82 @@ class RNMBXCameraChanged : RNMBXEvent, RCTEvent {
97
98
  }
98
99
 
99
100
  @objc(RNMBXMapView)
100
- open class RNMBXMapView: UIView {
101
- var imageManager: ImageManager = ImageManager()
102
-
101
+ open class RNMBXMapView : MapView {
103
102
  var tapDelegate: IgnoreRNMBXMakerViewGestureDelegate? = nil
104
-
103
+
105
104
  var eventDispatcher: RCTEventDispatcherProtocol
105
+
106
+ var compassEnabled: Bool = false
107
+ var compassFadeWhenNorth: Bool = false
108
+ var compassImage: String?
106
109
 
107
110
  var reactOnPress : RCTBubblingEventBlock?
108
111
  var reactOnLongPress : RCTBubblingEventBlock?
109
112
  var reactOnMapChange : RCTBubblingEventBlock?
110
-
113
+
111
114
  @objc
112
115
  var onCameraChanged: RCTDirectEventBlock?
113
-
116
+
114
117
  var styleLoaded: Bool = false
115
118
  var styleLoadWaiters : [(MapboxMap)->Void] = []
116
-
119
+
117
120
  var features: [FeatureEntry] = []
118
-
121
+
119
122
  weak var reactCamera : RNMBXCamera?
120
123
  var images : [RNMBXImages] = []
121
124
  var sources : [RNMBXInteractiveElement] = []
122
125
 
123
126
  var handleMapChangedEvents = Set<RNMBXEvent.EventType>()
124
-
127
+
125
128
  var eventListeners : [Cancelable] = []
126
-
129
+
127
130
  private var isPendingInitialLayout = true
128
131
  private var wasGestureActive = false
129
132
  private var isGestureActive = false
130
-
131
- var layerWaiters : [String:[(String) -> Void]] = [:]
132
133
 
133
- @objc
134
- public var deselectAnnotationOnTap: Bool = false
134
+ var layerWaiters : [String:[(String) -> Void]] = [:]
135
135
 
136
- #if RNMBX_11
136
+ #if RNMBX_11
137
137
  var cancelables = Set<AnyCancelable>()
138
- #endif
138
+ #endif
139
139
 
140
- lazy var pointAnnotationManager : RNMBXPointAnnotationManager = {
141
- let result = RNMBXPointAnnotationManager(annotations: mapView.annotations, mapView: mapView)
140
+ lazy var pointAnnotationManager : PointAnnotationManager = {
141
+ let result = PointAnnotationManager(annotations: annotations, mapView: mapView)
142
142
  self._removeMapboxLongPressGestureRecognizer()
143
143
  return result
144
144
  }()
145
-
145
+
146
146
  lazy var calloutAnnotationManager : MapboxMaps.PointAnnotationManager = {
147
- return mapView.annotations.makePointAnnotationManager(id: "RNMBX-mapview-callouts")
147
+ return annotations.makePointAnnotationManager(id: "RNMBX-mapview-callouts")
148
148
  }()
149
149
 
150
- var _mapView: MapView! = nil
151
- func createMapView() {
152
- #if RNMBX_11
153
- _mapView = MapView(frame: self.bounds, mapInitOptions: MapInitOptions())
154
- #else
155
- let resourceOptions = ResourceOptions(accessToken: RNMBXModule.accessToken!)
156
- _mapView = MapView(frame: frame, mapInitOptions: MapInitOptions(resourceOptions: resourceOptions))
157
- #endif
158
- _mapView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
159
- addSubview(_mapView)
160
-
161
- _mapView.gestures.delegate = self
162
- setupEvents()
163
- }
164
-
165
- var mapView : MapView! {
166
- get { return _mapView }
167
- }
168
- var mapboxMap: MapboxMap! {
169
- get { _mapView.mapboxMap }
150
+ var mapView : MapView {
151
+ get { return self }
170
152
  }
171
153
 
172
154
  @objc public func addToMap(_ subview: UIView) {
173
- withMapView {
174
- if let mapComponent = subview as? RNMBXMapComponent {
175
- let style = self.mapView.mapboxMap.style
176
- var addToMap = false
177
- if mapComponent.waitForStyleLoad() {
178
- if (self.styleLoaded) {
179
- addToMap = true
180
- }
181
- } else {
155
+ if let mapComponent = subview as? RNMBXMapComponent {
156
+ let style = mapView.mapboxMap.style
157
+ var addToMap = false
158
+ if mapComponent.waitForStyleLoad() {
159
+ if (self.styleLoaded) {
182
160
  addToMap = true
183
161
  }
184
-
185
- let entry = FeatureEntry(feature: mapComponent, view: subview, addedToMap: false)
186
- if (addToMap) {
187
- mapComponent.addToMap(self, style: style)
188
- entry.addedToMap = true
189
- }
190
- self.features.append(entry)
191
162
  } else {
192
- subview.reactSubviews()?.forEach { self.addToMap($0) }
163
+ addToMap = true
193
164
  }
194
- if let source = subview as? RNMBXInteractiveElement {
195
- self.sources.append(source)
165
+
166
+ let entry = FeatureEntry(feature: mapComponent, view: subview, addedToMap: false)
167
+ if (addToMap) {
168
+ mapComponent.addToMap(self, style: style)
169
+ entry.addedToMap = true
196
170
  }
171
+ features.append(entry)
172
+ } else {
173
+ subview.reactSubviews()?.forEach { addToMap($0) }
174
+ }
175
+ if let source = subview as? RNMBXInteractiveElement {
176
+ sources.append(source)
197
177
  }
198
178
  }
199
179
 
@@ -203,8 +183,8 @@ open class RNMBXMapView: UIView {
203
183
  if let entryIndex = entryIndex {
204
184
  var entry = features[entryIndex]
205
185
  if (entry.addedToMap) {
206
- mapComponent.removeFromMap(self, reason: .OnDestroy)
207
- entry.addedToMap = false
186
+ mapComponent.removeFromMap(self, reason: .OnDestroy)
187
+ entry.addedToMap = false
208
188
  }
209
189
  features.remove(at: entryIndex)
210
190
  }
@@ -227,20 +207,30 @@ open class RNMBXMapView: UIView {
227
207
  }
228
208
 
229
209
  @objc public required init(frame:CGRect, eventDispatcher: RCTEventDispatcherProtocol) {
210
+ #if RNMBX_11
230
211
  self.eventDispatcher = eventDispatcher
231
- super.init(frame: frame)
212
+ super.init(frame: frame, mapInitOptions: MapInitOptions())
213
+ #else
214
+ let resourceOptions = ResourceOptions(accessToken: RNMBXModule.accessToken!)
215
+ self.eventDispatcher = eventDispatcher
216
+ super.init(frame: frame, mapInitOptions: MapInitOptions(resourceOptions: resourceOptions))
217
+ #endif
218
+
219
+ self.mapView.gestures.delegate = self
220
+
221
+ setupEvents()
232
222
  }
233
223
 
234
224
  public required init (coder: NSCoder) {
235
- fatalError("not implemented")
225
+ fatalError("not implemented")
236
226
  }
237
227
 
238
228
  func layerAdded (_ layer: Layer) {
239
- // TODO
229
+ // TODO
240
230
  }
241
231
 
242
232
  func waitForLayerWithID(_ layerId: String, _ callback: @escaping (_ layerId: String) -> Void) {
243
- let style = mapView.mapboxMap.style;
233
+ let style = mapboxMap.style;
244
234
  if style.layerExists(withId: layerId) {
245
235
  callback(layerId)
246
236
  } else {
@@ -253,141 +243,40 @@ open class RNMBXMapView: UIView {
253
243
  if let camera = reactCamera {
254
244
  if (isPendingInitialLayout) {
255
245
  isPendingInitialLayout = false;
256
-
246
+
257
247
  camera.initialLayout()
258
248
  }
259
249
  }
260
250
  }
261
-
251
+
262
252
 
263
253
  // MARK: - React Native properties
264
- let changes : PropertyChanges<RNMBXMapView> = PropertyChanges()
265
- var mapViewWaiters : [()->Void] = []
266
-
267
- enum Property : String {
268
- case projection
269
- case localizeLabels
270
- case attribution
271
- case logo
272
- case compass
273
- case scaleBar
274
- case onLongPress
275
- case onPress
276
- case scrollEnabled
277
- case rotateEnabled
278
- case pitchEnabled
279
- case onMapChange
280
- case styleURL
281
- case gestureSettings
282
-
283
- func apply(_ map: RNMBXMapView) -> Void {
284
- switch self {
285
- case .projection:
286
- map.applyProjection()
287
- case .localizeLabels:
288
- map.applyLocalizeLabels()
289
- case .attribution:
290
- map.applyAttribution()
291
- case .logo:
292
- map.applyLogo()
293
- case .compass:
294
- map.applyCompass()
295
- case .scaleBar:
296
- map.applyScaleBar()
297
- case .onLongPress:
298
- map.applyOnLongPress()
299
- case .onPress:
300
- map.applyOnPress()
301
- case .scrollEnabled:
302
- map.applyScrollEnabled()
303
- case .rotateEnabled:
304
- map.applyRotateEnabled()
305
- case .onMapChange:
306
- map.applyOnMapChange()
307
- case .styleURL:
308
- map.applyStyleURL()
309
- case .pitchEnabled:
310
- map.applyPitchEnabled()
311
- case .gestureSettings:
312
- map.applyGestureSettings()
313
- }
314
- }
315
- }
316
-
317
- func changed(_ property: Property) {
318
- changes.add(name: property.rawValue, update: property.apply)
319
- }
320
-
321
- func withMapView(callback: @escaping () -> Void) {
322
- if _mapView != nil {
323
- callback()
324
- } else {
325
- mapViewWaiters.append(callback)
326
- }
327
- }
328
-
329
- var projection: StyleProjection?
330
-
254
+
331
255
  @objc public func setReactProjection(_ value: String?) {
332
256
  if let value = value {
333
- projection = StyleProjection(name: value == "globe" ? .globe : .mercator)
334
- } else {
335
- projection = nil
336
- }
337
- changed(.projection)
338
- }
339
-
340
- func applyProjection() {
341
- logged("RNMBXMapView.setReactProjection") {
342
- if let projection = projection {
257
+ let projection = StyleProjection(name: value == "globe" ? .globe : .mercator)
258
+ logged("RNMBXMapView.setReactProjection") {
343
259
  try self.mapboxMap.style.setProjection(projection)
344
260
  }
345
261
  }
346
262
  }
347
-
348
- var locale: (layerIds: [String]?, locale: Locale)? = nil
349
-
263
+
350
264
  @objc public func setReactLocalizeLabels(_ value: NSDictionary?) {
351
- if let value = value {
352
- let localeString = value["locale"] as! String
353
- let layerIds = value["layerIds"] as! [String]?
354
- let locale = localeString == "current" ? Locale.current : Locale(identifier: localeString)
355
- self.locale = (layerIds, locale)
356
- }
357
- changed(.localizeLabels)
358
- }
359
-
360
- func applyLocalizeLabels() {
361
265
  onMapStyleLoaded { _ in
362
- logged("RNMBXMapView.\(#function)") {
363
- if let locale = self.locale {
364
- try self.mapboxMap.style.localizeLabels(into: locale.locale, forLayerIds: locale.layerIds)
266
+ if let value = value {
267
+ logged("RNMBXMapVIew.setReactLocalizeLabels") {
268
+ let localeString = value["locale"] as! String
269
+ let layerIds = value["layerIds"] as! [String]?
270
+ let locale = localeString == "current" ? Locale.current : Locale(identifier: localeString)
271
+ try self.mapboxMap.style.localizeLabels(into: locale, forLayerIds: layerIds)
365
272
  }
366
273
  }
367
274
  }
368
275
  }
369
276
 
370
- struct GestureSettings {
371
- var doubleTapToZoomInEnabled: Bool? = nil;
372
- var doubleTouchToZoomOutEnabled: Bool? = nil;
373
- var pinchPanEnabled: Bool? = nil;
374
- var pinchZoomEnabled: Bool? = nil;
375
- var pitchEnabled: Bool? = nil;
376
- var quickZoomEnabled: Bool? = nil;
377
- var rotateEnabled: Bool? = nil;
378
- var panEnabled: Bool? = nil;
379
- var panDecelerationFactor: CGFloat? = nil;
380
- #if RNMBX_11
381
- var simultaneousRotateAndPinchZoomEnabled: Bool? = nil;
382
- #endif
383
- }
384
-
385
- var gestureSettings = GestureSettings()
386
-
387
- @objc
388
- public func setReactGestureSettings(_ value: NSDictionary?) {
389
- if let value = value {
390
- var options = gestureSettings
277
+ @objc public func setReactGestureSettings(_ value: NSDictionary?) {
278
+ if let value = value, let gestures = self.mapView.gestures {
279
+ var options = gestures.options
391
280
  if let doubleTapToZoomInEnabled = value["doubleTapToZoomInEnabled"] as? NSNumber {
392
281
  options.doubleTapToZoomInEnabled = doubleTapToZoomInEnabled.boolValue
393
282
  }
@@ -401,10 +290,10 @@ open class RNMBXMapView: UIView {
401
290
  options.pinchZoomEnabled = pinchZoomEnabled.boolValue
402
291
  }
403
292
  /* android only
404
- if let pinchZoomDecelerationEnabled = value["pinchZoomDecelerationEnabled"] as? NSNumber {
405
- options.pinchZoomDecelerationEnabled = pinchZoomDecelerationEnabled.boolValue
406
- }
407
- */
293
+ if let pinchZoomDecelerationEnabled = value["pinchZoomDecelerationEnabled"] as? NSNumber {
294
+ options.pinchZoomDecelerationEnabled = pinchZoomDecelerationEnabled.boolValue
295
+ }
296
+ */
408
297
  if let pitchEnabled = value["pitchEnabled"] as? NSNumber {
409
298
  options.pitchEnabled = pitchEnabled.boolValue
410
299
  }
@@ -415,188 +304,76 @@ open class RNMBXMapView: UIView {
415
304
  options.rotateEnabled = rotateEnabled.boolValue
416
305
  }
417
306
  /* android only
418
- if let rotateDecelerationEnabled = value["rotateDecelerationEnabled"] as? NSNumber {
419
- options.rotateDecelerationEnabled = rotateDecelerationEnabled.boolValue
420
- }*/
307
+ if let rotateDecelerationEnabled = value["rotateDecelerationEnabled"] as? NSNumber {
308
+ options.rotateDecelerationEnabled = rotateDecelerationEnabled.boolValue
309
+ }*/
421
310
  if let panEnabled = value["panEnabled"] as? NSNumber {
422
311
  options.panEnabled = panEnabled.boolValue
423
312
  }
424
313
  if let panDecelerationFactor = value["panDecelerationFactor"] as? NSNumber {
425
314
  options.panDecelerationFactor = panDecelerationFactor.CGFloat
426
315
  }
427
- #if RNMBX_11
316
+ #if RNMBX_11
428
317
  if let simultaneousRotateAndPinchZoomEnabled = value["simultaneousRotateAndPinchZoomEnabled"] as? NSNumber {
429
318
  options.simultaneousRotateAndPinchZoomEnabled = simultaneousRotateAndPinchZoomEnabled.boolValue
430
319
  }
431
- #endif
432
- /* android only
433
- if let zoomAnimationAmount = value["zoomAnimationAmount"] as? NSNumber {
434
- options.zoomAnimationAmount = zoomAnimationAmount.CGFloat
435
- }*/
436
- gestureSettings = options
437
-
438
- changed(.gestureSettings)
439
- }
440
- }
441
-
442
- func applyGestureSettings() {
443
- if let gestures = self.mapView?.gestures {
444
- var options = gestures.options
445
- let settings = gestureSettings
446
- if let doubleTapToZoomInEnabled = settings.doubleTapToZoomInEnabled as? Bool {
447
- options.doubleTapToZoomInEnabled = doubleTapToZoomInEnabled
448
- }
449
- if let doubleTouchToZoomOutEnabled = settings.doubleTouchToZoomOutEnabled as? Bool {
450
- options.doubleTouchToZoomOutEnabled = doubleTouchToZoomOutEnabled
451
- }
452
- if let pinchPanEnabled = settings.pinchPanEnabled as? Bool {
453
- options.pinchPanEnabled = pinchPanEnabled
454
- }
455
- if let pinchZoomEnabled = settings.pinchZoomEnabled as? Bool {
456
- options.pinchZoomEnabled = pinchZoomEnabled
457
- }
458
- if let pitchEnabled = settings.pitchEnabled as? Bool {
459
- options.pitchEnabled = pitchEnabled
460
- }
461
- if let quickZoomEnabled = settings.quickZoomEnabled as? Bool {
462
- options.quickZoomEnabled = quickZoomEnabled
463
- }
464
- if let rotateEnabled = settings.rotateEnabled as? Bool {
465
- options.rotateEnabled = rotateEnabled
466
- }
467
- /* android only
468
- if let rotateDecelerationEnabled = value["rotateDecelerationEnabled"] as? NSNumber {
469
- options.rotateDecelerationEnabled = rotateDecelerationEnabled.boolValue
470
- }*/
471
- if let panEnabled = settings.panEnabled as? Bool {
472
- options.panEnabled = panEnabled
473
- }
474
- if let panDecelerationFactor = settings.panDecelerationFactor as? CGFloat {
475
- options.panDecelerationFactor = panDecelerationFactor
476
- }
477
- #if RNMBX_11
478
- if let simultaneousRotateAndPinchZoomEnabled = settings.simultaneousRotateAndPinchZoomEnabled as? Bool {
479
- options.simultaneousRotateAndPinchZoomEnabled = simultaneousRotateAndPinchZoomEnabled
480
- }
481
- #endif
320
+ #endif
482
321
  /* android only
483
- if let zoomAnimationAmount = value["zoomAnimationAmount"] as? NSNumber {
484
- options.zoomAnimationAmount = zoomAnimationAmount.CGFloat
485
- }*/
322
+ if let zoomAnimationAmount = value["zoomAnimationAmount"] as? NSNumber {
323
+ options.zoomAnimationAmount = zoomAnimationAmount.CGFloat
324
+ }*/
486
325
  if options != gestures.options {
487
326
  gestures.options = options
488
327
  }
489
328
  }
490
329
  }
491
330
 
492
- var attributionEnabled: OrnamentVisibility? = nil
493
- var attributionOptions: (position: OrnamentPosition, margins: CGPoint)? = nil
494
-
495
331
  @objc public func setReactAttributionEnabled(_ value: Bool) {
496
- attributionEnabled = value ? .visible : .hidden
497
- changed(.attribution)
498
- }
499
-
500
- func applyAttribution() {
501
- if let visibility = attributionEnabled {
502
- mapView.ornaments.options.attributionButton.visibility = visibility
503
- }
504
- if let options = attributionOptions {
505
- mapView.ornaments.options.attributionButton.position = options.position
506
- mapView.ornaments.options.attributionButton.margins = options.margins
507
- }
332
+ mapView.ornaments.options.attributionButton.visibility = value ? .visible : .hidden
508
333
  }
509
334
 
510
335
  @objc public func setReactAttributionPosition(_ position: [String: NSNumber]) {
511
- attributionOptions = self.getOrnamentOptionsFromPosition(position)
512
- changed(.attribution)
336
+ if let ornamentOptions = self.getOrnamentOptionsFromPosition(position) {
337
+ mapView.ornaments.options.attributionButton.position = ornamentOptions.position
338
+ mapView.ornaments.options.attributionButton.margins = ornamentOptions.margins
339
+ }
513
340
  }
514
341
 
515
- var logoEnabled: OrnamentVisibility? = nil
516
- var logoOptions: (position: OrnamentPosition, margins: CGPoint)? = nil
517
-
518
342
  @objc public func setReactLogoEnabled(_ value: Bool) {
519
- logoEnabled = value ? .visible : .hidden
520
- changed(.logo)
343
+ mapView.ornaments.options.logo.visibility = value ? .visible : .hidden
521
344
  }
522
345
 
523
346
  @objc public func setReactLogoPosition(_ position: [String: NSNumber]) {
524
- logoOptions = self.getOrnamentOptionsFromPosition(position)
525
- changed(.logo)
526
- }
527
-
528
- func applyLogo() {
529
- if let visibility = logoEnabled {
530
- mapView.ornaments.options.logo.visibility = visibility
531
- }
532
- if let options = logoOptions {
533
- mapView.ornaments.options.logo.position = options.position
534
- mapView.ornaments.options.logo.margins = options.margins
347
+ if let ornamentOptions = self.getOrnamentOptionsFromPosition(position) {
348
+ mapView.ornaments.options.logo.position = ornamentOptions.position
349
+ mapView.ornaments.options.logo.margins = ornamentOptions.margins
535
350
  }
536
351
  }
537
352
 
538
- var compassEnabled: Bool = false
539
- var compassPosition: OrnamentPosition? = nil
540
- var compassMargins: CGPoint? = nil
541
- var compassFadeWhenNorth: Bool = false
542
- var compassImage: String?
543
-
544
353
  @objc public func setReactCompassEnabled(_ value: Bool) {
545
354
  compassEnabled = value
546
- changed(.compass)
355
+ refreshCompassVisibility()
547
356
  }
548
-
357
+
549
358
  @objc public func setReactCompassFadeWhenNorth(_ value: Bool) {
550
359
  compassFadeWhenNorth = value
551
- changed(.compass)
360
+ refreshCompassVisibility()
552
361
  }
553
362
 
554
- @objc public func setReactCompassPosition(_ position: [String: NSNumber]) {
555
- if let compassOptions = self.getOrnamentOptionsFromPosition(position) {
556
- compassPosition = compassOptions.position
557
- compassMargins = compassOptions.margins
558
- changed(.compass)
559
- }
560
- }
561
-
562
- @objc public func setReactCompassViewPosition(_ position: NSInteger) {
563
- compassPosition = toOrnamentPositon(Int(truncating: NSNumber(value: position)))
564
- changed(.compass)
565
- }
566
-
567
- @objc public func setReactCompassViewMargins(_ margins: CGPoint) {
568
- compassMargins = margins
569
- changed(.compass)
570
- }
571
-
572
- @objc public func setReactCompassImage(_ image: String) {
573
- compassImage = image.isEmpty ? nil : image
574
- changed(.compass)
575
- }
576
-
577
- func applyCompass() {
363
+ private func refreshCompassVisibility() {
578
364
  var visibility: OrnamentVisibility = .hidden
579
365
  if compassEnabled {
580
366
  visibility = compassFadeWhenNorth ? .adaptive : .visible
581
367
  }
582
368
  mapView.ornaments.options.compass.visibility = visibility
583
369
 
584
- if let position = compassPosition {
585
- mapView.ornaments.options.compass.position = position
586
- }
587
- if let margina = compassMargins {
588
- mapView.ornaments.options.compass.margins = margina
589
- }
590
-
591
- if let compassImage = compassImage {
592
- onMapStyleLoaded { map in
593
- let img = map.style.image(withId: compassImage)
594
- self.mapView.ornaments.options.compass.image = img
595
- }
596
- } else {
597
- // Does not currently reset the image to the default.
598
- // See https://github.com/mapbox/mapbox-maps-ios/issues/1673.
599
- self.mapView.ornaments.options.compass.image = nil
370
+ refreshCompassImage()
371
+ }
372
+
373
+ @objc public func setReactCompassPosition(_ position: [String: NSNumber]) {
374
+ if let ornamentOptions = self.getOrnamentOptionsFromPosition(position) {
375
+ mapView.ornaments.options.compass.position = ornamentOptions.position
376
+ mapView.ornaments.options.compass.margins = ornamentOptions.margins
600
377
  }
601
378
  }
602
379
 
@@ -622,43 +399,42 @@ open class RNMBXMapView: UIView {
622
399
  return .topLeading
623
400
  }
624
401
  }
625
-
626
- var scaleBarEnabled: Bool? = nil
627
- var scaleBarPosition: OrnamentPosition? = nil
628
- var scaleBarMargins: CGPoint? = nil
629
402
 
630
- @objc public func setReactScaleBarEnabled(_ value: Bool) {
631
- scaleBarEnabled = value
632
- changed(.scaleBar)
403
+ @objc public func setReactCompassViewPosition(_ position: NSInteger) {
404
+ mapView.ornaments.options.compass.position = toOrnamentPositon(Int(truncating: NSNumber(value: position)))
633
405
  }
634
406
 
635
- @objc public func setReactScaleBarPosition(_ position: [String: NSNumber]) {
636
- if let ornamentOptions = self.getOrnamentOptionsFromPosition(position) {
637
- scaleBarPosition = ornamentOptions.position
638
- scaleBarMargins = ornamentOptions.margins
639
- }
407
+ @objc public func setReactCompassViewMargins(_ margins: CGPoint) {
408
+ mapView.ornaments.options.compass.margins = margins;
409
+ }
410
+
411
+ @objc public func setReactCompassImage(_ image: String) {
412
+ compassImage = image.isEmpty ? nil : image
413
+ refreshCompassImage()
640
414
  }
641
415
 
642
- func applyScaleBar() {
643
- if let enabled = scaleBarEnabled {
644
- mapView.ornaments.options.scaleBar.visibility = enabled ? .visible : .hidden
645
- }
646
- if let position = scaleBarPosition {
647
- mapView.ornaments.options.scaleBar.position = position
648
- }
649
- if let margins = scaleBarMargins {
650
- mapView.ornaments.options.scaleBar.margins = margins
416
+ private func refreshCompassImage() {
417
+ if let compassImage = compassImage {
418
+ onMapStyleLoaded { map in
419
+ let img = map.style.image(withId: compassImage)
420
+ self.mapView.ornaments.options.compass.image = img
421
+ }
422
+ } else {
423
+ // Does not currently reset the image to the default.
424
+ // See https://github.com/mapbox/mapbox-maps-ios/issues/1673.
425
+ self.mapView.ornaments.options.compass.image = nil
651
426
  }
652
427
  }
653
428
 
654
- @objc override public func didSetProps(_ props: [String]) {
655
- if (_mapView == nil) {
656
- createMapView()
657
-
658
- mapViewWaiters.forEach { $0() }
659
- mapViewWaiters.removeAll()
429
+ @objc public func setReactScaleBarEnabled(_ value: Bool) {
430
+ self.mapView.ornaments.options.scaleBar.visibility = value ? .visible : .hidden
431
+ }
432
+
433
+ @objc public func setReactScaleBarPosition(_ position: [String: NSNumber]) {
434
+ if let ornamentOptions = self.getOrnamentOptionsFromPosition(position) {
435
+ mapView.ornaments.options.scaleBar.position = ornamentOptions.position
436
+ mapView.ornaments.options.scaleBar.margins = ornamentOptions.margins
660
437
  }
661
- changes.apply(self)
662
438
  }
663
439
 
664
440
  @objc public func setReactZoomEnabled(_ value: Bool) {
@@ -667,41 +443,17 @@ open class RNMBXMapView: UIView {
667
443
  self.mapView.gestures.options.pinchZoomEnabled = value
668
444
  }
669
445
 
670
- var scrollEnabled: Bool? = nil
671
446
  @objc public func setReactScrollEnabled(_ value: Bool) {
672
- self.scrollEnabled = value
673
- changed(.scrollEnabled)
674
- }
675
-
676
- func applyScrollEnabled() {
677
- if let value = scrollEnabled {
678
- self.mapView.gestures.options.panEnabled = value
679
- self.mapView.gestures.options.pinchPanEnabled = value
680
- }
447
+ self.mapView.gestures.options.panEnabled = value
448
+ self.mapView.gestures.options.pinchPanEnabled = value
681
449
  }
682
450
 
683
- var rotateEnabled: Bool? = nil
684
451
  @objc public func setReactRotateEnabled(_ value: Bool) {
685
- rotateEnabled = value
686
- changed(.rotateEnabled)
687
- }
688
-
689
- func applyRotateEnabled() {
690
- if let value = rotateEnabled {
691
- self.mapView.gestures.options.rotateEnabled = value
692
- }
452
+ self.mapView.gestures.options.rotateEnabled = value
693
453
  }
694
454
 
695
-
696
- var pitchEnabled: Bool? = nil
697
455
  @objc public func setReactPitchEnabled(_ value: Bool) {
698
- self.pitchEnabled = value
699
- changed(.pitchEnabled)
700
- }
701
- func applyPitchEnabled() {
702
- if let value = pitchEnabled {
703
- self.mapView.gestures.options.pitchEnabled = value
704
- }
456
+ self.mapView.gestures.options.pitchEnabled = value
705
457
  }
706
458
 
707
459
  private func removeAllFeaturesFromMap(reason: RemovalReason) {
@@ -730,17 +482,11 @@ open class RNMBXMapView: UIView {
730
482
  addFeaturesToMap(style: style)
731
483
  }
732
484
 
733
- var reactStyleURL: String? = nil
734
485
  @objc public func setReactStyleURL(_ value: String?) {
735
- self.reactStyleURL = value
736
- changed(.styleURL)
737
- }
738
-
739
- public func applyStyleURL() {
740
486
  var initialLoad = !self.styleLoaded
741
487
  if !initialLoad { refreshComponentsBeforeStyleChange() }
742
488
  self.styleLoaded = false
743
- if let value = reactStyleURL {
489
+ if let value = value {
744
490
  if let _ = URL(string: value) {
745
491
  if let styleURI = StyleURI(rawValue: value) {
746
492
  mapView.mapboxMap.loadStyleURI(styleURI)
@@ -836,10 +582,7 @@ extension RNMBXMapView {
836
582
 
837
583
  @objc public func setReactOnMapChange(_ value: @escaping RCTBubblingEventBlock) {
838
584
  self.reactOnMapChange = value
839
- changed(.onMapChange)
840
- }
841
585
 
842
- func applyOnMapChange() {
843
586
  self.onEvery(event: .cameraChanged, handler: { (self, cameraEvent) in
844
587
  self.wasGestureActive = self.isGestureActive
845
588
  if self.handleMapChangedEvents.contains(.regionIsChanging) {
@@ -877,7 +620,7 @@ extension RNMBXMapView {
877
620
  }
878
621
 
879
622
  private func buildStateObject() -> [String: Any] {
880
- let cameraOptions = CameraOptions(cameraState: mapView.cameraState)
623
+ let cameraOptions = CameraOptions(cameraState: cameraState)
881
624
  let bounds = mapView.mapboxMap.coordinateBounds(for: cameraOptions)
882
625
 
883
626
  return [
@@ -903,7 +646,7 @@ extension RNMBXMapView {
903
646
  }
904
647
 
905
648
  private func buildRegionObject() -> [String: Any] {
906
- let cameraOptions = CameraOptions(cameraState: mapView.cameraState)
649
+ let cameraOptions = CameraOptions(cameraState: cameraState)
907
650
  let bounds = mapView.mapboxMap.coordinateBounds(for: cameraOptions)
908
651
  let boundsArray : JSONArray = [
909
652
  [.number(bounds.northeast.longitude),.number(bounds.northeast.latitude)],
@@ -1062,10 +805,7 @@ extension RNMBXMapView {
1062
805
 
1063
806
  @objc public func setReactOnPress(_ value: @escaping RCTBubblingEventBlock) {
1064
807
  self.reactOnPress = value
1065
- changed(.onPress)
1066
- }
1067
-
1068
- func applyOnPress() {
808
+
1069
809
  let singleTapGestureRecognizer = self.mapView.gestures.singleTapGestureRecognizer
1070
810
 
1071
811
  singleTapGestureRecognizer.removeTarget(pointAnnotationManager.manager, action: nil)
@@ -1077,14 +817,9 @@ extension RNMBXMapView {
1077
817
 
1078
818
  @objc public func setReactOnLongPress(_ value: @escaping RCTBubblingEventBlock) {
1079
819
  self.reactOnLongPress = value
1080
- changed(.onLongPress)
1081
- }
1082
-
1083
- func applyOnLongPress() {
1084
- if (reactOnLongPress != nil) {
1085
- let longPressGestureRecognizer = UILongPressGestureRecognizer(target: self, action: #selector(doHandleLongPress(_:)))
1086
- self.mapView.addGestureRecognizer(longPressGestureRecognizer)
1087
- }
820
+
821
+ let longPressGestureRecognizer = UILongPressGestureRecognizer(target: self, action: #selector(doHandleLongPress(_:)))
822
+ self.mapView.addGestureRecognizer(longPressGestureRecognizer)
1088
823
  }
1089
824
  }
1090
825
 
@@ -1161,29 +896,11 @@ extension RNMBXMapView: GestureManagerDelegate {
1161
896
  return orderedLayers.lazy.reversed().compactMap { layersToSource[$0.id] }.first ?? sources.first
1162
897
  }
1163
898
 
1164
-
1165
-
1166
- func _tapEvent(_ tapPoint: CGPoint) -> RNMBXEvent {
1167
- let location = self.mapboxMap.coordinate(for: tapPoint)
1168
- var geojson = Feature(geometry: .point(Point(location)));
1169
- geojson.properties = [
1170
- "screenPointX": .number(Double(tapPoint.x)),
1171
- "screenPointY": .number(Double(tapPoint.y))
1172
- ]
1173
- let event = RNMBXEvent(type:.tap, payload: logged("reactOnPress") { try geojson.toJSON() })
1174
- return event
1175
- }
1176
-
1177
899
  @objc
1178
900
  func doHandleTap(_ sender: UITapGestureRecognizer) {
1179
901
  let tapPoint = sender.location(in: self)
1180
902
  pointAnnotationManager.handleTap(sender) { (_: UITapGestureRecognizer) in
1181
903
  DispatchQueue.main.async {
1182
- if (self.deselectAnnotationOnTap) {
1183
- if (self.pointAnnotationManager.deselectCurrentlySelected(deselectAnnotationOnTap: true)) {
1184
- return
1185
- }
1186
- }
1187
904
  let touchableSources = self.touchableSources()
1188
905
  self.doHandleTapInSources(sources: touchableSources, tapPoint: tapPoint, hits: [:], touchedSources: []) { (hits, touchedSources) in
1189
906
 
@@ -1215,7 +932,14 @@ extension RNMBXMapView: GestureManagerDelegate {
1215
932
 
1216
933
  } else {
1217
934
  if let reactOnPress = self.reactOnPress {
1218
- self.fireEvent(event: self._tapEvent(tapPoint), callback: reactOnPress)
935
+ let location = self.mapboxMap.coordinate(for: tapPoint)
936
+ var geojson = Feature(geometry: .point(Point(location)));
937
+ geojson.properties = [
938
+ "screenPointX": .number(Double(tapPoint.x)),
939
+ "screenPointY": .number(Double(tapPoint.y))
940
+ ]
941
+ let event = RNMBXEvent(type:.tap, payload: logged("reactOnPress") { try geojson.toJSON() })
942
+ self.fireEvent(event: event, callback: reactOnPress)
1219
943
  }
1220
944
  }
1221
945
  }
@@ -1355,7 +1079,7 @@ extension RNMBXMapView {
1355
1079
  }
1356
1080
  }
1357
1081
 
1358
- class RNMBXPointAnnotationManager : AnnotationInteractionDelegate {
1082
+ class PointAnnotationManager : AnnotationInteractionDelegate {
1359
1083
  weak var selected : RNMBXPointAnnotation? = nil
1360
1084
  private var draggedAnnotation: PointAnnotation?
1361
1085
 
@@ -1363,50 +1087,6 @@ class RNMBXPointAnnotationManager : AnnotationInteractionDelegate {
1363
1087
  // We handle taps ourselfs
1364
1088
  // onTap(annotations: annotations)
1365
1089
  }
1366
-
1367
- func deselectCurrentlySelected(deselectAnnotationOnTap: Bool = false) -> Bool {
1368
- if let selected = selected {
1369
- selected.doDeselect(deselectAnnotationOnMapTap: deselectAnnotationOnTap)
1370
- self.selected = nil
1371
- return true
1372
- }
1373
- return false
1374
- }
1375
-
1376
- func onAnnotationClick(pointAnnotation: RNMBXPointAnnotation) {
1377
- let oldSelected = selected
1378
- var newSelected: RNMBXPointAnnotation? = pointAnnotation
1379
-
1380
- if (newSelected == oldSelected) {
1381
- newSelected = nil
1382
- }
1383
-
1384
- deselectCurrentlySelected()
1385
-
1386
- if let newSelected = newSelected {
1387
- newSelected.doSelect()
1388
- selected = newSelected
1389
- }
1390
- }
1391
-
1392
- func lookup(_ annotation: PointAnnotation) -> RNMBXPointAnnotation? {
1393
- guard let userInfo = annotation.userInfo else {
1394
- return nil
1395
- }
1396
- if let rnmbxPointAnnotationWeakRef = userInfo[RNMBXPointAnnotation.key] as? WeakRef<RNMBXPointAnnotation> {
1397
- if let rnmbxPointAnnotation = rnmbxPointAnnotationWeakRef.object {
1398
- return rnmbxPointAnnotation
1399
- }
1400
- }
1401
- #if RNMBX_11
1402
- // see https://github.com/rnmapbox/maps/issues/3121
1403
- if let rnmbxPointAnnotation = annotations.object(forKey: annotation.id as NSString) {
1404
- return rnmbxPointAnnotation;
1405
- }
1406
- #endif
1407
- return nil
1408
- }
1409
-
1410
1090
 
1411
1091
  func onTap(annotations: [Annotation]) {
1412
1092
  guard annotations.count > 0 else {
@@ -1414,9 +1094,34 @@ class RNMBXPointAnnotationManager : AnnotationInteractionDelegate {
1414
1094
  }
1415
1095
 
1416
1096
  for annotation in annotations {
1417
- if let annotation = annotation as? PointAnnotation {
1418
- if let pointAnnotation = lookup(annotation) {
1419
- onAnnotationClick(pointAnnotation: pointAnnotation)
1097
+ if let pointAnnotation = annotation as? PointAnnotation,
1098
+ let userInfo = pointAnnotation.userInfo {
1099
+
1100
+ if let RNMBXPointAnnotation = userInfo[RNMBXPointAnnotation.key] as? WeakRef<RNMBXPointAnnotation> {
1101
+ if let pt = RNMBXPointAnnotation.object {
1102
+ let position = pt.superview?.convert(pt.layer.position, to: nil)
1103
+ let location = pt.map?.mapboxMap.coordinate(for: position!)
1104
+ var geojson = Feature(geometry: .point(Point(location!)))
1105
+ geojson.identifier = .string(pt.id)
1106
+ geojson.properties = [
1107
+ "screenPointX": .number(Double(position!.x)),
1108
+ "screenPointY": .number(Double(position!.y))
1109
+ ]
1110
+ let event = RNMBXEvent(type:.tap, payload: logged("doHandleTap") { try geojson.toJSON() })
1111
+ if let selected = selected {
1112
+ guard let onDeselected = pt.onDeselected else {
1113
+ return
1114
+ }
1115
+ onDeselected(event.toJSON())
1116
+ selected.onDeselect()
1117
+ }
1118
+ guard let onSelected = pt.onSelected else {
1119
+ return
1120
+ }
1121
+ onSelected(event.toJSON())
1122
+ pt.onSelect()
1123
+ selected = pt
1124
+ }
1420
1125
  }
1421
1126
  }
1422
1127
  }
@@ -1480,36 +1185,41 @@ class RNMBXPointAnnotationManager : AnnotationInteractionDelegate {
1480
1185
 
1481
1186
  for annotation in annotations {
1482
1187
  if let pointAnnotation = annotation as? PointAnnotation,
1483
- let pt = lookup(pointAnnotation) {
1188
+ let userInfo = pointAnnotation.userInfo {
1189
+
1190
+ if let RNMBXPointAnnotation = userInfo[RNMBXPointAnnotation.key] as? WeakRef<RNMBXPointAnnotation> {
1191
+ if let pt = RNMBXPointAnnotation.object {
1484
1192
  let position = pt.superview?.convert(pt.layer.position, to: nil)
1485
1193
  var geojson = Feature(geometry: .point(Point(targetPoint)))
1486
- geojson.identifier = .string(pt.id)
1487
- geojson.properties = [
1488
- "screenPointX": .number(Double(position!.x)),
1489
- "screenPointY": .number(Double(position!.y))
1490
- ]
1491
- let event = RNMBXEvent(type:.longPress, payload: logged("doHandleLongPress") { try geojson.toJSON() })
1492
- switch (dragState) {
1493
- case .began:
1494
- guard let onDragStart = pt.onDragStart else {
1194
+ geojson.identifier = .string(pt.id)
1195
+ geojson.properties = [
1196
+ "screenPointX": .number(Double(position!.x)),
1197
+ "screenPointY": .number(Double(position!.y))
1198
+ ]
1199
+ let event = RNMBXEvent(type:.longPress, payload: logged("doHandleLongPress") { try geojson.toJSON() })
1200
+ switch (dragState) {
1201
+ case .began:
1202
+ guard let onDragStart = pt.onDragStart else {
1203
+ return
1204
+ }
1205
+ onDragStart(event.toJSON())
1206
+ case .changed:
1207
+ guard let onDrag = pt.onDrag else {
1208
+ return
1209
+ }
1210
+ onDrag(event.toJSON())
1495
1211
  return
1496
- }
1497
- onDragStart(event.toJSON())
1498
- case .changed:
1499
- guard let onDrag = pt.onDrag else {
1212
+ case .ended:
1213
+ guard let onDragEnd = pt.onDragEnd else {
1214
+ return
1215
+ }
1216
+ onDragEnd(event.toJSON())
1500
1217
  return
1501
- }
1502
- onDrag(event.toJSON())
1503
- return
1504
- case .ended:
1505
- guard let onDragEnd = pt.onDragEnd else {
1218
+ default:
1506
1219
  return
1507
1220
  }
1508
- onDragEnd(event.toJSON())
1509
- return
1510
- default:
1511
- return
1512
1221
  }
1222
+ }
1513
1223
  }
1514
1224
  }
1515
1225
  }
@@ -1544,7 +1254,7 @@ class RNMBXPointAnnotationManager : AnnotationInteractionDelegate {
1544
1254
 
1545
1255
  // Find if any `queriedFeatureIds` match an annotation's `id`
1546
1256
  let draggedAnnotations = self.manager.annotations.filter { queriedFeatureIds.contains($0.id) }
1547
- let enabledAnnotations = draggedAnnotations.filter { self.lookup($0)?.draggable ?? false }
1257
+ let enabledAnnotations = draggedAnnotations.filter { ($0.userInfo?[RNMBXPointAnnotation.key] as? WeakRef<RNMBXPointAnnotation>)?.object?.draggable ?? false }
1548
1258
  // If `tappedAnnotations` is not empty, call delegate
1549
1259
  if !enabledAnnotations.isEmpty {
1550
1260
  self.draggedAnnotation = enabledAnnotations.first!
@@ -1587,19 +1297,9 @@ class RNMBXPointAnnotationManager : AnnotationInteractionDelegate {
1587
1297
  manager.annotations.removeAll(where: {$0.id == annotation.id})
1588
1298
  }
1589
1299
 
1590
- #if RNMBX_11
1591
- var annotations = NSMapTable<NSString, RNMBXPointAnnotation>.init(
1592
- keyOptions: .copyIn,
1593
- valueOptions: .weakMemory
1594
- )
1595
- #endif
1596
-
1597
- func add(_ annotation: PointAnnotation, _ rnmbxPointAnnotation: RNMBXPointAnnotation) {
1300
+ func add(_ annotation: PointAnnotation) {
1598
1301
  manager.annotations.append(annotation)
1599
1302
  manager.refresh()
1600
- #if RNMBX_11
1601
- annotations.setObject(rnmbxPointAnnotation, forKey: annotation.id as NSString)
1602
- #endif
1603
1303
  }
1604
1304
 
1605
1305
  func update(_ annotation: PointAnnotation) {