react-native-nitro-geolocation 1.2.6 → 1.3.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 (223) hide show
  1. package/README.md +61 -272
  2. package/android/build.gradle +1 -0
  3. package/android/src/main/AndroidManifest.xml +39 -0
  4. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/AndroidFusedLocationProvider.kt +310 -0
  5. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/AndroidFusedRequestFactory.kt +31 -0
  6. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/AndroidGeolocationConversions.kt +71 -0
  7. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/AndroidGeolocationErrors.kt +85 -0
  8. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/AndroidGeolocationOptions.kt +92 -0
  9. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/AndroidLocationSettings.kt +3 -0
  10. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/AndroidProviderRoute.kt +74 -0
  11. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/NitroBackgroundLocation.kt +132 -0
  12. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/NitroGeolocation.kt +219 -476
  13. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/background/AndroidBackgroundHttpSync.kt +134 -0
  14. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/background/AndroidBackgroundPermissions.kt +196 -0
  15. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/background/AndroidBackgroundSerialization.kt +266 -0
  16. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/background/NitroActivityRecognitionReceiver.kt +13 -0
  17. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/background/NitroBackgroundEventHub.kt +65 -0
  18. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/background/NitroBackgroundHeadlessTaskService.kt +58 -0
  19. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/background/NitroBackgroundLocationController.kt +711 -0
  20. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/background/NitroBackgroundLocationService.kt +48 -0
  21. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/background/NitroBackgroundNotificationFactory.kt +37 -0
  22. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/background/NitroBackgroundStore.kt +655 -0
  23. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/background/NitroBootReceiver.kt +26 -0
  24. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/background/NitroGeofenceReceiver.kt +14 -0
  25. package/android/src/main/java/com/margelo/nitro/nitrogeolocation/background/NitroLocationUpdateReceiver.kt +37 -0
  26. package/android/src/test/java/com/margelo/nitro/nitrogeolocation/AndroidFusedLocationProviderTest.kt +64 -0
  27. package/android/src/test/java/com/margelo/nitro/nitrogeolocation/AndroidProviderRouteTest.kt +116 -0
  28. package/ios/IOSBackgroundHttpSync.swift +126 -0
  29. package/ios/IOSBackgroundLocationDelegate.swift +36 -0
  30. package/ios/IOSBackgroundMotion.swift +55 -0
  31. package/ios/IOSBackgroundSerialization.swift +539 -0
  32. package/ios/IOSGeolocationConversions.swift +131 -0
  33. package/ios/IOSGeolocationDelegate.swift +31 -0
  34. package/ios/IOSGeolocationErrors.swift +39 -0
  35. package/ios/IOSGeolocationOptions.swift +135 -0
  36. package/ios/NitroBackgroundLocation.swift +849 -0
  37. package/ios/NitroGeolocation.swift +14 -347
  38. package/nitrogen/generated/android/c++/JActivityRecognitionOptions.hpp +69 -0
  39. package/nitrogen/generated/android/c++/JAndroidBackgroundLocationOptions.hpp +74 -0
  40. package/nitrogen/generated/android/c++/JAndroidBackgroundLocationStatus.hpp +67 -0
  41. package/nitrogen/generated/android/c++/JAndroidBackgroundProvider.hpp +61 -0
  42. package/nitrogen/generated/android/c++/JAndroidForegroundServiceOptions.hpp +90 -0
  43. package/nitrogen/generated/android/c++/JBackgroundEventEnvelope.hpp +129 -0
  44. package/nitrogen/generated/android/c++/JBackgroundEventType.hpp +70 -0
  45. package/nitrogen/generated/android/c++/JBackgroundHttpMethod.hpp +61 -0
  46. package/nitrogen/generated/android/c++/JBackgroundHttpSyncOptions.hpp +131 -0
  47. package/nitrogen/generated/android/c++/JBackgroundHttpSyncResult.hpp +111 -0
  48. package/nitrogen/generated/android/c++/JBackgroundLocation.hpp +110 -0
  49. package/nitrogen/generated/android/c++/JBackgroundLocationOptions.hpp +162 -0
  50. package/nitrogen/generated/android/c++/JBackgroundLocationSource.hpp +73 -0
  51. package/nitrogen/generated/android/c++/JBackgroundLocationState.hpp +70 -0
  52. package/nitrogen/generated/android/c++/JBackgroundLocationStatus.hpp +126 -0
  53. package/nitrogen/generated/android/c++/JBackgroundPermissionResult.hpp +79 -0
  54. package/nitrogen/generated/android/c++/JBackgroundPermissionStatus.hpp +64 -0
  55. package/nitrogen/generated/android/c++/JBackgroundTrackingMode.hpp +61 -0
  56. package/nitrogen/generated/android/c++/JBatterySnapshot.hpp +61 -0
  57. package/nitrogen/generated/android/c++/JDetectedActivity.hpp +66 -0
  58. package/nitrogen/generated/android/c++/JDetectedActivityType.hpp +76 -0
  59. package/nitrogen/generated/android/c++/JFunc_void_BackgroundEventEnvelope.hpp +114 -0
  60. package/nitrogen/generated/android/c++/JFunc_void_BackgroundLocation.hpp +95 -0
  61. package/nitrogen/generated/android/c++/JGeofenceEvent.hpp +94 -0
  62. package/nitrogen/generated/android/c++/JGeofenceRegion.hpp +112 -0
  63. package/nitrogen/generated/android/c++/JGeofenceTransition.hpp +61 -0
  64. package/nitrogen/generated/android/c++/JGeofencingOptions.hpp +82 -0
  65. package/nitrogen/generated/android/c++/JGetStoredBackgroundEventsOptions.hpp +90 -0
  66. package/nitrogen/generated/android/c++/JGetStoredBackgroundLocationsOptions.hpp +69 -0
  67. package/nitrogen/generated/android/c++/JHybridNitroBackgroundLocationSpec.cpp +662 -0
  68. package/nitrogen/generated/android/c++/JHybridNitroBackgroundLocationSpec.hpp +89 -0
  69. package/nitrogen/generated/android/c++/JIOSBackgroundActivityType.hpp +67 -0
  70. package/nitrogen/generated/android/c++/JIOSBackgroundLocationOptions.hpp +79 -0
  71. package/nitrogen/generated/android/c++/JIOSBackgroundLocationStatus.hpp +61 -0
  72. package/nitrogen/generated/android/c++/JLocationProviderStatus.hpp +5 -1
  73. package/nitrogen/generated/android/c++/JStoredBackgroundEventEnvelope.hpp +115 -0
  74. package/nitrogen/generated/android/c++/JStoredBackgroundLocation.hpp +122 -0
  75. package/nitrogen/generated/android/c++/JVariant_NullType_Boolean_String_Double.cpp +34 -0
  76. package/nitrogen/generated/android/c++/JVariant_NullType_Boolean_String_Double.hpp +100 -0
  77. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/ActivityRecognitionOptions.kt +66 -0
  78. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/AndroidBackgroundLocationOptions.kt +66 -0
  79. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/AndroidBackgroundLocationStatus.kt +61 -0
  80. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/AndroidBackgroundProvider.kt +24 -0
  81. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/AndroidForegroundServiceOptions.kt +91 -0
  82. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/BackgroundEventEnvelope.kt +96 -0
  83. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/BackgroundEventType.kt +27 -0
  84. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/BackgroundHttpMethod.kt +24 -0
  85. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/BackgroundHttpSyncOptions.kt +101 -0
  86. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/BackgroundHttpSyncResult.kt +71 -0
  87. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/BackgroundLocation.kt +96 -0
  88. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/BackgroundLocationOptions.kt +136 -0
  89. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/BackgroundLocationSource.kt +28 -0
  90. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/BackgroundLocationState.kt +27 -0
  91. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/BackgroundLocationStatus.kt +116 -0
  92. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/BackgroundPermissionResult.kt +71 -0
  93. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/BackgroundPermissionStatus.kt +25 -0
  94. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/BackgroundTrackingMode.kt +24 -0
  95. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/BatterySnapshot.kt +56 -0
  96. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/DetectedActivity.kt +61 -0
  97. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/DetectedActivityType.kt +29 -0
  98. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/Func_void_BackgroundEventEnvelope.kt +80 -0
  99. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/Func_void_BackgroundLocation.kt +80 -0
  100. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/GeofenceEvent.kt +66 -0
  101. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/GeofenceRegion.kt +96 -0
  102. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/GeofenceTransition.kt +24 -0
  103. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/GeofencingOptions.kt +56 -0
  104. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/GetStoredBackgroundEventsOptions.kt +66 -0
  105. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/GetStoredBackgroundLocationsOptions.kt +66 -0
  106. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/HybridNitroBackgroundLocationSpec.kt +174 -0
  107. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/IOSBackgroundActivityType.kt +26 -0
  108. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/IOSBackgroundLocationOptions.kt +76 -0
  109. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/IOSBackgroundLocationStatus.kt +56 -0
  110. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/LocationProviderStatus.kt +7 -2
  111. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/StoredBackgroundEventEnvelope.kt +76 -0
  112. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/StoredBackgroundLocation.kt +111 -0
  113. package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrogeolocation/Variant_NullType_Boolean_String_Double.kt +88 -0
  114. package/nitrogen/generated/android/nitrogeolocation+autolinking.cmake +3 -0
  115. package/nitrogen/generated/android/nitrogeolocationOnLoad.cpp +20 -0
  116. package/nitrogen/generated/ios/NitroGeolocation-Swift-Cxx-Bridge.cpp +104 -15
  117. package/nitrogen/generated/ios/NitroGeolocation-Swift-Cxx-Bridge.hpp +1107 -50
  118. package/nitrogen/generated/ios/NitroGeolocation-Swift-Cxx-Umbrella.hpp +102 -0
  119. package/nitrogen/generated/ios/NitroGeolocationAutolinking.mm +8 -0
  120. package/nitrogen/generated/ios/NitroGeolocationAutolinking.swift +15 -3
  121. package/nitrogen/generated/ios/c++/HybridNitroBackgroundLocationSpecSwift.cpp +11 -0
  122. package/nitrogen/generated/ios/c++/HybridNitroBackgroundLocationSpecSwift.hpp +416 -0
  123. package/nitrogen/generated/ios/swift/ActivityRecognitionOptions.swift +96 -0
  124. package/nitrogen/generated/ios/swift/AndroidBackgroundLocationOptions.swift +76 -0
  125. package/nitrogen/generated/ios/swift/AndroidBackgroundLocationStatus.swift +58 -0
  126. package/nitrogen/generated/ios/swift/AndroidBackgroundProvider.swift +44 -0
  127. package/nitrogen/generated/ios/swift/AndroidForegroundServiceOptions.swift +160 -0
  128. package/nitrogen/generated/ios/swift/BackgroundEventEnvelope.swift +110 -0
  129. package/nitrogen/generated/ios/swift/BackgroundEventType.swift +56 -0
  130. package/nitrogen/generated/ios/swift/BackgroundHttpMethod.swift +44 -0
  131. package/nitrogen/generated/ios/swift/BackgroundHttpSyncOptions.swift +259 -0
  132. package/nitrogen/generated/ios/swift/BackgroundHttpSyncResult.swift +87 -0
  133. package/nitrogen/generated/ios/swift/BackgroundLocation.swift +118 -0
  134. package/nitrogen/generated/ios/swift/BackgroundLocationOptions.swift +292 -0
  135. package/nitrogen/generated/ios/swift/BackgroundLocationSource.swift +60 -0
  136. package/nitrogen/generated/ios/swift/BackgroundLocationState.swift +56 -0
  137. package/nitrogen/generated/ios/swift/BackgroundLocationStatus.swift +124 -0
  138. package/nitrogen/generated/ios/swift/BackgroundPermissionResult.swift +81 -0
  139. package/nitrogen/generated/ios/swift/BackgroundPermissionStatus.swift +48 -0
  140. package/nitrogen/generated/ios/swift/BackgroundTrackingMode.swift +44 -0
  141. package/nitrogen/generated/ios/swift/BatterySnapshot.swift +60 -0
  142. package/nitrogen/generated/ios/swift/DetectedActivity.swift +39 -0
  143. package/nitrogen/generated/ios/swift/DetectedActivityType.swift +64 -0
  144. package/nitrogen/generated/ios/swift/Func_void_BackgroundEventEnvelope.swift +46 -0
  145. package/nitrogen/generated/ios/swift/Func_void_BackgroundHttpSyncResult.swift +46 -0
  146. package/nitrogen/generated/ios/swift/Func_void_BackgroundLocation.swift +46 -0
  147. package/nitrogen/generated/ios/swift/Func_void_BackgroundLocationStatus.swift +46 -0
  148. package/nitrogen/generated/ios/swift/Func_void_BackgroundPermissionResult.swift +46 -0
  149. package/nitrogen/generated/ios/swift/Func_void_std__optional_BackgroundLocationOptions_.swift +46 -0
  150. package/nitrogen/generated/ios/swift/Func_void_std__vector_GeofenceRegion_.swift +46 -0
  151. package/nitrogen/generated/ios/swift/Func_void_std__vector_StoredBackgroundEventEnvelope_.swift +46 -0
  152. package/nitrogen/generated/ios/swift/Func_void_std__vector_StoredBackgroundLocation_.swift +46 -0
  153. package/nitrogen/generated/ios/swift/GeofenceEvent.swift +50 -0
  154. package/nitrogen/generated/ios/swift/GeofenceRegion.swift +195 -0
  155. package/nitrogen/generated/ios/swift/GeofenceTransition.swift +44 -0
  156. package/nitrogen/generated/ios/swift/GeofencingOptions.swift +66 -0
  157. package/nitrogen/generated/ios/swift/GetStoredBackgroundEventsOptions.swift +102 -0
  158. package/nitrogen/generated/ios/swift/GetStoredBackgroundLocationsOptions.swift +96 -0
  159. package/nitrogen/generated/ios/swift/HybridNitroBackgroundLocationSpec.swift +81 -0
  160. package/nitrogen/generated/ios/swift/HybridNitroBackgroundLocationSpec_cxx.swift +654 -0
  161. package/nitrogen/generated/ios/swift/IOSBackgroundActivityType.swift +52 -0
  162. package/nitrogen/generated/ios/swift/IOSBackgroundLocationOptions.swift +125 -0
  163. package/nitrogen/generated/ios/swift/IOSBackgroundLocationStatus.swift +34 -0
  164. package/nitrogen/generated/ios/swift/LocationProviderStatus.swift +19 -1
  165. package/nitrogen/generated/ios/swift/StoredBackgroundEventEnvelope.swift +54 -0
  166. package/nitrogen/generated/ios/swift/StoredBackgroundLocation.swift +120 -0
  167. package/nitrogen/generated/ios/swift/Variant_NullType_Bool_String_Double.swift +34 -0
  168. package/nitrogen/generated/shared/c++/ActivityRecognitionOptions.hpp +95 -0
  169. package/nitrogen/generated/shared/c++/AndroidBackgroundLocationOptions.hpp +100 -0
  170. package/nitrogen/generated/shared/c++/AndroidBackgroundLocationStatus.hpp +93 -0
  171. package/nitrogen/generated/shared/c++/AndroidBackgroundProvider.hpp +80 -0
  172. package/nitrogen/generated/shared/c++/AndroidForegroundServiceOptions.hpp +116 -0
  173. package/nitrogen/generated/shared/c++/BackgroundEventEnvelope.hpp +140 -0
  174. package/nitrogen/generated/shared/c++/BackgroundEventType.hpp +92 -0
  175. package/nitrogen/generated/shared/c++/BackgroundHttpMethod.hpp +80 -0
  176. package/nitrogen/generated/shared/c++/BackgroundHttpSyncOptions.hpp +129 -0
  177. package/nitrogen/generated/shared/c++/BackgroundHttpSyncResult.hpp +101 -0
  178. package/nitrogen/generated/shared/c++/BackgroundLocation.hpp +134 -0
  179. package/nitrogen/generated/shared/c++/BackgroundLocationOptions.hpp +174 -0
  180. package/nitrogen/generated/shared/c++/BackgroundLocationSource.hpp +96 -0
  181. package/nitrogen/generated/shared/c++/BackgroundLocationState.hpp +92 -0
  182. package/nitrogen/generated/shared/c++/BackgroundLocationStatus.hpp +158 -0
  183. package/nitrogen/generated/shared/c++/BackgroundPermissionResult.hpp +107 -0
  184. package/nitrogen/generated/shared/c++/BackgroundPermissionStatus.hpp +84 -0
  185. package/nitrogen/generated/shared/c++/BackgroundTrackingMode.hpp +80 -0
  186. package/nitrogen/generated/shared/c++/BatterySnapshot.hpp +87 -0
  187. package/nitrogen/generated/shared/c++/DetectedActivity.hpp +92 -0
  188. package/nitrogen/generated/shared/c++/DetectedActivityType.hpp +100 -0
  189. package/nitrogen/generated/shared/c++/GeofenceEvent.hpp +103 -0
  190. package/nitrogen/generated/shared/c++/GeofenceRegion.hpp +123 -0
  191. package/nitrogen/generated/shared/c++/GeofenceTransition.hpp +80 -0
  192. package/nitrogen/generated/shared/c++/GeofencingOptions.hpp +90 -0
  193. package/nitrogen/generated/shared/c++/GetStoredBackgroundEventsOptions.hpp +98 -0
  194. package/nitrogen/generated/shared/c++/GetStoredBackgroundLocationsOptions.hpp +95 -0
  195. package/nitrogen/generated/shared/c++/HybridNitroBackgroundLocationSpec.cpp +47 -0
  196. package/nitrogen/generated/shared/c++/HybridNitroBackgroundLocationSpec.hpp +133 -0
  197. package/nitrogen/generated/shared/c++/IOSBackgroundActivityType.hpp +88 -0
  198. package/nitrogen/generated/shared/c++/IOSBackgroundLocationOptions.hpp +105 -0
  199. package/nitrogen/generated/shared/c++/IOSBackgroundLocationStatus.hpp +87 -0
  200. package/nitrogen/generated/shared/c++/LocationProviderStatus.hpp +5 -1
  201. package/nitrogen/generated/shared/c++/StoredBackgroundEventEnvelope.hpp +108 -0
  202. package/nitrogen/generated/shared/c++/StoredBackgroundLocation.hpp +146 -0
  203. package/package.json +17 -6
  204. package/src/NitroGeolocation.nitro.ts +4 -4
  205. package/src/api/getCurrentPosition.ts +1 -1
  206. package/src/api/requestLocationSettings.ts +3 -2
  207. package/src/background/NitroBackgroundLocation.nitro.ts +83 -0
  208. package/src/background/index.ts +200 -0
  209. package/src/background/index.web.ts +120 -0
  210. package/src/background/task.ts +13 -0
  211. package/src/background/types.ts +328 -0
  212. package/src/compat/index.web.ts +141 -0
  213. package/src/index.tsx +3 -0
  214. package/src/index.web.tsx +41 -0
  215. package/src/publicTypes.ts +6 -5
  216. package/src/types.ts +3 -0
  217. package/src/web/browser.ts +171 -0
  218. package/src/web/index.ts +167 -0
  219. package/src/web/useWatchPosition.ts +76 -0
  220. package/src/web/watch.ts +81 -0
  221. package/src/devtools/index.test.ts +0 -54
  222. package/src/utils/errors.test.ts +0 -65
  223. package/src/utils/provider.test.ts +0 -303
