@maydon_tech/react-native-nitro-maps 0.1.3 → 0.2.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 (218) hide show
  1. package/LICENSE +1 -1
  2. package/NitroMap.podspec +1 -1
  3. package/README.md +82 -9
  4. package/android/CMakeLists.txt +4 -1
  5. package/android/gradle.properties +4 -4
  6. package/android/src/main/cpp/ClusterEngineJNI.cpp +198 -0
  7. package/android/src/main/kotlin/com/margelo/nitro/nitromap/NitroMap.kt +397 -0
  8. package/android/src/main/kotlin/com/margelo/nitro/nitromap/NitroMapConfig.kt +53 -0
  9. package/android/src/main/{java → kotlin}/com/margelo/nitro/nitromap/NitroMapPackage.kt +4 -4
  10. package/android/src/main/kotlin/com/margelo/nitro/nitromap/NitroMapView.kt +73 -0
  11. package/android/src/main/kotlin/com/margelo/nitro/nitromap/UserLocationManager.kt +295 -0
  12. package/android/src/main/kotlin/com/margelo/nitro/nitromap/clustering/ClusterIconRenderer.kt +111 -0
  13. package/android/src/main/kotlin/com/margelo/nitro/nitromap/clustering/ClusteringManager.kt +104 -0
  14. package/android/src/main/kotlin/com/margelo/nitro/nitromap/clustering/NitroClusterEngine.kt +166 -0
  15. package/android/src/main/kotlin/com/margelo/nitro/nitromap/markers/MarkerIconFactory.kt +303 -0
  16. package/android/src/main/kotlin/com/margelo/nitro/nitromap/markers/MarkerSelectionHandler.kt +72 -0
  17. package/android/src/main/kotlin/com/margelo/nitro/nitromap/markers/PriceMarkerRenderer.kt +159 -0
  18. package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/MapProviderFactory.kt +24 -0
  19. package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/MapProviderInterface.kt +128 -0
  20. package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/google/GoogleMapDelegate.kt +317 -0
  21. package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/google/GoogleMapProvider+Clustering.kt +524 -0
  22. package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/google/GoogleMapProvider+Markers.kt +358 -0
  23. package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/google/GoogleMapProvider+Overlays.kt +272 -0
  24. package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/google/GoogleMapProvider+UserLocation.kt +296 -0
  25. package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/google/GoogleMapProvider.kt +815 -0
  26. package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/google/MarkerTagData.kt +19 -0
  27. package/ios/Clustering/ClusterIconRenderer.swift +3 -3
  28. package/ios/Location/NitroLocationManager.swift +116 -0
  29. package/ios/MarkerRenderer/MarkerIconFactory.swift +1 -3
  30. package/ios/MarkerRenderer/PriceMarkerRenderer.swift +10 -6
  31. package/ios/NitroMap.swift +279 -13
  32. package/ios/NitroMapConfig/NitroMapConfig.swift +45 -0
  33. package/ios/Providers/{GoogleMapDelegate.swift → Google/GoogleMapDelegate.swift} +48 -23
  34. package/ios/Providers/Google/GoogleMapProvider+Camera.swift +180 -0
  35. package/ios/Providers/Google/GoogleMapProvider+Clustering.swift +541 -0
  36. package/ios/Providers/Google/GoogleMapProvider+Markers.swift +270 -0
  37. package/ios/Providers/Google/GoogleMapProvider+Overlays.swift +245 -0
  38. package/ios/Providers/Google/GoogleMapProvider+UserLocation.swift +180 -0
  39. package/ios/Providers/Google/GoogleMapProvider.swift +342 -0
  40. package/ios/Providers/MapProviderFactory.swift +17 -0
  41. package/ios/Providers/MapProviderProtocol.swift +48 -1
  42. package/ios/Shared/ClusterConfig+Factory.swift +2 -2
  43. package/ios/Shared/MapStyleProvider.swift +6 -4
  44. package/ios/Shared/MarkerSelectionHandler.swift +4 -1
  45. package/ios/Utils/ColorValueExtension.swift +46 -67
  46. package/lib/module/components/ImageMarker.js +39 -29
  47. package/lib/module/components/ImageMarker.js.map +1 -1
  48. package/lib/module/components/Marker.js +118 -0
  49. package/lib/module/components/Marker.js.map +1 -0
  50. package/lib/module/components/NitroCircle.js +92 -0
  51. package/lib/module/components/NitroCircle.js.map +1 -0
  52. package/lib/module/components/NitroMap.js +216 -76
  53. package/lib/module/components/NitroMap.js.map +1 -1
  54. package/lib/module/components/NitroPolygon.js +135 -0
  55. package/lib/module/components/NitroPolygon.js.map +1 -0
  56. package/lib/module/components/NitroPolyline.js +115 -0
  57. package/lib/module/components/NitroPolyline.js.map +1 -0
  58. package/lib/module/components/PriceMarker.js +16 -29
  59. package/lib/module/components/PriceMarker.js.map +1 -1
  60. package/lib/module/context/NitroMapContext.js.map +1 -1
  61. package/lib/module/hooks/useNitroCircle.js +18 -0
  62. package/lib/module/hooks/useNitroCircle.js.map +1 -0
  63. package/lib/module/hooks/useNitroMarker.js +26 -9
  64. package/lib/module/hooks/useNitroMarker.js.map +1 -1
  65. package/lib/module/hooks/useNitroOverlay.js +59 -0
  66. package/lib/module/hooks/useNitroOverlay.js.map +1 -0
  67. package/lib/module/hooks/useNitroPolygon.js +18 -0
  68. package/lib/module/hooks/useNitroPolygon.js.map +1 -0
  69. package/lib/module/hooks/useNitroPolyline.js +18 -0
  70. package/lib/module/hooks/useNitroPolyline.js.map +1 -0
  71. package/lib/module/index.js +5 -0
  72. package/lib/module/index.js.map +1 -1
  73. package/lib/module/types/overlay.js +4 -0
  74. package/lib/module/types/overlay.js.map +1 -0
  75. package/lib/module/types/theme.js +4 -0
  76. package/lib/module/types/theme.js.map +1 -0
  77. package/lib/module/utils/colors.js +41 -13
  78. package/lib/module/utils/colors.js.map +1 -1
  79. package/lib/module/utils/validation.js +45 -0
  80. package/lib/module/utils/validation.js.map +1 -0
  81. package/lib/typescript/src/components/ImageMarker.d.ts.map +1 -1
  82. package/lib/typescript/src/components/Marker.d.ts +34 -0
  83. package/lib/typescript/src/components/Marker.d.ts.map +1 -0
  84. package/lib/typescript/src/components/NitroCircle.d.ts +70 -0
  85. package/lib/typescript/src/components/NitroCircle.d.ts.map +1 -0
  86. package/lib/typescript/src/components/NitroMap.d.ts +60 -3
  87. package/lib/typescript/src/components/NitroMap.d.ts.map +1 -1
  88. package/lib/typescript/src/components/NitroPolygon.d.ts +86 -0
  89. package/lib/typescript/src/components/NitroPolygon.d.ts.map +1 -0
  90. package/lib/typescript/src/components/NitroPolyline.d.ts +84 -0
  91. package/lib/typescript/src/components/NitroPolyline.d.ts.map +1 -0
  92. package/lib/typescript/src/components/PriceMarker.d.ts +0 -5
  93. package/lib/typescript/src/components/PriceMarker.d.ts.map +1 -1
  94. package/lib/typescript/src/context/NitroMapContext.d.ts +2 -0
  95. package/lib/typescript/src/context/NitroMapContext.d.ts.map +1 -1
  96. package/lib/typescript/src/hooks/useNitroCircle.d.ts +7 -0
  97. package/lib/typescript/src/hooks/useNitroCircle.d.ts.map +1 -0
  98. package/lib/typescript/src/hooks/useNitroMarker.d.ts +20 -0
  99. package/lib/typescript/src/hooks/useNitroMarker.d.ts.map +1 -1
  100. package/lib/typescript/src/hooks/useNitroOverlay.d.ts +26 -0
  101. package/lib/typescript/src/hooks/useNitroOverlay.d.ts.map +1 -0
  102. package/lib/typescript/src/hooks/useNitroPolygon.d.ts +7 -0
  103. package/lib/typescript/src/hooks/useNitroPolygon.d.ts.map +1 -0
  104. package/lib/typescript/src/hooks/useNitroPolyline.d.ts +7 -0
  105. package/lib/typescript/src/hooks/useNitroPolyline.d.ts.map +1 -0
  106. package/lib/typescript/src/index.d.ts +15 -2
  107. package/lib/typescript/src/index.d.ts.map +1 -1
  108. package/lib/typescript/src/specs/NitroMap.nitro.d.ts +248 -6
  109. package/lib/typescript/src/specs/NitroMap.nitro.d.ts.map +1 -1
  110. package/lib/typescript/src/types/map.d.ts +34 -4
  111. package/lib/typescript/src/types/map.d.ts.map +1 -1
  112. package/lib/typescript/src/types/marker.d.ts +24 -36
  113. package/lib/typescript/src/types/marker.d.ts.map +1 -1
  114. package/lib/typescript/src/types/overlay.d.ts +75 -0
  115. package/lib/typescript/src/types/overlay.d.ts.map +1 -0
  116. package/lib/typescript/src/types/theme.d.ts +93 -0
  117. package/lib/typescript/src/types/theme.d.ts.map +1 -0
  118. package/lib/typescript/src/utils/colors.d.ts +6 -8
  119. package/lib/typescript/src/utils/colors.d.ts.map +1 -1
  120. package/lib/typescript/src/utils/validation.d.ts +12 -0
  121. package/lib/typescript/src/utils/validation.d.ts.map +1 -0
  122. package/nitrogen/generated/android/c++/JCircleData.hpp +94 -0
  123. package/nitrogen/generated/android/c++/JClusterConfig.hpp +5 -7
  124. package/nitrogen/generated/android/c++/JFunc_void_UserLocationChangeEvent.hpp +79 -0
  125. package/nitrogen/generated/android/c++/JFunc_void_UserTrackingMode.hpp +77 -0
  126. package/nitrogen/generated/android/c++/JFunc_void_std__string.hpp +76 -0
  127. package/nitrogen/generated/android/c++/JHybridNitroMapSpec.cpp +328 -21
  128. package/nitrogen/generated/android/c++/JHybridNitroMapSpec.hpp +53 -2
  129. package/nitrogen/generated/android/c++/JMarkerAnimation.hpp +3 -6
  130. package/nitrogen/generated/android/c++/JMarkerData.hpp +15 -3
  131. package/nitrogen/generated/android/c++/JPolygonData.hpp +149 -0
  132. package/nitrogen/generated/android/c++/JPolylineData.hpp +113 -0
  133. package/nitrogen/generated/android/c++/JUserLocationChangeEvent.hpp +70 -0
  134. package/nitrogen/generated/android/c++/JUserTrackingMode.hpp +62 -0
  135. package/nitrogen/generated/android/c++/views/JHybridNitroMapStateUpdater.cpp +72 -4
  136. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/CircleData.kt +62 -0
  137. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/ClusterConfig.kt +4 -4
  138. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/Func_void_UserLocationChangeEvent.kt +80 -0
  139. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/Func_void_UserTrackingMode.kt +80 -0
  140. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/Func_void_std__string.kt +80 -0
  141. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/HybridNitroMapSpec.kt +228 -2
  142. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/MarkerAnimation.kt +1 -2
  143. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/MarkerData.kt +12 -3
  144. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/PolygonData.kt +62 -0
  145. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/PolylineData.kt +62 -0
  146. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/UserLocationChangeEvent.kt +47 -0
  147. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/{ClusterAnimationStyle.kt → UserTrackingMode.kt} +6 -8
  148. package/nitrogen/generated/android/nitromapOnLoad.cpp +6 -0
  149. package/nitrogen/generated/ios/NitroMap-Swift-Cxx-Bridge.cpp +24 -0
  150. package/nitrogen/generated/ios/NitroMap-Swift-Cxx-Bridge.hpp +175 -17
  151. package/nitrogen/generated/ios/NitroMap-Swift-Cxx-Umbrella.hpp +15 -3
  152. package/nitrogen/generated/ios/c++/HybridNitroMapSpecSwift.hpp +249 -16
  153. package/nitrogen/generated/ios/c++/views/HybridNitroMapComponent.mm +90 -5
  154. package/nitrogen/generated/ios/swift/CircleData.swift +143 -0
  155. package/nitrogen/generated/ios/swift/ClusterConfig.swift +22 -15
  156. package/nitrogen/generated/ios/swift/Func_void_UserLocationChangeEvent.swift +47 -0
  157. package/nitrogen/generated/ios/swift/Func_void_UserTrackingMode.swift +47 -0
  158. package/nitrogen/generated/ios/swift/Func_void_std__string.swift +47 -0
  159. package/nitrogen/generated/ios/swift/HybridNitroMapSpec.swift +35 -1
  160. package/nitrogen/generated/ios/swift/HybridNitroMapSpec_cxx.swift +582 -8
  161. package/nitrogen/generated/ios/swift/MarkerAnimation.swift +4 -8
  162. package/nitrogen/generated/ios/swift/MarkerData.swift +54 -2
  163. package/nitrogen/generated/ios/swift/PolygonData.swift +179 -0
  164. package/nitrogen/generated/ios/swift/PolylineData.swift +155 -0
  165. package/nitrogen/generated/ios/swift/UserLocationChangeEvent.swift +69 -0
  166. package/nitrogen/generated/ios/swift/UserTrackingMode.swift +44 -0
  167. package/nitrogen/generated/shared/c++/CircleData.hpp +113 -0
  168. package/nitrogen/generated/shared/c++/ClusterConfig.hpp +5 -8
  169. package/nitrogen/generated/shared/c++/HybridNitroMapSpec.cpp +53 -2
  170. package/nitrogen/generated/shared/c++/HybridNitroMapSpec.hpp +75 -6
  171. package/nitrogen/generated/shared/c++/MarkerAnimation.hpp +4 -8
  172. package/nitrogen/generated/shared/c++/MarkerData.hpp +14 -2
  173. package/nitrogen/generated/shared/c++/PolygonData.hpp +114 -0
  174. package/nitrogen/generated/shared/c++/PolylineData.hpp +114 -0
  175. package/nitrogen/generated/shared/c++/UserLocationChangeEvent.hpp +88 -0
  176. package/nitrogen/generated/shared/c++/UserTrackingMode.hpp +80 -0
  177. package/nitrogen/generated/shared/c++/views/HybridNitroMapComponent.cpp +216 -12
  178. package/nitrogen/generated/shared/c++/views/HybridNitroMapComponent.hpp +23 -1
  179. package/nitrogen/generated/shared/json/NitroMapConfig.json +18 -1
  180. package/package.json +36 -5
  181. package/src/components/ImageMarker.tsx +58 -42
  182. package/src/components/Marker.tsx +161 -0
  183. package/src/components/NitroCircle.tsx +183 -0
  184. package/src/components/NitroMap.tsx +328 -78
  185. package/src/components/NitroPolygon.tsx +229 -0
  186. package/src/components/NitroPolyline.tsx +208 -0
  187. package/src/components/PriceMarker.tsx +23 -48
  188. package/src/context/NitroMapContext.tsx +4 -0
  189. package/src/hooks/useNitroCircle.ts +25 -0
  190. package/src/hooks/useNitroMarker.ts +49 -10
  191. package/src/hooks/useNitroOverlay.ts +68 -0
  192. package/src/hooks/useNitroPolygon.ts +25 -0
  193. package/src/hooks/useNitroPolyline.ts +25 -0
  194. package/src/index.tsx +23 -2
  195. package/src/specs/NitroMap.nitro.ts +294 -5
  196. package/src/types/map.ts +36 -4
  197. package/src/types/marker.ts +24 -44
  198. package/src/types/overlay.ts +77 -0
  199. package/src/types/theme.ts +101 -0
  200. package/src/utils/colors.ts +48 -16
  201. package/src/utils/validation.ts +69 -0
  202. package/android/src/main/java/com/margelo/nitro/nitromap/ClusterIconGenerator.kt +0 -108
  203. package/android/src/main/java/com/margelo/nitro/nitromap/ColorUtils.kt +0 -63
  204. package/android/src/main/java/com/margelo/nitro/nitromap/HybridNitroMap.kt +0 -408
  205. package/android/src/main/java/com/margelo/nitro/nitromap/HybridNitroMapConfig.kt +0 -68
  206. package/android/src/main/java/com/margelo/nitro/nitromap/MarkerIconCache.kt +0 -176
  207. package/android/src/main/java/com/margelo/nitro/nitromap/MarkerIconFactory.kt +0 -252
  208. package/android/src/main/java/com/margelo/nitro/nitromap/clustering/NitroClusterEngine.kt +0 -252
  209. package/android/src/main/java/com/margelo/nitro/nitromap/clustering/QuadTree.kt +0 -195
  210. package/android/src/main/java/com/margelo/nitro/nitromap/providers/GoogleMapProvider.kt +0 -912
  211. package/android/src/main/java/com/margelo/nitro/nitromap/providers/MapProviderInterface.kt +0 -70
  212. package/cpp/QuadTree.hpp +0 -246
  213. package/ios/NitroMapConfig/HybridNitroMapConfig.swift +0 -33
  214. package/ios/Providers/GoogleMapProvider+Camera.swift +0 -164
  215. package/ios/Providers/GoogleMapProvider.swift +0 -924
  216. package/nitrogen/generated/android/c++/JClusterAnimationStyle.hpp +0 -68
  217. package/nitrogen/generated/ios/swift/ClusterAnimationStyle.swift +0 -52
  218. package/nitrogen/generated/shared/c++/ClusterAnimationStyle.hpp +0 -88
