react-native-google-maps-plus 1.2.0-dev.1 → 1.3.0-dev.1

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 (41) hide show
  1. package/android/src/main/java/com/rngooglemapsplus/GoogleMapsViewImpl.kt +36 -8
  2. package/android/src/main/java/com/rngooglemapsplus/MapMarkerBuilder.kt +13 -3
  3. package/android/src/main/java/com/rngooglemapsplus/RNGoogleMapsPlusView.kt +19 -4
  4. package/ios/GoogleMapViewImpl.swift +33 -12
  5. package/ios/MapMarkerBuilder.swift +17 -8
  6. package/ios/RNGoogleMapsPlusView.swift +13 -4
  7. package/lib/module/types.js.map +1 -1
  8. package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts +7 -4
  9. package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts.map +1 -1
  10. package/lib/typescript/src/types.d.ts +6 -0
  11. package/lib/typescript/src/types.d.ts.map +1 -1
  12. package/nitrogen/generated/android/RNGoogleMapsPlusOnLoad.cpp +4 -2
  13. package/nitrogen/generated/android/c++/JFunc_void_std__optional_std__string_.hpp +76 -0
  14. package/nitrogen/generated/android/c++/JFunc_void_std__optional_std__string__RNLatLng.hpp +78 -0
  15. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.cpp +95 -37
  16. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.hpp +14 -8
  17. package/nitrogen/generated/android/c++/JRNMarker.hpp +24 -0
  18. package/nitrogen/generated/android/c++/views/JHybridRNGoogleMapsPlusViewStateUpdater.cpp +12 -0
  19. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/{Func_void_std__string.kt → Func_void_std__optional_std__string_.kt} +12 -12
  20. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/Func_void_std__optional_std__string__RNLatLng.kt +81 -0
  21. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/HybridRNGoogleMapsPlusViewSpec.kt +54 -12
  22. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMarker.kt +18 -0
  23. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.cpp +12 -4
  24. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.hpp +55 -18
  25. package/nitrogen/generated/ios/c++/HybridRNGoogleMapsPlusViewSpecSwift.hpp +29 -8
  26. package/nitrogen/generated/ios/c++/views/HybridRNGoogleMapsPlusViewComponent.mm +15 -0
  27. package/nitrogen/generated/ios/swift/{Func_void_std__string.swift → Func_void_std__optional_std__string_.swift} +18 -11
  28. package/nitrogen/generated/ios/swift/Func_void_std__optional_std__string__RNLatLng.swift +54 -0
  29. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec.swift +7 -4
  30. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec_cxx.swift +186 -48
  31. package/nitrogen/generated/ios/swift/RNMarker.swift +153 -1
  32. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.cpp +6 -0
  33. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.hpp +14 -8
  34. package/nitrogen/generated/shared/c++/RNMarker.hpp +25 -1
  35. package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.cpp +44 -8
  36. package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.hpp +7 -4
  37. package/nitrogen/generated/shared/json/RNGoogleMapsPlusViewConfig.json +3 -0
  38. package/package.json +1 -1
  39. package/src/RNGoogleMapsPlusView.nitro.ts +7 -4
  40. package/src/types.ts +6 -0
  41. package/nitrogen/generated/android/c++/JFunc_void_std__string.hpp +0 -75
@@ -137,7 +137,8 @@ namespace margelo::nitro::rngooglemapsplus { enum class RNIOSPermissionResult; }
137
137
  #include "JFunc_void_RNLocationErrorCode.hpp"
138
138
  #include "JRNLocationErrorCode.hpp"
139
139
  #include "JFunc_void_RNLatLng.hpp"
140
- #include "JFunc_void_std__string.hpp"
140
+ #include "JFunc_void_std__optional_std__string_.hpp"
141
+ #include "JFunc_void_std__optional_std__string__RNLatLng.hpp"
141
142
  #include "RNRegion.hpp"
142
143
  #include "JFunc_void_RNRegion_RNCamera_bool.hpp"
143
144
  #include "JRNRegion.hpp"
@@ -532,81 +533,138 @@ namespace margelo::nitro::rngooglemapsplus {
532
533
  static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_RNLatLng::javaobject> /* onMapPress */)>("setOnMapPress_cxx");
533
534
  method(_javaPart, onMapPress.has_value() ? JFunc_void_RNLatLng_cxx::fromCpp(onMapPress.value()) : nullptr);
534
535
  }