@@ -28,6 +28,9 @@
28
28
  #include "JFunc_void.hpp"
29
29
  #include "JFunc_void_CompatGeolocationError.hpp"
30
30
  #include "JFunc_void_CompatGeolocationResponse.hpp"
31
+ #include "JHybridNitroBackgroundLocationSpec.hpp"
32
+ #include "JFunc_void_BackgroundEventEnvelope.hpp"
33
+ #include "JFunc_void_BackgroundLocation.hpp"
31
34
  #include <NitroModules/DefaultConstructableObject.hpp>
32
35
 
33
36
  namespace margelo::nitro::nitrogeolocation {
@@ -54,6 +57,14 @@ struct JHybridNitroGeolocationCompatSpecImpl: public jni::JavaClass<JHybridNitro
54
57
  return javaPart->getJHybridNitroGeolocationCompatSpec();
55
58
  }
56
59
  };
60
+ struct JHybridNitroBackgroundLocationSpecImpl: public jni::JavaClass<JHybridNitroBackgroundLocationSpecImpl, JHybridNitroBackgroundLocationSpec::JavaPart> {
61
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/nitrogeolocation/NitroBackgroundLocation;";
62
+ static std::shared_ptr<JHybridNitroBackgroundLocationSpec> create() {
63
+ static const auto constructorFn = javaClassStatic()->getConstructor<JHybridNitroBackgroundLocationSpecImpl::javaobject()>();
64
+ jni::local_ref<JHybridNitroBackgroundLocationSpec::JavaPart> javaPart = javaClassStatic()->newObject(constructorFn);
65
+ return javaPart->getJHybridNitroBackgroundLocationSpec();
66
+ }
67
+ };
57
68
 