@@ -28,14 +28,16 @@ namespace margelo::nitro::nitromap { struct ClusterConfig; }
28
28
  namespace margelo::nitro::nitromap { enum class ClusterStrategy; }
29
29
  // Forward declaration of `MarkerColor` to properly resolve imports.
30
30
  namespace margelo::nitro::nitromap { struct MarkerColor; }
31
- // Forward declaration of `ClusterAnimationStyle` to properly resolve imports.
32
- namespace margelo::nitro::nitromap { enum class ClusterAnimationStyle; }
31
+ // Forward declaration of `EdgePadding` to properly resolve imports.
32
+ namespace margelo::nitro::nitromap { struct EdgePadding; }
33
+ // Forward declaration of `UserTrackingMode` to properly resolve imports.
34
+ namespace margelo::nitro::nitromap { enum class UserTrackingMode; }
35
+ // Forward declaration of `Point` to properly resolve imports.
36
+ namespace margelo::nitro::nitromap { struct Point; }
33
37
  // Forward declaration of `MapPressEvent` to properly resolve imports.
34
38
  namespace margelo::nitro::nitromap { struct MapPressEvent; }
35
39
  // Forward declaration of `Coordinate` to properly resolve imports.
36
40
  namespace margelo::nitro::nitromap { struct Coordinate; }