535
- std::optional<std::function<void(const std::string& /* id */)>> JHybridRNGoogleMapsPlusViewSpec::getOnMarkerPress() {
536
- static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_std__string::javaobject>()>("getOnMarkerPress_cxx");
536
+ std::optional<std::function<void(const std::optional<std::string>& /* id */)>> JHybridRNGoogleMapsPlusViewSpec::getOnMarkerPress() {
537
+ static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_std__optional_std__string_::javaobject>()>("getOnMarkerPress_cxx");
537
538
  auto __result = method(_javaPart);
538
- return __result != nullptr ? std::make_optional([&]() -> std::function<void(const std::string& /* id */)> {
539
- if (__result->isInstanceOf(JFunc_void_std__string_cxx::javaClassStatic())) [[likely]] {
540
- auto downcast = jni::static_ref_cast<JFunc_void_std__string_cxx::javaobject>(__result);
539
+ return __result != nullptr ? std::make_optional([&]() -> std::function<void(const std::optional<std::string>& /* id */)> {
540
+ if (__result->isInstanceOf(JFunc_void_std__optional_std__string__cxx::javaClassStatic())) [[likely]] {
541
+ auto downcast = jni::static_ref_cast<JFunc_void_std__optional_std__string__cxx::javaobject>(__result);
541
542
  return downcast->cthis()->getFunction();
542
543
  } else {
543
544
  auto __resultRef = jni::make_global(__result);
544
- return [__resultRef](std::string id) -> void {
545
+ return [__resultRef](std::optional<std::string> id) -> void {
545
546
  return __resultRef->invoke(id);
546
547
  };
547
548
  }
548
549
  }()) : std::nullopt;
549
550
  }
550
- void JHybridRNGoogleMapsPlusViewSpec::setOnMarkerPress(const std::optional<std::function<void(const std::string& /* id */)>>& onMarkerPress) {
551
- static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__string::javaobject> /* onMarkerPress */)>("setOnMarkerPress_cxx");
552
- method(_javaPart, onMarkerPress.has_value() ? JFunc_void_std__string_cxx::fromCpp(onMarkerPress.value()) : nullptr);
551
+ void JHybridRNGoogleMapsPlusViewSpec::setOnMarkerPress(const std::optional<std::function<void(const std::optional<std::string>& /* id */)>>& onMarkerPress) {
552
+ static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__optional_std__string_::javaobject> /* onMarkerPress */)>("setOnMarkerPress_cxx");
553
+ method(_javaPart, onMarkerPress.has_value() ? JFunc_void_std__optional_std__string__cxx::fromCpp(onMarkerPress.value()) : nullptr);
553
554
  }
554
- std::optional<std::function<void(const std::string& /* id */)>> JHybridRNGoogleMapsPlusViewSpec::getOnPolylinePress() {
555
- static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_std__string::javaobject>()>("getOnPolylinePress_cxx");
555
+ std::optional<std::function<void(const std::optional<std::string>& /* id */)>> JHybridRNGoogleMapsPlusViewSpec::getOnPolylinePress() {
556
+ static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_std__optional_std__string_::javaobject>()>("getOnPolylinePress_cxx");
556
557
  auto __result = method(_javaPart);
557
- return __result != nullptr ? std::make_optional([&]() -> std::function<void(const std::string& /* id */)> {
558
- if (__result->isInstanceOf(JFunc_void_std__string_cxx::javaClassStatic())) [[likely]] {
559
- auto downcast = jni::static_ref_cast<JFunc_void_std__string_cxx::javaobject>(__result);
558
+ return __result != nullptr ? std::make_optional([&]() -> std::function<void(const std::optional<std::string>& /* id */)> {
559
+ if (__result->isInstanceOf(JFunc_void_std__optional_std__string__cxx::javaClassStatic())) [[likely]] {
560
+ auto downcast = jni::static_ref_cast<JFunc_void_std__optional_std__string__cxx::javaobject>(__result);
560
561
  return downcast->cthis()->getFunction();
561
562
  } else {
562
563
  auto __resultRef = jni::make_global(__result);
563
- return [__resultRef](std::string id) -> void {
564
+ return [__resultRef](std::optional<std::string> id) -> void {
564
565
  return __resultRef->invoke(id);
565
566
  };
566
567
  }
567
568
  }()) : std::nullopt;
568
569
  }
569
- void JHybridRNGoogleMapsPlusViewSpec::setOnPolylinePress(const std::optional<std::function<void(const std::string& /* id */)>>& onPolylinePress) {
570
- static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__string::javaobject> /* onPolylinePress */)>("setOnPolylinePress_cxx");
571
- method(_javaPart, onPolylinePress.has_value() ? JFunc_void_std__string_cxx::fromCpp(onPolylinePress.value()) : nullptr);
570
+ void JHybridRNGoogleMapsPlusViewSpec::setOnPolylinePress(const std::optional<std::function<void(const std::optional<std::string>& /* id */)>>& onPolylinePress) {
571
+ static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__optional_std__string_::javaobject> /* onPolylinePress */)>("setOnPolylinePress_cxx");
572
+ method(_javaPart, onPolylinePress.has_value() ? JFunc_void_std__optional_std__string__cxx::fromCpp(onPolylinePress.value()) : nullptr);
572
573
  }
573
- std::optional<std::function<void(const std::string& /* id */)>> JHybridRNGoogleMapsPlusViewSpec::getOnPolygonPress() {
574
- static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_std__string::javaobject>()>("getOnPolygonPress_cxx");
574
+ std::optional<std::function<void(const std::optional<std::string>& /* id */)>> JHybridRNGoogleMapsPlusViewSpec::getOnPolygonPress() {
575
+ static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_std__optional_std__string_::javaobject>()>("getOnPolygonPress_cxx");
575
576
  auto __result = method(_javaPart);
576
- return __result != nullptr ? std::make_optional([&]() -> std::function<void(const std::string& /* id */)> {
577
- if (__result->isInstanceOf(JFunc_void_std__string_cxx::javaClassStatic())) [[likely]] {
578
- auto downcast = jni::static_ref_cast<JFunc_void_std__string_cxx::javaobject>(__result);
577
+ return __result != nullptr ? std::make_optional([&]() -> std::function<void(const std::optional<std::string>& /* id */)> {
578
+ if (__result->isInstanceOf(JFunc_void_std__optional_std__string__cxx::javaClassStatic())) [[likely]] {
579
+ auto downcast = jni::static_ref_cast<JFunc_void_std__optional_std__string__cxx::javaobject>(__result);
579
580
  return downcast->cthis()->getFunction();
580
581
  } else {
581
582
  auto __resultRef = jni::make_global(__result);
582
- return [__resultRef](std::string id) -> void {
583
+ return [__resultRef](std::optional<std::string> id) -> void {
583
584
  return __resultRef->invoke(id);
584
585
  };
585
586
  }
586
587
  }()) : std::nullopt;
587
588
  }
588
- void JHybridRNGoogleMapsPlusViewSpec::setOnPolygonPress(const std::optional<std::function<void(const std::string& /* id */)>>& onPolygonPress) {
589
- static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__string::javaobject> /* onPolygonPress */)>("setOnPolygonPress_cxx");
590
- method(_javaPart, onPolygonPress.has_value() ? JFunc_void_std__string_cxx::fromCpp(onPolygonPress.value()) : nullptr);
589
+ void JHybridRNGoogleMapsPlusViewSpec::setOnPolygonPress(const std::optional<std::function<void(const std::optional<std::string>& /* id */)>>& onPolygonPress) {
590
+ static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__optional_std__string_::javaobject> /* onPolygonPress */)>("setOnPolygonPress_cxx");
591
+ method(_javaPart, onPolygonPress.has_value() ? JFunc_void_std__optional_std__string__cxx::fromCpp(onPolygonPress.value()) : nullptr);
591
592
  }
592
- std::optional<std::function<void(const std::string& /* id */)>> JHybridRNGoogleMapsPlusViewSpec::getOnCirclePress() {
593
- static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_std__string::javaobject>()>("getOnCirclePress_cxx");
593
+ std::optional<std::function<void(const std::optional<std::string>& /* id */)>> JHybridRNGoogleMapsPlusViewSpec::getOnCirclePress() {
594
+ static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_std__optional_std__string_::javaobject>()>("getOnCirclePress_cxx");
594
595
  auto __result = method(_javaPart);
595
- return __result != nullptr ? std::make_optional([&]() -> std::function<void(const std::string& /* id */)> {
596
- if (__result->isInstanceOf(JFunc_void_std__string_cxx::javaClassStatic())) [[likely]] {
597
- auto downcast = jni::static_ref_cast<JFunc_void_std__string_cxx::javaobject>(__result);
596
+ return __result != nullptr ? std::make_optional([&]() -> std::function<void(const std::optional<std::string>& /* id */)> {
597
+ if (__result->isInstanceOf(JFunc_void_std__optional_std__string__cxx::javaClassStatic())) [[likely]] {
598
+ auto downcast = jni::static_ref_cast<JFunc_void_std__optional_std__string__cxx::javaobject>(__result);
598
599
  return downcast->cthis()->getFunction();
599
600
  } else {
600
601
  auto __resultRef = jni::make_global(__result);
601
- return [__resultRef](std::string id) -> void {
602
+ return [__resultRef](std::optional<std::string> id) -> void {
602
603
  return __resultRef->invoke(id);
603
604
  };
604
605
  }
605
606
  }()) : std::nullopt;
606
607
  }
607
- void JHybridRNGoogleMapsPlusViewSpec::setOnCirclePress(const std::optional<std::function<void(const std::string& /* id */)>>& onCirclePress) {
608
- static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__string::javaobject> /* onCirclePress */)>("setOnCirclePress_cxx");
609
- method(_javaPart, onCirclePress.has_value() ? JFunc_void_std__string_cxx::fromCpp(onCirclePress.value()) : nullptr);
608
+ void JHybridRNGoogleMapsPlusViewSpec::setOnCirclePress(const std::optional<std::function<void(const std::optional<std::string>& /* id */)>>& onCirclePress) {
609
+ static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__optional_std__string_::javaobject> /* onCirclePress */)>("setOnCirclePress_cxx");
610
+ method(_javaPart, onCirclePress.has_value() ? JFunc_void_std__optional_std__string__cxx::fromCpp(onCirclePress.value()) : nullptr);
611
+ }
612
+ std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>> JHybridRNGoogleMapsPlusViewSpec::getOnMarkerDragStart() {
613
+ static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_std__optional_std__string__RNLatLng::javaobject>()>("getOnMarkerDragStart_cxx");
614
+ auto __result = method(_javaPart);
615
+ return __result != nullptr ? std::make_optional([&]() -> std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)> {
616
+ if (__result->isInstanceOf(JFunc_void_std__optional_std__string__RNLatLng_cxx::javaClassStatic())) [[likely]] {
617
+ auto downcast = jni::static_ref_cast<JFunc_void_std__optional_std__string__RNLatLng_cxx::javaobject>(__result);
618
+ return downcast->cthis()->getFunction();
619
+ } else {
620
+ auto __resultRef = jni::make_global(__result);
621
+ return [__resultRef](std::optional<std::string> id, RNLatLng location) -> void {
622
+ return __resultRef->invoke(id,location);
623
+ };
624
+ }
625
+ }()) : std::nullopt;
626
+ }
627
+ void JHybridRNGoogleMapsPlusViewSpec::setOnMarkerDragStart(const std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>>& onMarkerDragStart) {
628
+ static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__optional_std__string__RNLatLng::javaobject> /* onMarkerDragStart */)>("setOnMarkerDragStart_cxx");
629
+ method(_javaPart, onMarkerDragStart.has_value() ? JFunc_void_std__optional_std__string__RNLatLng_cxx::fromCpp(onMarkerDragStart.value()) : nullptr);
630
+ }
631
+ std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>> JHybridRNGoogleMapsPlusViewSpec::getOnMarkerDrag() {
632
+ static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_std__optional_std__string__RNLatLng::javaobject>()>("getOnMarkerDrag_cxx");
633
+ auto __result = method(_javaPart);
634
+ return __result != nullptr ? std::make_optional([&]() -> std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)> {
635
+ if (__result->isInstanceOf(JFunc_void_std__optional_std__string__RNLatLng_cxx::javaClassStatic())) [[likely]] {
636
+ auto downcast = jni::static_ref_cast<JFunc_void_std__optional_std__string__RNLatLng_cxx::javaobject>(__result);
637
+ return downcast->cthis()->getFunction();
638
+ } else {
639
+ auto __resultRef = jni::make_global(__result);
640
+ return [__resultRef](std::optional<std::string> id, RNLatLng location) -> void {
641
+ return __resultRef->invoke(id,location);
642
+ };
643
+ }
644
+ }()) : std::nullopt;
645
+ }
646
+ void JHybridRNGoogleMapsPlusViewSpec::setOnMarkerDrag(const std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>>& onMarkerDrag) {
647
+ static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__optional_std__string__RNLatLng::javaobject> /* onMarkerDrag */)>("setOnMarkerDrag_cxx");
648
+ method(_javaPart, onMarkerDrag.has_value() ? JFunc_void_std__optional_std__string__RNLatLng_cxx::fromCpp(onMarkerDrag.value()) : nullptr);
649
+ }
650
+ std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>> JHybridRNGoogleMapsPlusViewSpec::getOnMarkerDragEnd() {
651
+ static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_std__optional_std__string__RNLatLng::javaobject>()>("getOnMarkerDragEnd_cxx");
652
+ auto __result = method(_javaPart);
653
+ return __result != nullptr ? std::make_optional([&]() -> std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)> {
654
+ if (__result->isInstanceOf(JFunc_void_std__optional_std__string__RNLatLng_cxx::javaClassStatic())) [[likely]] {
655
+ auto downcast = jni::static_ref_cast<JFunc_void_std__optional_std__string__RNLatLng_cxx::javaobject>(__result);
656
+ return downcast->cthis()->getFunction();
657
+ } else {
658
+ auto __resultRef = jni::make_global(__result);
659
+ return [__resultRef](std::optional<std::string> id, RNLatLng location) -> void {
660
+ return __resultRef->invoke(id,location);
661
+ };
662
+ }
663
+ }()) : std::nullopt;
664
+ }
665
+ void JHybridRNGoogleMapsPlusViewSpec::setOnMarkerDragEnd(const std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>>& onMarkerDragEnd) {
666
+ static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__optional_std__string__RNLatLng::javaobject> /* onMarkerDragEnd */)>("setOnMarkerDragEnd_cxx");
667
+ method(_javaPart, onMarkerDragEnd.has_value() ? JFunc_void_std__optional_std__string__RNLatLng_cxx::fromCpp(onMarkerDragEnd.value()) : nullptr);
610
668
  }
611
669
  std::optional<std::function<void(const RNRegion& /* region */, const RNCamera& /* camera */, bool /* isGesture */)>> JHybridRNGoogleMapsPlusViewSpec::getOnCameraChangeStart() {
612
670
  static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_RNRegion_RNCamera_bool::javaobject>()>("getOnCameraChangeStart_cxx");
@@ -95,14 +95,20 @@ namespace margelo::nitro::rngooglemapsplus {
95
95
  void setOnLocationError(const std::optional<std::function<void(RNLocationErrorCode /* error */)>>& onLocationError) override;
96
96
  std::optional<std::function<void(const RNLatLng& /* coordinate */)>> getOnMapPress() override;
97
97
  void setOnMapPress(const std::optional<std::function<void(const RNLatLng& /* coordinate */)>>& onMapPress) override;
98
- std::optional<std::function<void(const std::string& /* id */)>> getOnMarkerPress() override;
99
- void setOnMarkerPress(const std::optional<std::function<void(const std::string& /* id */)>>& onMarkerPress) override;
100
- std::optional<std::function<void(const std::string& /* id */)>> getOnPolylinePress() override;
101
- void setOnPolylinePress(const std::optional<std::function<void(const std::string& /* id */)>>& onPolylinePress) override;
102
- std::optional<std::function<void(const std::string& /* id */)>> getOnPolygonPress() override;
103
- void setOnPolygonPress(const std::optional<std::function<void(const std::string& /* id */)>>& onPolygonPress) override;
104
- std::optional<std::function<void(const std::string& /* id */)>> getOnCirclePress() override;
105
- void setOnCirclePress(const std::optional<std::function<void(const std::string& /* id */)>>& onCirclePress) override;
98
+ std::optional<std::function<void(const std::optional<std::string>& /* id */)>> getOnMarkerPress() override;
99
+ void setOnMarkerPress(const std::optional<std::function<void(const std::optional<std::string>& /* id */)>>& onMarkerPress) override;
100
+ std::optional<std::function<void(const std::optional<std::string>& /* id */)>> getOnPolylinePress() override;
101
+ void setOnPolylinePress(const std::optional<std::function<void(const std::optional<std::string>& /* id */)>>& onPolylinePress) override;
102
+ std::optional<std::function<void(const std::optional<std::string>& /* id */)>> getOnPolygonPress() override;
103
+ void setOnPolygonPress(const std::optional<std::function<void(const std::optional<std::string>& /* id */)>>& onPolygonPress) override;
104
+ std::optional<std::function<void(const std::optional<std::string>& /* id */)>> getOnCirclePress() override;
105
+ void setOnCirclePress(const std::optional<std::function<void(const std::optional<std::string>& /* id */)>>& onCirclePress) override;
106
+ std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>> getOnMarkerDragStart() override;
107
+ void setOnMarkerDragStart(const std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>>& onMarkerDragStart) override;
108
+ std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>> getOnMarkerDrag() override;
109
+ void setOnMarkerDrag(const std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>>& onMarkerDrag) override;
110
+ std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>> getOnMarkerDragEnd() override;
111
+ void setOnMarkerDragEnd(const std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>>& onMarkerDragEnd) override;
106
112
  std::optional<std::function<void(const RNRegion& /* region */, const RNCamera& /* camera */, bool /* isGesture */)>> getOnCameraChangeStart() override;
107
113
  void setOnCameraChangeStart(const std::optional<std::function<void(const RNRegion& /* region */, const RNCamera& /* camera */, bool /* isGesture */)>>& onCameraChangeStart) override;
108
114
  std::optional<std::function<void(const RNRegion& /* region */, const RNCamera& /* camera */, bool /* isGesture */)>> getOnCameraChange() override;
@@ -46,6 +46,18 @@ namespace margelo::nitro::rngooglemapsplus {
46
46
  jni::local_ref<JRNLatLng> coordinate = this->getFieldValue(fieldCoordinate);
47
47
  static const auto fieldAnchor = clazz->getField<JRNPosition>("anchor");
48
48
  jni::local_ref<JRNPosition> anchor = this->getFieldValue(fieldAnchor);
49
+ static const auto fieldShowInfoWindow = clazz->getField<jni::JBoolean>("showInfoWindow");
50
+ jni::local_ref<jni::JBoolean> showInfoWindow = this->getFieldValue(fieldShowInfoWindow);
51
+ static const auto fieldTitle = clazz->getField<jni::JString>("title");
52
+ jni::local_ref<jni::JString> title = this->getFieldValue(fieldTitle);
53
+ static const auto fieldSnippet = clazz->getField<jni::JString>("snippet");
54
+ jni::local_ref<jni::JString> snippet = this->getFieldValue(fieldSnippet);
55
+ static const auto fieldOpacity = clazz->getField<jni::JDouble>("opacity");
56
+ jni::local_ref<jni::JDouble> opacity = this->getFieldValue(fieldOpacity);
57
+ static const auto fieldFlat = clazz->getField<jni::JBoolean>("flat");
58
+ jni::local_ref<jni::JBoolean> flat = this->getFieldValue(fieldFlat);
59
+ static const auto fieldDraggable = clazz->getField<jni::JBoolean>("draggable");
60
+ jni::local_ref<jni::JBoolean> draggable = this->getFieldValue(fieldDraggable);
49
61
  static const auto fieldIconSvg = clazz->getField<JRNMarkerSvg>("iconSvg");
50
62
  jni::local_ref<JRNMarkerSvg> iconSvg = this->getFieldValue(fieldIconSvg);
51
63
  return RNMarker(
@@ -53,6 +65,12 @@ namespace margelo::nitro::rngooglemapsplus {
53
65
  zIndex != nullptr ? std::make_optional(zIndex->value()) : std::nullopt,
54
66
  coordinate->toCpp(),
55
67
  anchor != nullptr ? std::make_optional(anchor->toCpp()) : std::nullopt,
68
+ showInfoWindow != nullptr ? std::make_optional(static_cast<bool>(showInfoWindow->value())) : std::nullopt,
69
+ title != nullptr ? std::make_optional(title->toStdString()) : std::nullopt,
70
+ snippet != nullptr ? std::make_optional(snippet->toStdString()) : std::nullopt,
71
+ opacity != nullptr ? std::make_optional(opacity->value()) : std::nullopt,
72
+ flat != nullptr ? std::make_optional(static_cast<bool>(flat->value())) : std::nullopt,
73
+ draggable != nullptr ? std::make_optional(static_cast<bool>(draggable->value())) : std::nullopt,
56
74
  iconSvg != nullptr ? std::make_optional(iconSvg->toCpp()) : std::nullopt
57
75
  );
58
76
  }
@@ -68,6 +86,12 @@ namespace margelo::nitro::rngooglemapsplus {
68
86
  value.zIndex.has_value() ? jni::JDouble::valueOf(value.zIndex.value()) : nullptr,
69
87
  JRNLatLng::fromCpp(value.coordinate),
70
88
  value.anchor.has_value() ? JRNPosition::fromCpp(value.anchor.value()) : nullptr,
89
+ value.showInfoWindow.has_value() ? jni::JBoolean::valueOf(value.showInfoWindow.value()) : nullptr,
90
+ value.title.has_value() ? jni::make_jstring(value.title.value()) : nullptr,
91
+ value.snippet.has_value() ? jni::make_jstring(value.snippet.value()) : nullptr,
92
+ value.opacity.has_value() ? jni::JDouble::valueOf(value.opacity.value()) : nullptr,
93
+ value.flat.has_value() ? jni::JBoolean::valueOf(value.flat.value()) : nullptr,
94
+ value.draggable.has_value() ? jni::JBoolean::valueOf(value.draggable.value()) : nullptr,
71
95
  value.iconSvg.has_value() ? JRNMarkerSvg::fromCpp(value.iconSvg.value()) : nullptr
72
96
  );
73
97
  }
@@ -144,6 +144,18 @@ void JHybridRNGoogleMapsPlusViewStateUpdater::updateViewProps(jni::alias_ref<jni
144
144
  view->setOnCirclePress(props.onCirclePress.value);
145
145
  // TODO: Set isDirty = false
146
146
  }
147
+ if (props.onMarkerDragStart.isDirty) {
148
+ view->setOnMarkerDragStart(props.onMarkerDragStart.value);
149
+ // TODO: Set isDirty = false
150
+ }
151
+ if (props.onMarkerDrag.isDirty) {
152
+ view->setOnMarkerDrag(props.onMarkerDrag.value);
153
+ // TODO: Set isDirty = false
154
+ }
155
+ if (props.onMarkerDragEnd.isDirty) {
156
+ view->setOnMarkerDragEnd(props.onMarkerDragEnd.value);
157
+ // TODO: Set isDirty = false
158
+ }
147
159
  if (props.onCameraChangeStart.isDirty) {
148
160
  view->setOnCameraChangeStart(props.onCameraChangeStart.value);
149
161
  // TODO: Set isDirty = false
@@ -1,5 +1,5 @@
1
1
  ///
2
- /// Func_void_std__string.kt
2
+ /// Func_void_std__optional_std__string_.kt
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © 2025 Marc Rousavy @ Margelo
@@ -15,25 +15,25 @@ import dalvik.annotation.optimization.FastNative
15
15
 
16
16
 
17
17
  /**
18
- * Represents the JavaScript callback `(id: string) => void`.
18
+ * Represents the JavaScript callback `(id: optional) => void`.
19
19
  * This can be either implemented in C++ (in which case it might be a callback coming from JS),
20
20
  * or in Kotlin/Java (in which case it is a native callback).
21
21
  */
22
22
  @DoNotStrip
23
23
  @Keep
24
24
  @Suppress("ClassName", "RedundantUnitReturnType")
25
- fun interface Func_void_std__string: (String) -> Unit {
25
+ fun interface Func_void_std__optional_std__string_: (String?) -> Unit {
26
26
  /**
27
27
  * Call the given JS callback.
28
28
  * @throws Throwable if the JS function itself throws an error, or if the JS function/runtime has already been deleted.
29
29
  */
30
30
  @DoNotStrip
31
31
  @Keep
32
- override fun invoke(id: String): Unit
32
+ override fun invoke(id: String?): Unit
33
33
  }
34
34
 
35
35
  /**
36
- * Represents the JavaScript callback `(id: string) => void`.
36
+ * Represents the JavaScript callback `(id: optional) => void`.
37
37
  * This is implemented in C++, via a `std::function<...>`.
38
38
  * The callback might be coming from JS.
39
39
  */
@@ -44,7 +44,7 @@ fun interface Func_void_std__string: (String) -> Unit {
44
44
  "RedundantSuppression", "RedundantUnitReturnType", "FunctionName",
45
45
  "ConvertSecondaryConstructorToPrimary", "ClassName", "LocalVariableName",
46
46
  )
47
- class Func_void_std__string_cxx: Func_void_std__string {
47
+ class Func_void_std__optional_std__string__cxx: Func_void_std__optional_std__string_ {
48
48
  @DoNotStrip
49
49
  @Keep
50
50
  private val mHybridData: HybridData
@@ -57,25 +57,25 @@ class Func_void_std__string_cxx: Func_void_std__string {
57
57
 
58
58
  @DoNotStrip
59
59
  @Keep
60
- override fun invoke(id: String): Unit
60
+ override fun invoke(id: String?): Unit
61
61
  = invoke_cxx(id)
62
62
 
63
63
  @FastNative
64
- private external fun invoke_cxx(id: String): Unit
64
+ private external fun invoke_cxx(id: String?): Unit
65
65
  }
66
66
 
67
67
  /**
68
- * Represents the JavaScript callback `(id: string) => void`.
69
- * This is implemented in Java/Kotlin, via a `(String) -> Unit`.
68
+ * Represents the JavaScript callback `(id: optional) => void`.
69
+ * This is implemented in Java/Kotlin, via a `(String?) -> Unit`.
70
70
  * The callback is always coming from native.
71
71
  */
72
72
  @DoNotStrip
73
73
  @Keep
74
74
  @Suppress("ClassName", "RedundantUnitReturnType", "unused")
75
- class Func_void_std__string_java(private val function: (String) -> Unit): Func_void_std__string {
75
+ class Func_void_std__optional_std__string__java(private val function: (String?) -> Unit): Func_void_std__optional_std__string_ {
76
76
  @DoNotStrip
77
77
  @Keep
78
- override fun invoke(id: String): Unit {
78
+ override fun invoke(id: String?): Unit {
79
79
  return this.function(id)
80
80
  }
81
81
  }
@@ -0,0 +1,81 @@
1
+ ///
2
+ /// Func_void_std__optional_std__string__RNLatLng.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.rngooglemapsplus
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.jni.HybridData
12
+ import com.facebook.proguard.annotations.DoNotStrip
13
+ import com.margelo.nitro.core.*
14
+ import dalvik.annotation.optimization.FastNative
15
+
16
+
17
+ /**
18
+ * Represents the JavaScript callback `(id: optional, location: struct) => void`.
19
+ * This can be either implemented in C++ (in which case it might be a callback coming from JS),
20
+ * or in Kotlin/Java (in which case it is a native callback).
21
+ */
22
+ @DoNotStrip
23
+ @Keep
24
+ @Suppress("ClassName", "RedundantUnitReturnType")
25
+ fun interface Func_void_std__optional_std__string__RNLatLng: (String?, RNLatLng) -> Unit {
26
+ /**
27
+ * Call the given JS callback.
28
+ * @throws Throwable if the JS function itself throws an error, or if the JS function/runtime has already been deleted.
29
+ */
30
+ @DoNotStrip
31
+ @Keep
32
+ override fun invoke(id: String?, location: RNLatLng): Unit
33
+ }
34
+
35
+ /**
36
+ * Represents the JavaScript callback `(id: optional, location: struct) => void`.
37
+ * This is implemented in C++, via a `std::function<...>`.
38
+ * The callback might be coming from JS.
39
+ */
40
+ @DoNotStrip
41
+ @Keep
42
+ @Suppress(
43
+ "KotlinJniMissingFunction", "unused",
44
+ "RedundantSuppression", "RedundantUnitReturnType", "FunctionName",
45
+ "ConvertSecondaryConstructorToPrimary", "ClassName", "LocalVariableName",
46
+ )
47
+ class Func_void_std__optional_std__string__RNLatLng_cxx: Func_void_std__optional_std__string__RNLatLng {
48
+ @DoNotStrip
49
+ @Keep
50
+ private val mHybridData: HybridData
51
+
52
+ @DoNotStrip
53
+ @Keep
54
+ private constructor(hybridData: HybridData) {
55
+ mHybridData = hybridData
56
+ }
57
+
58
+ @DoNotStrip
59
+ @Keep
60
+ override fun invoke(id: String?, location: RNLatLng): Unit
61
+ = invoke_cxx(id,location)
62
+
63
+ @FastNative
64
+ private external fun invoke_cxx(id: String?, location: RNLatLng): Unit
65
+ }
66
+
67
+ /**
68
+ * Represents the JavaScript callback `(id: optional, location: struct) => void`.
69
+ * This is implemented in Java/Kotlin, via a `(String?, RNLatLng) -> Unit`.
70
+ * The callback is always coming from native.
71
+ */
72
+ @DoNotStrip
73
+ @Keep
74
+ @Suppress("ClassName", "RedundantUnitReturnType", "unused")
75
+ class Func_void_std__optional_std__string__RNLatLng_java(private val function: (String?, RNLatLng) -> Unit): Func_void_std__optional_std__string__RNLatLng {
76
+ @DoNotStrip
77
+ @Keep
78
+ override fun invoke(id: String?, location: RNLatLng): Unit {
79
+ return this.function(id, location)
80
+ }
81
+ }
@@ -216,13 +216,13 @@ abstract class HybridRNGoogleMapsPlusViewSpec: HybridView() {
216
216
  onMapPress = value?.let { it }
217
217
  }
218
218
 
219
- abstract var onMarkerPress: ((id: String) -> Unit)?
219
+ abstract var onMarkerPress: ((id: String?) -> Unit)?
220
220
 
221
- private var onMarkerPress_cxx: Func_void_std__string?
221
+ private var onMarkerPress_cxx: Func_void_std__optional_std__string_?
222
222
  @Keep
223
223
  @DoNotStrip
224
224
  get() {
225
- return onMarkerPress?.let { Func_void_std__string_java(it) }
225
+ return onMarkerPress?.let { Func_void_std__optional_std__string__java(it) }
226
226
  }
227
227
  @Keep
228
228
  @DoNotStrip
@@ -230,13 +230,13 @@ abstract class HybridRNGoogleMapsPlusViewSpec: HybridView() {
230
230
  onMarkerPress = value?.let { it }
231
231
  }
232
232
 
233
- abstract var onPolylinePress: ((id: String) -> Unit)?
233
+ abstract var onPolylinePress: ((id: String?) -> Unit)?
234
234
 
235
- private var onPolylinePress_cxx: Func_void_std__string?
235
+ private var onPolylinePress_cxx: Func_void_std__optional_std__string_?
236
236
  @Keep
237
237
  @DoNotStrip
238
238
  get() {
239
- return onPolylinePress?.let { Func_void_std__string_java(it) }
239
+ return onPolylinePress?.let { Func_void_std__optional_std__string__java(it) }
240
240
  }
241
241
  @Keep
242
242
  @DoNotStrip
@@ -244,13 +244,13 @@ abstract class HybridRNGoogleMapsPlusViewSpec: HybridView() {
244
244
  onPolylinePress = value?.let { it }
245
245
  }
246
246
 
247
- abstract var onPolygonPress: ((id: String) -> Unit)?
247
+ abstract var onPolygonPress: ((id: String?) -> Unit)?
248
248
 
249
- private var onPolygonPress_cxx: Func_void_std__string?
249
+ private var onPolygonPress_cxx: Func_void_std__optional_std__string_?
250
250
  @Keep
251
251
  @DoNotStrip
252
252
  get() {
253
- return onPolygonPress?.let { Func_void_std__string_java(it) }
253
+ return onPolygonPress?.let { Func_void_std__optional_std__string__java(it) }
254
254
  }
255
255
  @Keep
256
256
  @DoNotStrip
@@ -258,13 +258,13 @@ abstract class HybridRNGoogleMapsPlusViewSpec: HybridView() {
258
258
  onPolygonPress = value?.let { it }
259
259
  }
260
260
 
261
- abstract var onCirclePress: ((id: String) -> Unit)?
261
+ abstract var onCirclePress: ((id: String?) -> Unit)?
262
262
 
263
- private var onCirclePress_cxx: Func_void_std__string?
263
+ private var onCirclePress_cxx: Func_void_std__optional_std__string_?
264
264
  @Keep
265
265
  @DoNotStrip
266
266
  get() {
267
- return onCirclePress?.let { Func_void_std__string_java(it) }
267
+ return onCirclePress?.let { Func_void_std__optional_std__string__java(it) }
268
268
  }
269
269
  @Keep
270
270
  @DoNotStrip
@@ -272,6 +272,48 @@ abstract class HybridRNGoogleMapsPlusViewSpec: HybridView() {
272
272
  onCirclePress = value?.let { it }
273
273
  }
274
274
 
275
+ abstract var onMarkerDragStart: ((id: String?, location: RNLatLng) -> Unit)?
276
+
277
+ private var onMarkerDragStart_cxx: Func_void_std__optional_std__string__RNLatLng?
278
+ @Keep
279
+ @DoNotStrip
280
+ get() {
281
+ return onMarkerDragStart?.let { Func_void_std__optional_std__string__RNLatLng_java(it) }
282
+ }
283
+ @Keep
284
+ @DoNotStrip
285
+ set(value) {
286
+ onMarkerDragStart = value?.let { it }
287
+ }
288
+
289
+ abstract var onMarkerDrag: ((id: String?, location: RNLatLng) -> Unit)?
290
+
291
+ private var onMarkerDrag_cxx: Func_void_std__optional_std__string__RNLatLng?
292
+ @Keep
293
+ @DoNotStrip
294
+ get() {
295
+ return onMarkerDrag?.let { Func_void_std__optional_std__string__RNLatLng_java(it) }
296
+ }
297
+ @Keep
298
+ @DoNotStrip
299
+ set(value) {
300
+ onMarkerDrag = value?.let { it }
301
+ }
302
+
303
+ abstract var onMarkerDragEnd: ((id: String?, location: RNLatLng) -> Unit)?
304
+
305
+ private var onMarkerDragEnd_cxx: Func_void_std__optional_std__string__RNLatLng?
306
+ @Keep
307
+ @DoNotStrip
308
+ get() {
309
+ return onMarkerDragEnd?.let { Func_void_std__optional_std__string__RNLatLng_java(it) }
310
+ }
311
+ @Keep
312
+ @DoNotStrip
313
+ set(value) {
314
+ onMarkerDragEnd = value?.let { it }
315
+ }
316
+
275
317
  abstract var onCameraChangeStart: ((region: RNRegion, camera: RNCamera, isGesture: Boolean) -> Unit)?
276
318
 
277
319
  private var onCameraChangeStart_cxx: Func_void_RNRegion_RNCamera_bool?
@@ -35,6 +35,24 @@ data class RNMarker
35
35
  val anchor: RNPosition?,
36
36
  @DoNotStrip
37
37
  @Keep
38
+ val showInfoWindow: Boolean?,
39
+ @DoNotStrip
40
+ @Keep
41
+ val title: String?,
42
+ @DoNotStrip
43
+ @Keep
44
+ val snippet: String?,
45
+ @DoNotStrip
46
+ @Keep
47
+ val opacity: Double?,
48
+ @DoNotStrip
49
+ @Keep
50
+ val flat: Boolean?,
51
+ @DoNotStrip
52
+ @Keep
53
+ val draggable: Boolean?,
54
+ @DoNotStrip
55
+ @Keep
38
56
  val iconSvg: RNMarkerSvg?
39
57
  ) {
40
58
  /* main constructor */
@@ -86,14 +86,22 @@ namespace margelo::nitro::rngooglemapsplus::bridge::swift {
86
86
  };
87
87
  }
88
88
 
89
- // pragma MARK: std::function<void(const std::string& /* id */)>
90
- Func_void_std__string create_Func_void_std__string(void* _Nonnull swiftClosureWrapper) noexcept {
91
- auto swiftClosure = RNGoogleMapsPlus::Func_void_std__string::fromUnsafe(swiftClosureWrapper);
92
- return [swiftClosure = std::move(swiftClosure)](const std::string& id) mutable -> void {
89
+ // pragma MARK: std::function<void(const std::optional<std::string>& /* id */)>
90
+ Func_void_std__optional_std__string_ create_Func_void_std__optional_std__string_(void* _Nonnull swiftClosureWrapper) noexcept {
91
+ auto swiftClosure = RNGoogleMapsPlus::Func_void_std__optional_std__string_::fromUnsafe(swiftClosureWrapper);
92
+ return [swiftClosure = std::move(swiftClosure)](const std::optional<std::string>& id) mutable -> void {
93
93
  swiftClosure.call(id);
94
94
  };
95
95
  }
96
96
 
97
+ // pragma MARK: std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>
98
+ Func_void_std__optional_std__string__RNLatLng create_Func_void_std__optional_std__string__RNLatLng(void* _Nonnull swiftClosureWrapper) noexcept {
99
+ auto swiftClosure = RNGoogleMapsPlus::Func_void_std__optional_std__string__RNLatLng::fromUnsafe(swiftClosureWrapper);
100
+ return [swiftClosure = std::move(swiftClosure)](const std::optional<std::string>& id, const RNLatLng& location) mutable -> void {
101
+ swiftClosure.call(id, location);
102
+ };
103
+ }
104
+
97
105
  // pragma MARK: std::function<void(const RNRegion& /* region */, const RNCamera& /* camera */, bool /* isGesture */)>
98
106
  Func_void_RNRegion_RNCamera_bool create_Func_void_RNRegion_RNCamera_bool(void* _Nonnull swiftClosureWrapper) noexcept {
99
107
  auto swiftClosure = RNGoogleMapsPlus::Func_void_RNRegion_RNCamera_bool::fromUnsafe(swiftClosureWrapper);