58
69
  void registerAllNatives() {
59
70
  using namespace margelo::nitro;
@@ -73,6 +84,9 @@ void registerAllNatives() {
73
84
  margelo::nitro::nitrogeolocation::JFunc_void_cxx::registerNatives();
74
85
  margelo::nitro::nitrogeolocation::JFunc_void_CompatGeolocationError_cxx::registerNatives();
75
86
  margelo::nitro::nitrogeolocation::JFunc_void_CompatGeolocationResponse_cxx::registerNatives();
87
+ margelo::nitro::nitrogeolocation::JHybridNitroBackgroundLocationSpec::CxxPart::registerNatives();
88
+ margelo::nitro::nitrogeolocation::JFunc_void_BackgroundEventEnvelope_cxx::registerNatives();
89
+ margelo::nitro::nitrogeolocation::JFunc_void_BackgroundLocation_cxx::registerNatives();
76
90
 
77
91
  // Register Nitro Hybrid Objects
78
92
  HybridObjectRegistry::registerHybridObjectConstructor(
@@ -87,6 +101,12 @@ void registerAllNatives() {
87
101
  return JHybridNitroGeolocationCompatSpecImpl::create();
88
102
  }
89
103
  );
104
+ HybridObjectRegistry::registerHybridObjectConstructor(
105
+ "NitroBackgroundLocation",
106
+ []() -> std::shared_ptr<HybridObject> {
107
+ return JHybridNitroBackgroundLocationSpecImpl::create();
108
+ }
109
+ );
90
110
  }
91
111
 
92
112
  } // namespace margelo::nitro::nitrogeolocation