37
- // Forward declaration of `Point` to properly resolve imports.
38
- namespace margelo::nitro::nitromap { struct Point; }
39
41
  // Forward declaration of `RegionChangeEvent` to properly resolve imports.
40
42
  namespace margelo::nitro::nitromap { struct RegionChangeEvent; }
41
43
  // Forward declaration of `MarkerPressEvent` to properly resolve imports.
@@ -46,8 +48,8 @@ namespace margelo::nitro::nitromap { struct MarkerDragEvent; }
46
48
  namespace margelo::nitro::nitromap { struct ClusterPressEvent; }
47
49
  // Forward declaration of `MapError` to properly resolve imports.
48
50
  namespace margelo::nitro::nitromap { struct MapError; }
49
- // Forward declaration of `EdgePadding` to properly resolve imports.
50
- namespace margelo::nitro::nitromap { struct EdgePadding; }
51
+ // Forward declaration of `UserLocationChangeEvent` to properly resolve imports.
52
+ namespace margelo::nitro::nitromap { struct UserLocationChangeEvent; }
51
53
  // Forward declaration of `Camera` to properly resolve imports.
52
54
  namespace margelo::nitro::nitromap { struct Camera; }
53
55
  // Forward declaration of `MapBoundaries` to properly resolve imports.
@@ -64,6 +66,12 @@ namespace margelo::nitro::nitromap { struct ImageMarkerConfig; }
64
66
  namespace margelo::nitro::nitromap { struct PriceMarkerStyle; }