@@ -8,6 +8,7 @@
8
8
  #include "NitroGeolocation-Swift-Cxx-Bridge.hpp"
9
9
 
10
10
  // Include C++ implementation defined types
11
+ #include "HybridNitroBackgroundLocationSpecSwift.hpp"
11
12
  #include "HybridNitroGeolocationCompatSpecSwift.hpp"
12
13
  #include "HybridNitroGeolocationSpecSwift.hpp"
13
14
  #include "NitroGeolocation-Swift-Cxx-Umbrella.hpp"
@@ -22,7 +23,7 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
22
23
  swiftClosure.call(static_cast<int>(result));
23
24
  };
24
25
  }
25
-
26
+
26
27
  // pragma MARK: std::function<void(const std::exception_ptr& /* error */)>
27
28
  Func_void_std__exception_ptr create_Func_void_std__exception_ptr(void* NON_NULL swiftClosureWrapper) noexcept {
28
29
  auto swiftClosure = NitroGeolocation::Func_void_std__exception_ptr::fromUnsafe(swiftClosureWrapper);
@@ -30,7 +31,7 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
30
31
  swiftClosure.call(error);
31
32
  };
32
33
  }
33
-
34
+
34
35
  // pragma MARK: std::function<void(const LocationError& /* error */)>
35
36
  Func_void_LocationError create_Func_void_LocationError(void* NON_NULL swiftClosureWrapper) noexcept {
36
37
  auto swiftClosure = NitroGeolocation::Func_void_LocationError::fromUnsafe(swiftClosureWrapper);
@@ -38,7 +39,7 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
38
39
  swiftClosure.call(error);
39
40
  };
40
41
  }
41
-
42
+
42
43
  // pragma MARK: std::function<void(bool /* result */)>
43
44
  Func_void_bool create_Func_void_bool(void* NON_NULL swiftClosureWrapper) noexcept {
44
45
  auto swiftClosure = NitroGeolocation::Func_void_bool::fromUnsafe(swiftClosureWrapper);
@@ -46,7 +47,7 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
46
47
  swiftClosure.call(result);
47
48
  };
48
49
  }
49
-
50
+
50
51
  // pragma MARK: std::function<void(const LocationProviderStatus& /* result */)>
51
52
  Func_void_LocationProviderStatus create_Func_void_LocationProviderStatus(void* NON_NULL swiftClosureWrapper) noexcept {
52
53
  auto swiftClosure = NitroGeolocation::Func_void_LocationProviderStatus::fromUnsafe(swiftClosureWrapper);
@@ -54,7 +55,7 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
54
55
  swiftClosure.call(result);
55
56
  };
56
57
  }
57
-
58
+
58
59
  // pragma MARK: std::function<void(const LocationAvailability& /* result */)>
59
60
  Func_void_LocationAvailability create_Func_void_LocationAvailability(void* NON_NULL swiftClosureWrapper) noexcept {
60
61
  auto swiftClosure = NitroGeolocation::Func_void_LocationAvailability::fromUnsafe(swiftClosureWrapper);
@@ -62,7 +63,7 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
62
63
  swiftClosure.call(result);
63
64
  };