65
67
  // Forward declaration of `MarkerAnimation` to properly resolve imports.
66
68
  namespace margelo::nitro::nitromap { enum class MarkerAnimation; }
69
+ // Forward declaration of `PolylineData` to properly resolve imports.
70
+ namespace margelo::nitro::nitromap { struct PolylineData; }
71
+ // Forward declaration of `PolygonData` to properly resolve imports.
72
+ namespace margelo::nitro::nitromap { struct PolygonData; }
73
+ // Forward declaration of `CircleData` to properly resolve imports.
74
+ namespace margelo::nitro::nitromap { struct CircleData; }
67
75
 
68
76
  #include "MapProvider.hpp"
69
77
  #include <optional>
@@ -77,17 +85,18 @@ namespace margelo::nitro::nitromap { enum class MarkerAnimation; }
77
85
  #include "ClusterStrategy.hpp"
78
86
  #include "MarkerColor.hpp"
79
87
  #include <variant>
80
- #include "ClusterAnimationStyle.hpp"
88
+ #include "EdgePadding.hpp"
89
+ #include "UserTrackingMode.hpp"
90
+ #include "Point.hpp"
81
91
  #include "MapPressEvent.hpp"
82
92
  #include <functional>
83
93
  #include "Coordinate.hpp"
84
- #include "Point.hpp"
85
94
  #include "RegionChangeEvent.hpp"
86
95
  #include "MarkerPressEvent.hpp"
87
96
  #include "MarkerDragEvent.hpp"
88
97
  #include "ClusterPressEvent.hpp"
89
98
  #include "MapError.hpp"
90
- #include "EdgePadding.hpp"
99
+ #include "UserLocationChangeEvent.hpp"
91
100
  #include "Camera.hpp"
92
101
  #include <NitroModules/Promise.hpp>
93
102
  #include "MapBoundaries.hpp"
@@ -97,6 +106,9 @@ namespace margelo::nitro::nitromap { enum class MarkerAnimation; }
97
106
  #include "ImageMarkerConfig.hpp"
98
107
  #include "PriceMarkerStyle.hpp"
99
108
  #include "MarkerAnimation.hpp"
109
+ #include "PolylineData.hpp"
110
+ #include "PolygonData.hpp"
111
+ #include "CircleData.hpp"
100
112
 
101
113
  #include "NitroMap-Swift-Cxx-Umbrella.hpp"
102
114
 