64
65
  }
65
-
66
+
66
67
  // pragma MARK: std::function<void(AccuracyAuthorization /* result */)>
67
68
  Func_void_AccuracyAuthorization create_Func_void_AccuracyAuthorization(void* NON_NULL swiftClosureWrapper) noexcept {
68
69
  auto swiftClosure = NitroGeolocation::Func_void_AccuracyAuthorization::fromUnsafe(swiftClosureWrapper);
@@ -70,7 +71,7 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
70
71
  swiftClosure.call(static_cast<int>(result));
71
72
  };
72
73
  }
73
-
74
+
74
75
  // pragma MARK: std::function<void(const GeolocationResponse& /* position */)>
75
76
  Func_void_GeolocationResponse create_Func_void_GeolocationResponse(void* NON_NULL swiftClosureWrapper) noexcept {
76
77
  auto swiftClosure = NitroGeolocation::Func_void_GeolocationResponse::fromUnsafe(swiftClosureWrapper);
@@ -78,7 +79,7 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
78
79
  swiftClosure.call(position);
79
80
  };
80
81
  }
81
-
82
+
82
83
  // pragma MARK: std::function<void(const std::vector<GeocodedLocation>& /* locations */)>
83
84
  Func_void_std__vector_GeocodedLocation_ create_Func_void_std__vector_GeocodedLocation_(void* NON_NULL swiftClosureWrapper) noexcept {
84
85
  auto swiftClosure = NitroGeolocation::Func_void_std__vector_GeocodedLocation_::fromUnsafe(swiftClosureWrapper);
@@ -86,7 +87,7 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
86
87
  swiftClosure.call(locations);
87
88
  };
88
89
  }
89
-
90
+
90
91
  // pragma MARK: std::function<void(const std::vector<ReverseGeocodedAddress>& /* addresses */)>
91
92
  Func_void_std__vector_ReverseGeocodedAddress_ create_Func_void_std__vector_ReverseGeocodedAddress_(void* NON_NULL swiftClosureWrapper) noexcept {
92
93
  auto swiftClosure = NitroGeolocation::Func_void_std__vector_ReverseGeocodedAddress_::fromUnsafe(swiftClosureWrapper);
@@ -94,7 +95,7 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
94
95
  swiftClosure.call(addresses);
95
96
  };
96
97
  }
97
-
98
+
98
99
  // pragma MARK: std::function<void(const Heading& /* heading */)>
99
100
  Func_void_Heading create_Func_void_Heading(void* NON_NULL swiftClosureWrapper) noexcept {
100
101
  auto swiftClosure = NitroGeolocation::Func_void_Heading::fromUnsafe(swiftClosureWrapper);
@@ -102,7 +103,7 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
102
103
  swiftClosure.call(heading);
103
104
  };
104
105
  }
105
-
106
+
106
107
  // pragma MARK: std::shared_ptr<HybridNitroGeolocationSpec>
107
108
  std::shared_ptr<HybridNitroGeolocationSpec> create_std__shared_ptr_HybridNitroGeolocationSpec_(void* NON_NULL swiftUnsafePointer) noexcept {
108
109
  NitroGeolocation::HybridNitroGeolocationSpec_cxx swiftPart = NitroGeolocation::HybridNitroGeolocationSpec_cxx::fromUnsafe(swiftUnsafePointer);
@@ -118,7 +119,7 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
118
119
  NitroGeolocation::HybridNitroGeolocationSpec_cxx& swiftPart = swiftWrapper->getSwiftPart();
119
120
  return swiftPart.toUnsafe();
120
121
  }