@@ -152,6 +164,13 @@ namespace margelo::nitro::nitromap {
152
164
  inline void setInitialRegion(const std::optional<Region>& initialRegion) noexcept override {
153
165
  _swiftPart.setInitialRegion(initialRegion);
154
166
  }
167
+ inline std::optional<Region> getRegion() noexcept override {
168
+ auto __result = _swiftPart.getRegion();
169
+ return __result;
170
+ }
171
+ inline void setRegion(const std::optional<Region>& region) noexcept override {
172
+ _swiftPart.setRegion(region);
173
+ }
155
174
  inline std::optional<bool> getShowsUserLocation() noexcept override {
156
175
  auto __result = _swiftPart.getShowsUserLocation();
157
176
  return __result;
@@ -201,13 +220,6 @@ namespace margelo::nitro::nitromap {
201
220
  inline void setCustomMapStyle(const std::optional<std::vector<MapStyleElement>>& customMapStyle) noexcept override {
202
221
  _swiftPart.setCustomMapStyle(customMapStyle);
203
222
  }
204
- inline std::optional<bool> getShowsMyLocationButton() noexcept override {
205
- auto __result = _swiftPart.getShowsMyLocationButton();
206
- return __result;
207
- }
208
- inline void setShowsMyLocationButton(std::optional<bool> showsMyLocationButton) noexcept override {
209
- _swiftPart.setShowsMyLocationButton(showsMyLocationButton);
210
- }
211
223
  inline std::optional<ClusterConfig> getClusterConfig() noexcept override {
212
224
  auto __result = _swiftPart.getClusterConfig();
213
225
  return __result;
@@ -215,6 +227,45 @@ namespace margelo::nitro::nitromap {
215
227
  inline void setClusterConfig(const std::optional<ClusterConfig>& clusterConfig) noexcept override {
216
228
  _swiftPart.setClusterConfig(clusterConfig);
217
229
  }
230
+ inline EdgePadding getMapPadding() noexcept override {
231
+ return _swiftPart.getMapPadding();
232
+ }
233
+ inline void setMapPadding(const EdgePadding& mapPadding) noexcept override {
234
+ _swiftPart.setMapPadding(std::forward<decltype(mapPadding)>(mapPadding));
235
+ }
236
+ inline std::optional<bool> getShowsTraffic() noexcept override {
237
+ auto __result = _swiftPart.getShowsTraffic();
238
+ return __result;
239
+ }
240
+ inline void setShowsTraffic(std::optional<bool> showsTraffic) noexcept override {
241
+ _swiftPart.setShowsTraffic(showsTraffic);
242
+ }
243
+ inline std::optional<bool> getShowsBuildings() noexcept override {
244
+ auto __result = _swiftPart.getShowsBuildings();
245
+ return __result;
246
+ }
247
+ inline void setShowsBuildings(std::optional<bool> showsBuildings) noexcept override {
248
+ _swiftPart.setShowsBuildings(showsBuildings);
249
+ }
250
+ inline std::optional<bool> getShowsCompass() noexcept override {
251
+ auto __result = _swiftPart.getShowsCompass();
252
+ return __result;
253
+ }
254
+ inline void setShowsCompass(std::optional<bool> showsCompass) noexcept override {
255
+ _swiftPart.setShowsCompass(showsCompass);
256
+ }
257
+ inline double getMinZoom() noexcept override {
258
+ return _swiftPart.getMinZoom();
259
+ }
260
+ inline void setMinZoom(double minZoom) noexcept override {
261
+ _swiftPart.setMinZoom(std::forward<decltype(minZoom)>(minZoom));
262
+ }
263
+ inline double getMaxZoom() noexcept override {
264
+ return _swiftPart.getMaxZoom();
265
+ }
266
+ inline void setMaxZoom(double maxZoom) noexcept override {
267
+ _swiftPart.setMaxZoom(std::forward<decltype(maxZoom)>(maxZoom));
268
+ }
218
269
  inline std::optional<bool> getDarkMode() noexcept override {
219
270
  auto __result = _swiftPart.getDarkMode();
220
271
  return __result;
@@ -222,6 +273,33 @@ namespace margelo::nitro::nitromap {
222
273
  inline void setDarkMode(std::optional<bool> darkMode) noexcept override {
223
274
  _swiftPart.setDarkMode(darkMode);
224
275
  }
276
+ inline std::optional<UserTrackingMode> getUserTrackingMode() noexcept override {
277
+ auto __result = _swiftPart.getUserTrackingMode();
278
+ return __result;
279
+ }
280
+ inline void setUserTrackingMode(std::optional<UserTrackingMode> userTrackingMode) noexcept override {
281
+ _swiftPart.setUserTrackingMode(userTrackingMode);
282
+ }
283
+ inline std::string getUserLocationImage() noexcept override {
284
+ auto __result = _swiftPart.getUserLocationImage();
285
+ return __result;
286
+ }
287
+ inline void setUserLocationImage(const std::string& userLocationImage) noexcept override {
288
+ _swiftPart.setUserLocationImage(userLocationImage);
289
+ }
290
+ inline double getUserLocationSize() noexcept override {
291
+ return _swiftPart.getUserLocationSize();
292
+ }
293
+ inline void setUserLocationSize(double userLocationSize) noexcept override {
294
+ _swiftPart.setUserLocationSize(std::forward<decltype(userLocationSize)>(userLocationSize));
295
+ }
296
+ inline std::optional<Point> getUserLocationAnchor() noexcept override {
297
+ auto __result = _swiftPart.getUserLocationAnchor();
298
+ return __result;
299
+ }
300
+ inline void setUserLocationAnchor(const std::optional<Point>& userLocationAnchor) noexcept override {
301
+ _swiftPart.setUserLocationAnchor(userLocationAnchor);
302
+ }
225
303
  inline std::optional<std::function<void(const MapPressEvent& /* event */)>> getOnPress() noexcept override {
226
304
  auto __result = _swiftPart.getOnPress();
227
305
  return __result;
@@ -292,6 +370,27 @@ namespace margelo::nitro::nitromap {
292
370
  inline void setOnClusterPress(const std::optional<std::function<void(const ClusterPressEvent& /* event */)>>& onClusterPress) noexcept override {
293
371
  _swiftPart.setOnClusterPress(onClusterPress);
294
372
  }
373
+ inline std::optional<std::function<void(const std::string& /* id */)>> getOnPolylinePress() noexcept override {
374
+ auto __result = _swiftPart.getOnPolylinePress();
375
+ return __result;
376
+ }
377
+ inline void setOnPolylinePress(const std::optional<std::function<void(const std::string& /* id */)>>& onPolylinePress) noexcept override {
378
+ _swiftPart.setOnPolylinePress(onPolylinePress);
379
+ }
380
+ inline std::optional<std::function<void(const std::string& /* id */)>> getOnPolygonPress() noexcept override {
381
+ auto __result = _swiftPart.getOnPolygonPress();
382
+ return __result;
383
+ }
384
+ inline void setOnPolygonPress(const std::optional<std::function<void(const std::string& /* id */)>>& onPolygonPress) noexcept override {
385
+ _swiftPart.setOnPolygonPress(onPolygonPress);
386
+ }
387
+ inline std::optional<std::function<void(const std::string& /* id */)>> getOnCirclePress() noexcept override {
388
+ auto __result = _swiftPart.getOnCirclePress();
389
+ return __result;
390
+ }
391
+ inline void setOnCirclePress(const std::optional<std::function<void(const std::string& /* id */)>>& onCirclePress) noexcept override {
392
+ _swiftPart.setOnCirclePress(onCirclePress);
393
+ }
295
394
  inline std::optional<std::function<void(const MapError& /* error */)>> getOnError() noexcept override {
296
395
  auto __result = _swiftPart.getOnError();
297
396
  return __result;
@@ -299,6 +398,34 @@ namespace margelo::nitro::nitromap {
299
398
  inline void setOnError(const std::optional<std::function<void(const MapError& /* error */)>>& onError) noexcept override {
300
399
  _swiftPart.setOnError(onError);
301
400
  }
401
+ inline std::optional<std::function<void(const UserLocationChangeEvent& /* event */)>> getOnUserLocationChange() noexcept override {
402
+ auto __result = _swiftPart.getOnUserLocationChange();
403
+ return __result;
404
+ }
405
+ inline void setOnUserLocationChange(const std::optional<std::function<void(const UserLocationChangeEvent& /* event */)>>& onUserLocationChange) noexcept override {
406
+ _swiftPart.setOnUserLocationChange(onUserLocationChange);
407
+ }
408
+ inline std::optional<std::function<void(UserTrackingMode /* mode */)>> getOnUserTrackingModeChange() noexcept override {
409
+ auto __result = _swiftPart.getOnUserTrackingModeChange();
410
+ return __result;
411
+ }
412
+ inline void setOnUserTrackingModeChange(const std::optional<std::function<void(UserTrackingMode /* mode */)>>& onUserTrackingModeChange) noexcept override {
413
+ _swiftPart.setOnUserTrackingModeChange(onUserTrackingModeChange);
414
+ }
415
+ inline std::optional<std::function<void(const MapError& /* error */)>> getOnUserLocationError() noexcept override {
416
+ auto __result = _swiftPart.getOnUserLocationError();
417
+ return __result;
418
+ }
419
+ inline void setOnUserLocationError(const std::optional<std::function<void(const MapError& /* error */)>>& onUserLocationError) noexcept override {
420
+ _swiftPart.setOnUserLocationError(onUserLocationError);
421
+ }
422
+ inline std::optional<std::function<void()>> getOnMapIdle() noexcept override {
423
+ auto __result = _swiftPart.getOnMapIdle();
424
+ return __result;
425
+ }
426
+ inline void setOnMapIdle(const std::optional<std::function<void()>>& onMapIdle) noexcept override {
427
+ _swiftPart.setOnMapIdle(onMapIdle);
428
+ }
302
429
 
303
430
  public:
304
431
  // Methods
@@ -314,6 +441,12 @@ namespace margelo::nitro::nitromap {
314
441
  std::rethrow_exception(__result.error());
315
442
  }
316
443
  }
444
+ inline void fitToSuppliedMarkers(const std::vector<std::string>& markerIds, const std::optional<EdgePadding>& edgePadding, std::optional<bool> animated) override {
445
+ auto __result = _swiftPart.fitToSuppliedMarkers(markerIds, edgePadding, animated);
446
+ if (__result.hasError()) [[unlikely]] {
447
+ std::rethrow_exception(__result.error());
448
+ }
449
+ }
317
450
  inline void animateCamera(const Camera& camera, std::optional<double> duration) override {
318
451
  auto __result = _swiftPart.animateCamera(std::forward<decltype(camera)>(camera), duration);
319
452
  if (__result.hasError()) [[unlikely]] {
@@ -348,6 +481,28 @@ namespace margelo::nitro::nitromap {
348
481
  auto __value = std::move(__result.value());
349
482
  return __value;
350
483
  }
484
+ inline void centerOnUserLocation() override {
485
+ auto __result = _swiftPart.centerOnUserLocation();
486
+ if (__result.hasError()) [[unlikely]] {
487
+ std::rethrow_exception(__result.error());
488
+ }
489
+ }
490
+ inline Point pointForCoordinate(const Coordinate& coordinate) override {
491
+ auto __result = _swiftPart.pointForCoordinate(std::forward<decltype(coordinate)>(coordinate));
492
+ if (__result.hasError()) [[unlikely]] {
493
+ std::rethrow_exception(__result.error());
494
+ }
495
+ auto __value = std::move(__result.value());
496
+ return __value;
497
+ }
498
+ inline Coordinate coordinateForPoint(const Point& point) override {
499
+ auto __result = _swiftPart.coordinateForPoint(std::forward<decltype(point)>(point));
500
+ if (__result.hasError()) [[unlikely]] {
501
+ std::rethrow_exception(__result.error());
502
+ }
503
+ auto __value = std::move(__result.value());
504
+ return __value;
505
+ }
351
506
  inline void setIsDarkMode(bool enabled) override {
352
507
  auto __result = _swiftPart.setIsDarkMode(std::forward<decltype(enabled)>(enabled));
353
508
  if (__result.hasError()) [[unlikely]] {
@@ -384,6 +539,12 @@ namespace margelo::nitro::nitromap {
384
539
  std::rethrow_exception(__result.error());
385
540
  }
386
541
  }
542
+ inline void deselectMarker() override {
543
+ auto __result = _swiftPart.deselectMarker();
544
+ if (__result.hasError()) [[unlikely]] {
545
+ std::rethrow_exception(__result.error());
546
+ }
547
+ }
387
548
  inline void clearMarkers() override {
388
549
  auto __result = _swiftPart.clearMarkers();
389
550
  if (__result.hasError()) [[unlikely]] {
@@ -402,6 +563,78 @@ namespace margelo::nitro::nitromap {
402
563
  std::rethrow_exception(__result.error());
403
564
  }
404
565
  }
566
+ inline void addPolyline(const PolylineData& polyline) override {
567
+ auto __result = _swiftPart.addPolyline(std::forward<decltype(polyline)>(polyline));
568
+ if (__result.hasError()) [[unlikely]] {
569
+ std::rethrow_exception(__result.error());
570
+ }
571
+ }
572
+ inline void updatePolyline(const PolylineData& polyline) override {
573
+ auto __result = _swiftPart.updatePolyline(std::forward<decltype(polyline)>(polyline));
574
+ if (__result.hasError()) [[unlikely]] {
575
+ std::rethrow_exception(__result.error());
576
+ }
577
+ }
578
+ inline void removePolyline(const std::string& id) override {
579
+ auto __result = _swiftPart.removePolyline(id);
580
+ if (__result.hasError()) [[unlikely]] {
581
+ std::rethrow_exception(__result.error());
582
+ }
583
+ }
584
+ inline void clearPolylines() override {
585
+ auto __result = _swiftPart.clearPolylines();
586
+ if (__result.hasError()) [[unlikely]] {
587
+ std::rethrow_exception(__result.error());
588
+ }
589
+ }
590
+ inline void addPolygon(const PolygonData& polygon) override {
591
+ auto __result = _swiftPart.addPolygon(std::forward<decltype(polygon)>(polygon));
592
+ if (__result.hasError()) [[unlikely]] {
593
+ std::rethrow_exception(__result.error());
594
+ }
595
+ }
596
+ inline void updatePolygon(const PolygonData& polygon) override {
597
+ auto __result = _swiftPart.updatePolygon(std::forward<decltype(polygon)>(polygon));
598
+ if (__result.hasError()) [[unlikely]] {
599
+ std::rethrow_exception(__result.error());
600
+ }
601
+ }
602
+ inline void removePolygon(const std::string& id) override {
603
+ auto __result = _swiftPart.removePolygon(id);
604
+ if (__result.hasError()) [[unlikely]] {
605
+ std::rethrow_exception(__result.error());
606
+ }
607
+ }
608
+ inline void clearPolygons() override {
609
+ auto __result = _swiftPart.clearPolygons();
610
+ if (__result.hasError()) [[unlikely]] {
611
+ std::rethrow_exception(__result.error());
612
+ }
613
+ }
614
+ inline void addCircle(const CircleData& circle) override {
615
+ auto __result = _swiftPart.addCircle(std::forward<decltype(circle)>(circle));
616
+ if (__result.hasError()) [[unlikely]] {
617
+ std::rethrow_exception(__result.error());
618
+ }
619
+ }
620
+ inline void updateCircle(const CircleData& circle) override {
621
+ auto __result = _swiftPart.updateCircle(std::forward<decltype(circle)>(circle));
622
+ if (__result.hasError()) [[unlikely]] {
623
+ std::rethrow_exception(__result.error());
624
+ }
625
+ }
626
+ inline void removeCircle(const std::string& id) override {
627
+ auto __result = _swiftPart.removeCircle(id);
628
+ if (__result.hasError()) [[unlikely]] {
629
+ std::rethrow_exception(__result.error());
630
+ }
631
+ }
632
+ inline void clearCircles() override {
633
+ auto __result = _swiftPart.clearCircles();
634
+ if (__result.hasError()) [[unlikely]] {
635
+ std::rethrow_exception(__result.error());
636
+ }
637
+ }
405
638
 
406
639
  private:
407
640
  NitroMap::HybridNitroMapSpec_cxx _swiftPart;
@@ -81,6 +81,11 @@ using namespace margelo::nitro::nitromap::views;
81
81
  swiftPart.setInitialRegion(newViewProps.initialRegion.value);
82
82
  newViewProps.initialRegion.isDirty = false;
83
83
  }
84
+ // region: optional
85
+ if (newViewProps.region.isDirty) {
86
+ swiftPart.setRegion(newViewProps.region.value);
87
+ newViewProps.region.isDirty = false;
88
+ }
84
89
  // showsUserLocation: optional
85
90
  if (newViewProps.showsUserLocation.isDirty) {
86
91
  swiftPart.setShowsUserLocation(newViewProps.showsUserLocation.value);
@@ -116,21 +121,66 @@ using namespace margelo::nitro::nitromap::views;
116
121
  swiftPart.setCustomMapStyle(newViewProps.customMapStyle.value);
117
122
  newViewProps.customMapStyle.isDirty = false;
118
123
  }
119
- // showsMyLocationButton: optional
120
- if (newViewProps.showsMyLocationButton.isDirty) {
121
- swiftPart.setShowsMyLocationButton(newViewProps.showsMyLocationButton.value);
122
- newViewProps.showsMyLocationButton.isDirty = false;
123
- }
124
124
  // clusterConfig: optional
125
125
  if (newViewProps.clusterConfig.isDirty) {
126
126
  swiftPart.setClusterConfig(newViewProps.clusterConfig.value);
127
127
  newViewProps.clusterConfig.isDirty = false;
128
128
  }
129
+ // mapPadding: struct
130
+ if (newViewProps.mapPadding.isDirty) {
131
+ swiftPart.setMapPadding(newViewProps.mapPadding.value);
132
+ newViewProps.mapPadding.isDirty = false;
133
+ }
134
+ // showsTraffic: optional
135
+ if (newViewProps.showsTraffic.isDirty) {
136
+ swiftPart.setShowsTraffic(newViewProps.showsTraffic.value);
137
+ newViewProps.showsTraffic.isDirty = false;
138
+ }
139
+ // showsBuildings: optional
140
+ if (newViewProps.showsBuildings.isDirty) {
141
+ swiftPart.setShowsBuildings(newViewProps.showsBuildings.value);
142
+ newViewProps.showsBuildings.isDirty = false;
143
+ }
144
+ // showsCompass: optional
145
+ if (newViewProps.showsCompass.isDirty) {
146
+ swiftPart.setShowsCompass(newViewProps.showsCompass.value);
147
+ newViewProps.showsCompass.isDirty = false;
148
+ }
149
+ // minZoom: number
150
+ if (newViewProps.minZoom.isDirty) {
151
+ swiftPart.setMinZoom(newViewProps.minZoom.value);
152
+ newViewProps.minZoom.isDirty = false;
153
+ }
154
+ // maxZoom: number
155
+ if (newViewProps.maxZoom.isDirty) {
156
+ swiftPart.setMaxZoom(newViewProps.maxZoom.value);
157
+ newViewProps.maxZoom.isDirty = false;
158
+ }
129
159
  // darkMode: optional
130
160
  if (newViewProps.darkMode.isDirty) {
131
161
  swiftPart.setDarkMode(newViewProps.darkMode.value);
132
162
  newViewProps.darkMode.isDirty = false;
133
163
  }
164
+ // userTrackingMode: optional
165
+ if (newViewProps.userTrackingMode.isDirty) {
166
+ swiftPart.setUserTrackingMode(newViewProps.userTrackingMode.value);
167
+ newViewProps.userTrackingMode.isDirty = false;
168
+ }
169
+ // userLocationImage: string
170
+ if (newViewProps.userLocationImage.isDirty) {
171
+ swiftPart.setUserLocationImage(newViewProps.userLocationImage.value);
172
+ newViewProps.userLocationImage.isDirty = false;
173
+ }
174
+ // userLocationSize: number
175
+ if (newViewProps.userLocationSize.isDirty) {
176
+ swiftPart.setUserLocationSize(newViewProps.userLocationSize.value);
177
+ newViewProps.userLocationSize.isDirty = false;
178
+ }
179
+ // userLocationAnchor: optional
180
+ if (newViewProps.userLocationAnchor.isDirty) {
181
+ swiftPart.setUserLocationAnchor(newViewProps.userLocationAnchor.value);
182
+ newViewProps.userLocationAnchor.isDirty = false;
183
+ }
134
184
  // onPress: optional
135
185
  if (newViewProps.onPress.isDirty) {
136
186
  swiftPart.setOnPress(newViewProps.onPress.value);
@@ -181,11 +231,46 @@ using namespace margelo::nitro::nitromap::views;
181
231
  swiftPart.setOnClusterPress(newViewProps.onClusterPress.value);
182
232
  newViewProps.onClusterPress.isDirty = false;
183
233
  }
234
+ // onPolylinePress: optional
235
+ if (newViewProps.onPolylinePress.isDirty) {
236
+ swiftPart.setOnPolylinePress(newViewProps.onPolylinePress.value);
237
+ newViewProps.onPolylinePress.isDirty = false;
238
+ }
239
+ // onPolygonPress: optional
240
+ if (newViewProps.onPolygonPress.isDirty) {
241
+ swiftPart.setOnPolygonPress(newViewProps.onPolygonPress.value);
242
+ newViewProps.onPolygonPress.isDirty = false;
243
+ }
244
+ // onCirclePress: optional
245
+ if (newViewProps.onCirclePress.isDirty) {
246
+ swiftPart.setOnCirclePress(newViewProps.onCirclePress.value);
247
+ newViewProps.onCirclePress.isDirty = false;
248
+ }
184
249
  // onError: optional
185
250
  if (newViewProps.onError.isDirty) {
186
251
  swiftPart.setOnError(newViewProps.onError.value);
187
252
  newViewProps.onError.isDirty = false;
188
253
  }
254
+ // onUserLocationChange: optional
255
+ if (newViewProps.onUserLocationChange.isDirty) {
256
+ swiftPart.setOnUserLocationChange(newViewProps.onUserLocationChange.value);
257
+ newViewProps.onUserLocationChange.isDirty = false;
258
+ }
259
+ // onUserTrackingModeChange: optional
260
+ if (newViewProps.onUserTrackingModeChange.isDirty) {
261
+ swiftPart.setOnUserTrackingModeChange(newViewProps.onUserTrackingModeChange.value);
262
+ newViewProps.onUserTrackingModeChange.isDirty = false;
263
+ }
264
+ // onUserLocationError: optional
265
+ if (newViewProps.onUserLocationError.isDirty) {
266
+ swiftPart.setOnUserLocationError(newViewProps.onUserLocationError.value);
267
+ newViewProps.onUserLocationError.isDirty = false;
268
+ }
269
+ // onMapIdle: optional
270
+ if (newViewProps.onMapIdle.isDirty) {
271
+ swiftPart.setOnMapIdle(newViewProps.onMapIdle.value);
272
+ newViewProps.onMapIdle.isDirty = false;
273
+ }
189
274
 
190
275
  swiftPart.afterUpdate();
191
276
 
@@ -0,0 +1,143 @@
1
+ ///
2
+ /// CircleData.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ import Foundation
9
+ import NitroModules
10
+
11
+ /**
12
+ * Represents an instance of `CircleData`, backed by a C++ struct.
13
+ */
14
+ public typealias CircleData = margelo.nitro.nitromap.CircleData
15
+
16
+ public extension CircleData {
17
+ private typealias bridge = margelo.nitro.nitromap.bridge.swift
18
+
19
+ /**
20
+ * Create a new instance of `CircleData`.
21
+ */
22
+ init(id: String, center: Coordinate, radius: Double, fillColor: MarkerColor, strokeColor: MarkerColor, strokeWidth: Double, zIndex: Double, tappable: Bool, accessibilityLabel: String?) {
23
+ self.init(std.string(id), center, radius, fillColor, strokeColor, strokeWidth, zIndex, tappable, { () -> bridge.std__optional_std__string_ in
24
+ if let __unwrappedValue = accessibilityLabel {
25
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
26
+ } else {
27
+ return .init()
28
+ }
29
+ }())
30
+ }
31
+
32
+ var id: String {
33
+ @inline(__always)
34
+ get {
35
+ return String(self.__id)
36
+ }
37
+ @inline(__always)
38
+ set {
39
+ self.__id = std.string(newValue)
40
+ }
41
+ }
42
+
43
+ var center: Coordinate {
44
+ @inline(__always)
45
+ get {
46
+ return self.__center
47
+ }
48
+ @inline(__always)
49
+ set {
50
+ self.__center = newValue
51
+ }
52
+ }
53
+
54
+ var radius: Double {
55
+ @inline(__always)
56
+ get {
57
+ return self.__radius
58
+ }
59
+ @inline(__always)
60
+ set {
61
+ self.__radius = newValue
62
+ }
63
+ }
64
+
65
+ var fillColor: MarkerColor {
66
+ @inline(__always)
67
+ get {
68
+ return self.__fillColor
69
+ }
70
+ @inline(__always)
71
+ set {
72
+ self.__fillColor = newValue
73
+ }
74
+ }
75
+
76
+ var strokeColor: MarkerColor {
77
+ @inline(__always)
78
+ get {
79
+ return self.__strokeColor
80
+ }
81
+ @inline(__always)
82
+ set {
83
+ self.__strokeColor = newValue
84
+ }
85
+ }
86
+
87
+ var strokeWidth: Double {
88
+ @inline(__always)
89
+ get {
90
+ return self.__strokeWidth
91
+ }
92
+ @inline(__always)
93
+ set {
94
+ self.__strokeWidth = newValue
95
+ }
96
+ }
97
+
98
+ var zIndex: Double {
99
+ @inline(__always)
100
+ get {
101
+ return self.__zIndex
102
+ }
103
+ @inline(__always)
104
+ set {
105
+ self.__zIndex = newValue
106
+ }
107
+ }
108
+
109
+ var tappable: Bool {
110
+ @inline(__always)
111
+ get {
112
+ return self.__tappable
113
+ }
114
+ @inline(__always)
115
+ set {
116
+ self.__tappable = newValue
117
+ }
118
+ }
119
+
120
+ var accessibilityLabel: String? {
121
+ @inline(__always)
122
+ get {
123
+ return { () -> String? in
124
+ if bridge.has_value_std__optional_std__string_(self.__accessibilityLabel) {
125
+ let __unwrapped = bridge.get_std__optional_std__string_(self.__accessibilityLabel)
126
+ return String(__unwrapped)
127
+ } else {
128
+ return nil
129
+ }
130
+ }()
131
+ }
132
+ @inline(__always)
133
+ set {
134
+ self.__accessibilityLabel = { () -> bridge.std__optional_std__string_ in
135
+ if let __unwrappedValue = newValue {
136
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
137
+ } else {
138
+ return .init()
139
+ }
140
+ }()
141
+ }
142
+ }
143
+ }