121
-
122
+
122
123
  // pragma MARK: std::function<void()>
123
124
  Func_void create_Func_void(void* NON_NULL swiftClosureWrapper) noexcept {
124
125
  auto swiftClosure = NitroGeolocation::Func_void::fromUnsafe(swiftClosureWrapper);
@@ -126,7 +127,7 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
126
127
  swiftClosure.call();
127
128
  };
128
129
  }
129
-
130
+
130
131
  // pragma MARK: std::function<void(const CompatGeolocationError& /* error */)>
131
132
  Func_void_CompatGeolocationError create_Func_void_CompatGeolocationError(void* NON_NULL swiftClosureWrapper) noexcept {
132
133
  auto swiftClosure = NitroGeolocation::Func_void_CompatGeolocationError::fromUnsafe(swiftClosureWrapper);
@@ -134,7 +135,7 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
134
135
  swiftClosure.call(error);
135
136
  };
136
137
  }
137
-
138
+
138
139
  // pragma MARK: std::function<void(const CompatGeolocationResponse& /* position */)>
139
140
  Func_void_CompatGeolocationResponse create_Func_void_CompatGeolocationResponse(void* NON_NULL swiftClosureWrapper) noexcept {
140
141
  auto swiftClosure = NitroGeolocation::Func_void_CompatGeolocationResponse::fromUnsafe(swiftClosureWrapper);
@@ -142,7 +143,7 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
142
143
  swiftClosure.call(position);
143
144
  };
144
145
  }
145
-
146
+
146
147
  // pragma MARK: std::shared_ptr<HybridNitroGeolocationCompatSpec>
147
148
  std::shared_ptr<HybridNitroGeolocationCompatSpec> create_std__shared_ptr_HybridNitroGeolocationCompatSpec_(void* NON_NULL swiftUnsafePointer) noexcept {
148
149
  NitroGeolocation::HybridNitroGeolocationCompatSpec_cxx swiftPart = NitroGeolocation::HybridNitroGeolocationCompatSpec_cxx::fromUnsafe(swiftUnsafePointer);
@@ -159,4 +160,92 @@ namespace margelo::nitro::nitrogeolocation::bridge::swift {
159
160
  return swiftPart.toUnsafe();
160
161
  }
161
162
 
163
+ // pragma MARK: std::function<void(const BackgroundPermissionResult& /* result */)>
164
+ Func_void_BackgroundPermissionResult create_Func_void_BackgroundPermissionResult(void* NON_NULL swiftClosureWrapper) noexcept {
165
+ auto swiftClosure = NitroGeolocation::Func_void_BackgroundPermissionResult::fromUnsafe(swiftClosureWrapper);
166
+ return [swiftClosure = std::move(swiftClosure)](const BackgroundPermissionResult& result) mutable -> void {
167
+ swiftClosure.call(result);
168
+ };
169
+ }
170
+
171
+ // pragma MARK: std::function<void(const std::optional<BackgroundLocationOptions>& /* result */)>
172
+ Func_void_std__optional_BackgroundLocationOptions_ create_Func_void_std__optional_BackgroundLocationOptions_(void* NON_NULL swiftClosureWrapper) noexcept {
173
+ auto swiftClosure = NitroGeolocation::Func_void_std__optional_BackgroundLocationOptions_::fromUnsafe(swiftClosureWrapper);
174
+ return [swiftClosure = std::move(swiftClosure)](const std::optional<BackgroundLocationOptions>& result) mutable -> void {
175
+ swiftClosure.call(result);
176
+ };
177
+ }
178
+
179
+ // pragma MARK: std::function<void(const BackgroundLocationStatus& /* result */)>
180
+ Func_void_BackgroundLocationStatus create_Func_void_BackgroundLocationStatus(void* NON_NULL swiftClosureWrapper) noexcept {
181
+ auto swiftClosure = NitroGeolocation::Func_void_BackgroundLocationStatus::fromUnsafe(swiftClosureWrapper);
182
+ return [swiftClosure = std::move(swiftClosure)](const BackgroundLocationStatus& result) mutable -> void {
183
+ swiftClosure.call(result);
184
+ };
185
+ }
186
+
187
+ // pragma MARK: std::function<void(const BackgroundEventEnvelope& /* event */)>
188
+ Func_void_BackgroundEventEnvelope create_Func_void_BackgroundEventEnvelope(void* NON_NULL swiftClosureWrapper) noexcept {
189
+ auto swiftClosure = NitroGeolocation::Func_void_BackgroundEventEnvelope::fromUnsafe(swiftClosureWrapper);
190
+ return [swiftClosure = std::move(swiftClosure)](const BackgroundEventEnvelope& event) mutable -> void {
191
+ swiftClosure.call(event);
192
+ };
193
+ }
194
+
195
+ // pragma MARK: std::function<void(const BackgroundLocation& /* location */)>
196
+ Func_void_BackgroundLocation create_Func_void_BackgroundLocation(void* NON_NULL swiftClosureWrapper) noexcept {
197
+ auto swiftClosure = NitroGeolocation::Func_void_BackgroundLocation::fromUnsafe(swiftClosureWrapper);
198
+ return [swiftClosure = std::move(swiftClosure)](const BackgroundLocation& location) mutable -> void {
199
+ swiftClosure.call(location);
200
+ };
201
+ }
202
+
203
+ // pragma MARK: std::function<void(const std::vector<StoredBackgroundLocation>& /* result */)>
204
+ Func_void_std__vector_StoredBackgroundLocation_ create_Func_void_std__vector_StoredBackgroundLocation_(void* NON_NULL swiftClosureWrapper) noexcept {
205
+ auto swiftClosure = NitroGeolocation::Func_void_std__vector_StoredBackgroundLocation_::fromUnsafe(swiftClosureWrapper);
206
+ return [swiftClosure = std::move(swiftClosure)](const std::vector<StoredBackgroundLocation>& result) mutable -> void {
207
+ swiftClosure.call(result);
208
+ };
209
+ }
210
+
211
+ // pragma MARK: std::function<void(const std::vector<StoredBackgroundEventEnvelope>& /* result */)>
212
+ Func_void_std__vector_StoredBackgroundEventEnvelope_ create_Func_void_std__vector_StoredBackgroundEventEnvelope_(void* NON_NULL swiftClosureWrapper) noexcept {
213
+ auto swiftClosure = NitroGeolocation::Func_void_std__vector_StoredBackgroundEventEnvelope_::fromUnsafe(swiftClosureWrapper);
214
+ return [swiftClosure = std::move(swiftClosure)](const std::vector<StoredBackgroundEventEnvelope>& result) mutable -> void {
215
+ swiftClosure.call(result);
216
+ };
217
+ }
218
+
219
+ // pragma MARK: std::function<void(const std::vector<GeofenceRegion>& /* result */)>
220
+ Func_void_std__vector_GeofenceRegion_ create_Func_void_std__vector_GeofenceRegion_(void* NON_NULL swiftClosureWrapper) noexcept {
221
+ auto swiftClosure = NitroGeolocation::Func_void_std__vector_GeofenceRegion_::fromUnsafe(swiftClosureWrapper);
222
+ return [swiftClosure = std::move(swiftClosure)](const std::vector<GeofenceRegion>& result) mutable -> void {
223
+ swiftClosure.call(result);
224
+ };
225
+ }
226
+
227
+ // pragma MARK: std::function<void(const BackgroundHttpSyncResult& /* result */)>
228
+ Func_void_BackgroundHttpSyncResult create_Func_void_BackgroundHttpSyncResult(void* NON_NULL swiftClosureWrapper) noexcept {
229
+ auto swiftClosure = NitroGeolocation::Func_void_BackgroundHttpSyncResult::fromUnsafe(swiftClosureWrapper);
230
+ return [swiftClosure = std::move(swiftClosure)](const BackgroundHttpSyncResult& result) mutable -> void {
231
+ swiftClosure.call(result);
232
+ };
233
+ }
234
+
235
+ // pragma MARK: std::shared_ptr<HybridNitroBackgroundLocationSpec>
236
+ std::shared_ptr<HybridNitroBackgroundLocationSpec> create_std__shared_ptr_HybridNitroBackgroundLocationSpec_(void* NON_NULL swiftUnsafePointer) noexcept {
237
+ NitroGeolocation::HybridNitroBackgroundLocationSpec_cxx swiftPart = NitroGeolocation::HybridNitroBackgroundLocationSpec_cxx::fromUnsafe(swiftUnsafePointer);
238
+ return std::make_shared<margelo::nitro::nitrogeolocation::HybridNitroBackgroundLocationSpecSwift>(swiftPart);
239
+ }
240
+ void* NON_NULL get_std__shared_ptr_HybridNitroBackgroundLocationSpec_(std__shared_ptr_HybridNitroBackgroundLocationSpec_ cppType) {
241
+ std::shared_ptr<margelo::nitro::nitrogeolocation::HybridNitroBackgroundLocationSpecSwift> swiftWrapper = std::dynamic_pointer_cast<margelo::nitro::nitrogeolocation::HybridNitroBackgroundLocationSpecSwift>(cppType);
242
+ #ifdef NITRO_DEBUG
243
+ if (swiftWrapper == nullptr) [[unlikely]] {
244
+ throw std::runtime_error("Class \"HybridNitroBackgroundLocationSpec\" is not implemented in Swift!");
245
+ }
246
+ #endif
247
+ NitroGeolocation::HybridNitroBackgroundLocationSpec_cxx& swiftPart = swiftWrapper->getSwiftPart();
248
+ return swiftPart.toUnsafe();
249
+ }
250
+
162
251
  } // namespace margelo::nitro::nitrogeolocation::bridge::swift