@josuelmm/capacitor-background-geolocation 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (207) hide show
  1. package/JosuelmmCapacitorBackgroundGeolocation.podspec +34 -0
  2. package/LICENSE +17 -0
  3. package/NOTICE.md +32 -0
  4. package/Package.swift +45 -0
  5. package/README.md +402 -0
  6. package/android/build.gradle +79 -0
  7. package/android/proguard-rules.pro +1 -0
  8. package/android/src/main/AndroidManifest.xml +83 -0
  9. package/android/src/main/java/com/evgenii/jsevaluator/HandlerWrapper.java +18 -0
  10. package/android/src/main/java/com/evgenii/jsevaluator/JavaScriptInterface.java +22 -0
  11. package/android/src/main/java/com/evgenii/jsevaluator/JsEvaluator.java +133 -0
  12. package/android/src/main/java/com/evgenii/jsevaluator/JsFunctionCallFormatter.java +37 -0
  13. package/android/src/main/java/com/evgenii/jsevaluator/WebViewWrapper.java +71 -0
  14. package/android/src/main/java/com/evgenii/jsevaluator/interfaces/CallJavaResultInterface.java +8 -0
  15. package/android/src/main/java/com/evgenii/jsevaluator/interfaces/HandlerWrapperInterface.java +5 -0
  16. package/android/src/main/java/com/evgenii/jsevaluator/interfaces/JsCallback.java +10 -0
  17. package/android/src/main/java/com/evgenii/jsevaluator/interfaces/JsEvaluatorInterface.java +18 -0
  18. package/android/src/main/java/com/evgenii/jsevaluator/interfaces/WebViewWrapperInterface.java +14 -0
  19. package/android/src/main/java/com/josuelmm/capacitor/backgroundgeolocation/BackgroundGeolocationPlugin.java +898 -0
  20. package/android/src/main/java/com/josuelmm/capacitor/backgroundgeolocation/ConfigMapper.java +303 -0
  21. package/android/src/main/java/com/josuelmm/capacitor/backgroundgeolocation/HeadlessTaskRegistry.java +34 -0
  22. package/android/src/main/java/com/josuelmm/capacitor/backgroundgeolocation/JsEvaluatorTaskRunner.java +63 -0
  23. package/android/src/main/java/com/marianhello/bgloc/BackgroundGeolocationFacade.java +699 -0
  24. package/android/src/main/java/com/marianhello/bgloc/BootCompletedReceiver.java +103 -0
  25. package/android/src/main/java/com/marianhello/bgloc/Config.java +1155 -0
  26. package/android/src/main/java/com/marianhello/bgloc/ConnectivityListener.java +5 -0
  27. package/android/src/main/java/com/marianhello/bgloc/HttpPostService.java +362 -0
  28. package/android/src/main/java/com/marianhello/bgloc/LocationManager.java +138 -0
  29. package/android/src/main/java/com/marianhello/bgloc/PluginDelegate.java +45 -0
  30. package/android/src/main/java/com/marianhello/bgloc/PluginException.java +38 -0
  31. package/android/src/main/java/com/marianhello/bgloc/PostLocationTask.java +238 -0
  32. package/android/src/main/java/com/marianhello/bgloc/ResourceResolver.java +55 -0
  33. package/android/src/main/java/com/marianhello/bgloc/data/AbstractLocationTemplate.java +69 -0
  34. package/android/src/main/java/com/marianhello/bgloc/data/ArrayListLocationTemplate.java +88 -0
  35. package/android/src/main/java/com/marianhello/bgloc/data/BackgroundActivity.java +108 -0
  36. package/android/src/main/java/com/marianhello/bgloc/data/BackgroundLocation.java +1088 -0
  37. package/android/src/main/java/com/marianhello/bgloc/data/ConfigJsonMapper.java +211 -0
  38. package/android/src/main/java/com/marianhello/bgloc/data/ConfigurationDAO.java +13 -0
  39. package/android/src/main/java/com/marianhello/bgloc/data/DAOFactory.java +17 -0
  40. package/android/src/main/java/com/marianhello/bgloc/data/HashMapLocationTemplate.java +82 -0
  41. package/android/src/main/java/com/marianhello/bgloc/data/LocationDAO.java +27 -0
  42. package/android/src/main/java/com/marianhello/bgloc/data/LocationTemplate.java +12 -0
  43. package/android/src/main/java/com/marianhello/bgloc/data/LocationTemplateFactory.java +71 -0
  44. package/android/src/main/java/com/marianhello/bgloc/data/LocationTransform.java +19 -0
  45. package/android/src/main/java/com/marianhello/bgloc/data/SessionLocationDAO.java +18 -0
  46. package/android/src/main/java/com/marianhello/bgloc/data/provider/ContentProviderLocationDAO.java +406 -0
  47. package/android/src/main/java/com/marianhello/bgloc/data/provider/LocationContentProvider.java +321 -0
  48. package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteConfigurationContract.java +94 -0
  49. package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteConfigurationDAO.java +227 -0
  50. package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteLocationContract.java +122 -0
  51. package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteLocationDAO.java +550 -0
  52. package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteOpenHelper.java +189 -0
  53. package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteSessionContract.java +74 -0
  54. package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteSessionLocationDAO.java +169 -0
  55. package/android/src/main/java/com/marianhello/bgloc/driving/DrivingEventsDetector.java +265 -0
  56. package/android/src/main/java/com/marianhello/bgloc/headless/AbstractTaskRunner.java +15 -0
  57. package/android/src/main/java/com/marianhello/bgloc/headless/ActivityTask.java +48 -0
  58. package/android/src/main/java/com/marianhello/bgloc/headless/JsCallback.java +10 -0
  59. package/android/src/main/java/com/marianhello/bgloc/headless/LocationTask.java +60 -0
  60. package/android/src/main/java/com/marianhello/bgloc/headless/StationaryTask.java +25 -0
  61. package/android/src/main/java/com/marianhello/bgloc/headless/Task.java +8 -0
  62. package/android/src/main/java/com/marianhello/bgloc/headless/TaskRunner.java +5 -0
  63. package/android/src/main/java/com/marianhello/bgloc/headless/TaskRunnerFactory.java +8 -0
  64. package/android/src/main/java/com/marianhello/bgloc/http/UrlTemplateResolver.java +115 -0
  65. package/android/src/main/java/com/marianhello/bgloc/oem/BatteryOemHelper.java +214 -0
  66. package/android/src/main/java/com/marianhello/bgloc/provider/AbstractLocationProvider.java +218 -0
  67. package/android/src/main/java/com/marianhello/bgloc/provider/ActivityRecognitionLocationProvider.java +385 -0
  68. package/android/src/main/java/com/marianhello/bgloc/provider/DistanceFilterLocationProvider.java +685 -0
  69. package/android/src/main/java/com/marianhello/bgloc/provider/LocationProvider.java +32 -0
  70. package/android/src/main/java/com/marianhello/bgloc/provider/LocationProviderFactory.java +47 -0
  71. package/android/src/main/java/com/marianhello/bgloc/provider/ProviderDelegate.java +12 -0
  72. package/android/src/main/java/com/marianhello/bgloc/provider/RawLocationProvider.java +175 -0
  73. package/android/src/main/java/com/marianhello/bgloc/sensor/SensorFusionDetector.java +199 -0
  74. package/android/src/main/java/com/marianhello/bgloc/service/LocationService.java +16 -0
  75. package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceImpl.java +1531 -0
  76. package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceInfo.java +6 -0
  77. package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceInfoImpl.java +41 -0
  78. package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceIntentBuilder.java +203 -0
  79. package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceProxy.java +156 -0
  80. package/android/src/main/java/com/marianhello/bgloc/sync/AccountHelper.java +39 -0
  81. package/android/src/main/java/com/marianhello/bgloc/sync/Authenticator.java +68 -0
  82. package/android/src/main/java/com/marianhello/bgloc/sync/AuthenticatorService.java +28 -0
  83. package/android/src/main/java/com/marianhello/bgloc/sync/BatchManager.java +311 -0
  84. package/android/src/main/java/com/marianhello/bgloc/sync/NotificationHelper.java +148 -0
  85. package/android/src/main/java/com/marianhello/bgloc/sync/SyncAdapter.java +301 -0
  86. package/android/src/main/java/com/marianhello/bgloc/sync/SyncService.java +68 -0
  87. package/android/src/main/java/com/marianhello/logging/DBLogReader.java +208 -0
  88. package/android/src/main/java/com/marianhello/logging/LogEntry.java +99 -0
  89. package/android/src/main/java/com/marianhello/logging/LoggerManager.java +70 -0
  90. package/android/src/main/java/com/marianhello/logging/UncaughtExceptionLogger.java +36 -0
  91. package/android/src/main/java/com/marianhello/utils/CloneHelper.java +22 -0
  92. package/android/src/main/java/com/marianhello/utils/Convert.java +56 -0
  93. package/android/src/main/java/com/marianhello/utils/TextUtils.java +72 -0
  94. package/android/src/main/java/com/marianhello/utils/ToneGenerator.java +68 -0
  95. package/android/src/main/java/org/apache/commons/io/Charsets.java +153 -0
  96. package/android/src/main/java/org/apache/commons/io/input/ReversedLinesFileReader.java +344 -0
  97. package/android/src/main/java/org/chromium/content/browser/ThreadUtils.java +134 -0
  98. package/android/src/main/java/ru/andremoniy/sqlbuilder/SqlExpression.java +398 -0
  99. package/android/src/main/java/ru/andremoniy/sqlbuilder/SqlSelectStatement.java +671 -0
  100. package/android/src/main/java/ru/andremoniy/sqlbuilder/SqlStatement.java +29 -0
  101. package/android/src/main/java/ru/andremoniy/utils/TextUtils.java +61 -0
  102. package/android/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
  103. package/android/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
  104. package/android/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
  105. package/android/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
  106. package/android/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
  107. package/android/src/main/res/values/strings.xml +15 -0
  108. package/android/src/main/res/xml/authenticator.xml +7 -0
  109. package/android/src/main/res/xml/syncadapter.xml +9 -0
  110. package/dist/esm/definitions.d.ts +1052 -0
  111. package/dist/esm/definitions.js +142 -0
  112. package/dist/esm/definitions.js.map +1 -0
  113. package/dist/esm/index.d.ts +8 -0
  114. package/dist/esm/index.js +23 -0
  115. package/dist/esm/index.js.map +1 -0
  116. package/dist/esm/web.d.ts +92 -0
  117. package/dist/esm/web.js +242 -0
  118. package/dist/esm/web.js.map +1 -0
  119. package/dist/plugin.cjs.js +415 -0
  120. package/dist/plugin.cjs.js.map +1 -0
  121. package/dist/plugin.js +418 -0
  122. package/dist/plugin.js.map +1 -0
  123. package/ios/Sources/BackgroundGeolocationPlugin/BackgroundGeolocationPlugin-Bridging-Header.h +18 -0
  124. package/ios/Sources/BackgroundGeolocationPlugin/BackgroundGeolocationPlugin.m +52 -0
  125. package/ios/Sources/BackgroundGeolocationPlugin/BackgroundGeolocationPlugin.swift +750 -0
  126. package/ios/Tests/BackgroundGeolocationPluginTests/BackgroundGeolocationPluginTests.swift +12 -0
  127. package/ios/common/BackgroundGeolocation/CocoaLumberjack.h +1945 -0
  128. package/ios/common/BackgroundGeolocation/CocoaLumberjack.m +5255 -0
  129. package/ios/common/BackgroundGeolocation/FMDB.h +2357 -0
  130. package/ios/common/BackgroundGeolocation/FMDB.m +2672 -0
  131. package/ios/common/BackgroundGeolocation/FMDBLogger.h +42 -0
  132. package/ios/common/BackgroundGeolocation/FMDBLogger.m +264 -0
  133. package/ios/common/BackgroundGeolocation/INTULocationManager/INTUHeadingRequest.h +41 -0
  134. package/ios/common/BackgroundGeolocation/INTULocationManager/INTUHeadingRequest.m +68 -0
  135. package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationManager+Internal.h +33 -0
  136. package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationManager.h +178 -0
  137. package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationManager.m +1025 -0
  138. package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationRequest.h +103 -0
  139. package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationRequest.m +238 -0
  140. package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationRequestDefines.h +163 -0
  141. package/ios/common/BackgroundGeolocation/INTULocationManager/INTURequestIDGenerator.h +39 -0
  142. package/ios/common/BackgroundGeolocation/INTULocationManager/INTURequestIDGenerator.m +37 -0
  143. package/ios/common/BackgroundGeolocation/MAURAbstractLocationProvider.h +51 -0
  144. package/ios/common/BackgroundGeolocation/MAURAbstractLocationProvider.m +53 -0
  145. package/ios/common/BackgroundGeolocation/MAURActivity.h +23 -0
  146. package/ios/common/BackgroundGeolocation/MAURActivity.m +52 -0
  147. package/ios/common/BackgroundGeolocation/MAURActivityLocationProvider.h +18 -0
  148. package/ios/common/BackgroundGeolocation/MAURActivityLocationProvider.m +340 -0
  149. package/ios/common/BackgroundGeolocation/MAURBackgroundGeolocationFacade.h +88 -0
  150. package/ios/common/BackgroundGeolocation/MAURBackgroundGeolocationFacade.m +1193 -0
  151. package/ios/common/BackgroundGeolocation/MAURBackgroundSync.h +46 -0
  152. package/ios/common/BackgroundGeolocation/MAURBackgroundSync.m +283 -0
  153. package/ios/common/BackgroundGeolocation/MAURBackgroundTaskManager.h +25 -0
  154. package/ios/common/BackgroundGeolocation/MAURBackgroundTaskManager.m +105 -0
  155. package/ios/common/BackgroundGeolocation/MAURConfig.h +99 -0
  156. package/ios/common/BackgroundGeolocation/MAURConfig.m +636 -0
  157. package/ios/common/BackgroundGeolocation/MAURConfigurationContract.h +53 -0
  158. package/ios/common/BackgroundGeolocation/MAURConfigurationContract.m +54 -0
  159. package/ios/common/BackgroundGeolocation/MAURDistanceFilterLocationProvider.h +20 -0
  160. package/ios/common/BackgroundGeolocation/MAURDistanceFilterLocationProvider.m +550 -0
  161. package/ios/common/BackgroundGeolocation/MAURGeolocationOpenHelper.h +17 -0
  162. package/ios/common/BackgroundGeolocation/MAURGeolocationOpenHelper.m +124 -0
  163. package/ios/common/BackgroundGeolocation/MAURLocation.h +73 -0
  164. package/ios/common/BackgroundGeolocation/MAURLocation.m +392 -0
  165. package/ios/common/BackgroundGeolocation/MAURLocationContract.h +38 -0
  166. package/ios/common/BackgroundGeolocation/MAURLocationContract.m +39 -0
  167. package/ios/common/BackgroundGeolocation/MAURLocationManager.h +53 -0
  168. package/ios/common/BackgroundGeolocation/MAURLocationManager.m +305 -0
  169. package/ios/common/BackgroundGeolocation/MAURLogReader.h +26 -0
  170. package/ios/common/BackgroundGeolocation/MAURLogReader.m +122 -0
  171. package/ios/common/BackgroundGeolocation/MAURLogging.h +19 -0
  172. package/ios/common/BackgroundGeolocation/MAURPostLocationTask.h +53 -0
  173. package/ios/common/BackgroundGeolocation/MAURPostLocationTask.m +367 -0
  174. package/ios/common/BackgroundGeolocation/MAURProviderDelegate.h +52 -0
  175. package/ios/common/BackgroundGeolocation/MAURRawLocationProvider.h +18 -0
  176. package/ios/common/BackgroundGeolocation/MAURRawLocationProvider.m +138 -0
  177. package/ios/common/BackgroundGeolocation/MAURSQLiteConfigurationDAO.h +26 -0
  178. package/ios/common/BackgroundGeolocation/MAURSQLiteConfigurationDAO.m +335 -0
  179. package/ios/common/BackgroundGeolocation/MAURSQLiteHelper.h +57 -0
  180. package/ios/common/BackgroundGeolocation/MAURSQLiteHelper.m +93 -0
  181. package/ios/common/BackgroundGeolocation/MAURSQLiteLocationDAO.h +52 -0
  182. package/ios/common/BackgroundGeolocation/MAURSQLiteLocationDAO.m +520 -0
  183. package/ios/common/BackgroundGeolocation/MAURSQLiteOpenHelper.h +32 -0
  184. package/ios/common/BackgroundGeolocation/MAURSQLiteOpenHelper.m +276 -0
  185. package/ios/common/BackgroundGeolocation/MAURSensorFusionDetector.h +41 -0
  186. package/ios/common/BackgroundGeolocation/MAURSensorFusionDetector.m +137 -0
  187. package/ios/common/BackgroundGeolocation/MAURSessionLocationContract.h +29 -0
  188. package/ios/common/BackgroundGeolocation/MAURSessionLocationContract.m +31 -0
  189. package/ios/common/BackgroundGeolocation/MAURSessionLocationDAO.h +25 -0
  190. package/ios/common/BackgroundGeolocation/MAURSessionLocationDAO.m +153 -0
  191. package/ios/common/BackgroundGeolocation/MAURUncaughtExceptionLogger.h +20 -0
  192. package/ios/common/BackgroundGeolocation/MAURUncaughtExceptionLogger.m +62 -0
  193. package/ios/common/BackgroundGeolocation/MAURUrlTemplateResolver.h +31 -0
  194. package/ios/common/BackgroundGeolocation/MAURUrlTemplateResolver.m +107 -0
  195. package/ios/common/BackgroundGeolocation/Reachability.h +102 -0
  196. package/ios/common/BackgroundGeolocation/Reachability.m +475 -0
  197. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/README.md +170 -0
  198. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/ext/NSString+ZIMString.h +55 -0
  199. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/ext/NSString+ZIMString.m +47 -0
  200. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlDataManipulationCommand.h +27 -0
  201. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlExpression.h +250 -0
  202. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlExpression.m +259 -0
  203. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlSelectStatement.h +360 -0
  204. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlSelectStatement.m +427 -0
  205. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlStatement.h +37 -0
  206. package/ios/common/BackgroundGeolocation/module.modulemap +16 -0
  207. package/package.json +82 -0
package/dist/plugin.js ADDED
@@ -0,0 +1,418 @@
1
+ var capacitorBackgroundGeolocation = (function (exports, core) {
2
+ 'use strict';
3
+
4
+ // SPDX-License-Identifier: Apache-2.0
5
+ // Copyright (c) 2026 JosueLMM
6
+ //
7
+ // Capacitor plugin definitions for @josuelmm/capacitor-background-geolocation.
8
+ // Mirrors @josuelmm/cordova-background-geolocation's www/BackgroundGeolocation.d.ts
9
+ // 1:1 for v1.0.0 parity. Cordova success/fail callbacks are collapsed into
10
+ // Promises; `on(eventName, cb)` becomes Capacitor's `addListener` overloads.
11
+ /**
12
+ * Numeric mapping of {@link LocationProvider} matching the Cordova plugin.
13
+ *
14
+ * @since 1.0.0
15
+ */
16
+ const LocationProviderValue = {
17
+ DISTANCE_FILTER: 0,
18
+ ACTIVITY_PROVIDER: 1,
19
+ RAW_PROVIDER: 2,
20
+ };
21
+ /**
22
+ * Meters mapping of {@link Accuracy} (matches the Cordova plugin's `AccuracyLevel`).
23
+ *
24
+ * @since 1.0.0
25
+ */
26
+ const AccuracyValue = {
27
+ HIGH: 0,
28
+ MEDIUM: 100,
29
+ LOW: 1000,
30
+ PASSIVE: 10000,
31
+ };
32
+ /**
33
+ * Service authorization state, mirroring the Cordova plugin constants.
34
+ *
35
+ * @since 1.0.0
36
+ */
37
+ exports.AuthorizationStatus = void 0;
38
+ (function (AuthorizationStatus) {
39
+ AuthorizationStatus[AuthorizationStatus["NOT_AUTHORIZED"] = 0] = "NOT_AUTHORIZED";
40
+ AuthorizationStatus[AuthorizationStatus["AUTHORIZED"] = 1] = "AUTHORIZED";
41
+ AuthorizationStatus[AuthorizationStatus["AUTHORIZED_FOREGROUND"] = 2] = "AUTHORIZED_FOREGROUND";
42
+ })(exports.AuthorizationStatus || (exports.AuthorizationStatus = {}));
43
+ // ---------------------------------------------------------------------------
44
+ // @awesome-cordova-plugins compatibility re-exports
45
+ // ---------------------------------------------------------------------------
46
+ /** Event name strings (compatibility with `@awesome-cordova-plugins` style). @since 1.0.0 */
47
+ exports.BackgroundGeolocationEvents = void 0;
48
+ (function (BackgroundGeolocationEvents) {
49
+ BackgroundGeolocationEvents["http_authorization"] = "http_authorization";
50
+ BackgroundGeolocationEvents["abort_requested"] = "abort_requested";
51
+ BackgroundGeolocationEvents["background"] = "background";
52
+ BackgroundGeolocationEvents["foreground"] = "foreground";
53
+ BackgroundGeolocationEvents["authorization"] = "authorization";
54
+ BackgroundGeolocationEvents["error"] = "error";
55
+ BackgroundGeolocationEvents["stop"] = "stop";
56
+ BackgroundGeolocationEvents["start"] = "start";
57
+ BackgroundGeolocationEvents["activity"] = "activity";
58
+ BackgroundGeolocationEvents["stationary"] = "stationary";
59
+ BackgroundGeolocationEvents["location"] = "location";
60
+ BackgroundGeolocationEvents["heartbeat"] = "heartbeat";
61
+ BackgroundGeolocationEvents["syncStart"] = "syncStart";
62
+ BackgroundGeolocationEvents["syncProgress"] = "syncProgress";
63
+ BackgroundGeolocationEvents["syncSuccess"] = "syncSuccess";
64
+ BackgroundGeolocationEvents["syncError"] = "syncError";
65
+ BackgroundGeolocationEvents["tripStart"] = "tripStart";
66
+ BackgroundGeolocationEvents["tripEnd"] = "tripEnd";
67
+ BackgroundGeolocationEvents["moving"] = "moving";
68
+ BackgroundGeolocationEvents["stopped"] = "stopped";
69
+ BackgroundGeolocationEvents["speeding"] = "speeding";
70
+ BackgroundGeolocationEvents["providerChange"] = "providerChange";
71
+ BackgroundGeolocationEvents["sos"] = "sos";
72
+ BackgroundGeolocationEvents["hardBrake"] = "hardBrake";
73
+ BackgroundGeolocationEvents["rapidAcceleration"] = "rapidAcceleration";
74
+ BackgroundGeolocationEvents["sharpTurn"] = "sharpTurn";
75
+ BackgroundGeolocationEvents["possibleCrash"] = "possibleCrash";
76
+ BackgroundGeolocationEvents["phoneUsageWhileDriving"] = "phoneUsageWhileDriving";
77
+ })(exports.BackgroundGeolocationEvents || (exports.BackgroundGeolocationEvents = {}));
78
+ /** Location error codes. @since 1.0.0 */
79
+ exports.BackgroundGeolocationLocationCode = void 0;
80
+ (function (BackgroundGeolocationLocationCode) {
81
+ BackgroundGeolocationLocationCode[BackgroundGeolocationLocationCode["PERMISSION_DENIED"] = 1] = "PERMISSION_DENIED";
82
+ BackgroundGeolocationLocationCode[BackgroundGeolocationLocationCode["LOCATION_UNAVAILABLE"] = 2] = "LOCATION_UNAVAILABLE";
83
+ BackgroundGeolocationLocationCode[BackgroundGeolocationLocationCode["TIMEOUT"] = 3] = "TIMEOUT";
84
+ })(exports.BackgroundGeolocationLocationCode || (exports.BackgroundGeolocationLocationCode = {}));
85
+ /** Native provider strings. @since 1.0.0 */
86
+ exports.BackgroundGeolocationNativeProvider = void 0;
87
+ (function (BackgroundGeolocationNativeProvider) {
88
+ BackgroundGeolocationNativeProvider["gps"] = "gps";
89
+ BackgroundGeolocationNativeProvider["network"] = "network";
90
+ BackgroundGeolocationNativeProvider["passive"] = "passive";
91
+ BackgroundGeolocationNativeProvider["fused"] = "fused";
92
+ })(exports.BackgroundGeolocationNativeProvider || (exports.BackgroundGeolocationNativeProvider = {}));
93
+ /** Location provider IDs. @since 1.0.0 */
94
+ exports.BackgroundGeolocationLocationProvider = void 0;
95
+ (function (BackgroundGeolocationLocationProvider) {
96
+ BackgroundGeolocationLocationProvider[BackgroundGeolocationLocationProvider["DISTANCE_FILTER_PROVIDER"] = 0] = "DISTANCE_FILTER_PROVIDER";
97
+ BackgroundGeolocationLocationProvider[BackgroundGeolocationLocationProvider["ACTIVITY_PROVIDER"] = 1] = "ACTIVITY_PROVIDER";
98
+ BackgroundGeolocationLocationProvider[BackgroundGeolocationLocationProvider["RAW_PROVIDER"] = 2] = "RAW_PROVIDER";
99
+ })(exports.BackgroundGeolocationLocationProvider || (exports.BackgroundGeolocationLocationProvider = {}));
100
+ /** Authorization status. @since 1.0.0 */
101
+ exports.BackgroundGeolocationAuthorizationStatus = void 0;
102
+ (function (BackgroundGeolocationAuthorizationStatus) {
103
+ BackgroundGeolocationAuthorizationStatus[BackgroundGeolocationAuthorizationStatus["NOT_AUTHORIZED"] = 0] = "NOT_AUTHORIZED";
104
+ BackgroundGeolocationAuthorizationStatus[BackgroundGeolocationAuthorizationStatus["AUTHORIZED"] = 1] = "AUTHORIZED";
105
+ BackgroundGeolocationAuthorizationStatus[BackgroundGeolocationAuthorizationStatus["AUTHORIZED_FOREGROUND"] = 2] = "AUTHORIZED_FOREGROUND";
106
+ })(exports.BackgroundGeolocationAuthorizationStatus || (exports.BackgroundGeolocationAuthorizationStatus = {}));
107
+ /** Log levels. @since 1.0.0 */
108
+ exports.BackgroundGeolocationLogLevel = void 0;
109
+ (function (BackgroundGeolocationLogLevel) {
110
+ BackgroundGeolocationLogLevel["TRACE"] = "TRACE";
111
+ BackgroundGeolocationLogLevel["DEBUG"] = "DEBUG";
112
+ BackgroundGeolocationLogLevel["INFO"] = "INFO";
113
+ BackgroundGeolocationLogLevel["WARN"] = "WARN";
114
+ BackgroundGeolocationLogLevel["ERROR"] = "ERROR";
115
+ })(exports.BackgroundGeolocationLogLevel || (exports.BackgroundGeolocationLogLevel = {}));
116
+ /** Provider enum (compatibility with `@awesome-cordova-plugins` style). @since 1.0.0 */
117
+ exports.BackgroundGeolocationProvider = void 0;
118
+ (function (BackgroundGeolocationProvider) {
119
+ BackgroundGeolocationProvider[BackgroundGeolocationProvider["ANDROID_DISTANCE_FILTER_PROVIDER"] = 0] = "ANDROID_DISTANCE_FILTER_PROVIDER";
120
+ BackgroundGeolocationProvider[BackgroundGeolocationProvider["ANDROID_ACTIVITY_PROVIDER"] = 1] = "ANDROID_ACTIVITY_PROVIDER";
121
+ BackgroundGeolocationProvider[BackgroundGeolocationProvider["RAW_PROVIDER"] = 2] = "RAW_PROVIDER";
122
+ })(exports.BackgroundGeolocationProvider || (exports.BackgroundGeolocationProvider = {}));
123
+ /** Desired accuracy in meters. @since 1.0.0 */
124
+ exports.BackgroundGeolocationAccuracy = void 0;
125
+ (function (BackgroundGeolocationAccuracy) {
126
+ BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy["HIGH"] = 0] = "HIGH";
127
+ BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy["MEDIUM"] = 100] = "MEDIUM";
128
+ BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy["LOW"] = 1000] = "LOW";
129
+ BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy["PASSIVE"] = 10000] = "PASSIVE";
130
+ })(exports.BackgroundGeolocationAccuracy || (exports.BackgroundGeolocationAccuracy = {}));
131
+ /** Mode for `switchMode`. @since 1.0.0 */
132
+ exports.BackgroundGeolocationMode = void 0;
133
+ (function (BackgroundGeolocationMode) {
134
+ BackgroundGeolocationMode[BackgroundGeolocationMode["BACKGROUND"] = 0] = "BACKGROUND";
135
+ BackgroundGeolocationMode[BackgroundGeolocationMode["FOREGROUND"] = 1] = "FOREGROUND";
136
+ })(exports.BackgroundGeolocationMode || (exports.BackgroundGeolocationMode = {}));
137
+ /** iOS activity type. @since 1.0.0 */
138
+ exports.BackgroundGeolocationIOSActivity = void 0;
139
+ (function (BackgroundGeolocationIOSActivity) {
140
+ BackgroundGeolocationIOSActivity["AutomotiveNavigation"] = "AutomotiveNavigation";
141
+ BackgroundGeolocationIOSActivity["OtherNavigation"] = "OtherNavigation";
142
+ BackgroundGeolocationIOSActivity["Fitness"] = "Fitness";
143
+ BackgroundGeolocationIOSActivity["Other"] = "Other";
144
+ })(exports.BackgroundGeolocationIOSActivity || (exports.BackgroundGeolocationIOSActivity = {}));
145
+
146
+ // SPDX-License-Identifier: Apache-2.0
147
+ // Copyright (c) 2026 JosueLMM
148
+ const NativeBackgroundGeolocation = core.registerPlugin('BackgroundGeolocation', {
149
+ web: () => Promise.resolve().then(function () { return web; }).then((m) => new m.BackgroundGeolocationWeb()),
150
+ });
151
+ /**
152
+ * Public plugin. `headlessTask(fn)` serialises the callback before sending it
153
+ * to the native side; every other method is a 1:1 passthrough.
154
+ */
155
+ const BackgroundGeolocation = new Proxy(NativeBackgroundGeolocation, {
156
+ get(target, prop, receiver) {
157
+ if (prop === 'headlessTask') {
158
+ return (task) => NativeBackgroundGeolocation.registerHeadlessTask({
159
+ task: task.toString(),
160
+ });
161
+ }
162
+ return Reflect.get(target, prop, receiver);
163
+ },
164
+ });
165
+
166
+ // SPDX-License-Identifier: Apache-2.0
167
+ // Copyright (c) 2026 JosueLMM
168
+ //
169
+ // Browser fallback for @josuelmm/capacitor-background-geolocation.
170
+ // Uses navigator.geolocation. Real background tracking is not possible on the
171
+ // web platform — the service runs only while the page is alive.
172
+ const NOT_AVAILABLE = 'Not available on web.';
173
+ class BackgroundGeolocationWeb extends core.WebPlugin {
174
+ constructor() {
175
+ super(...arguments);
176
+ this.watchId = null;
177
+ this.config = {};
178
+ this.lastLocation = null;
179
+ }
180
+ // ---------------- Tracking control ----------------
181
+ async configure(options) {
182
+ this.config = Object.assign(Object.assign({}, this.config), options);
183
+ }
184
+ async start() {
185
+ if (!('geolocation' in navigator)) {
186
+ throw this.unavailable('Geolocation API is not available in this browser.');
187
+ }
188
+ if (this.watchId !== null) {
189
+ return;
190
+ }
191
+ this.watchId = navigator.geolocation.watchPosition((pos) => {
192
+ const loc = this.toLocation(pos);
193
+ this.lastLocation = loc;
194
+ this.notifyListeners('location', loc);
195
+ }, (err) => {
196
+ this.notifyListeners('error', this.toError(err));
197
+ }, {
198
+ enableHighAccuracy: this.config.desiredAccuracy !== 'LOW',
199
+ maximumAge: 0,
200
+ timeout: 30000,
201
+ });
202
+ this.notifyListeners('start', {});
203
+ }
204
+ async stop() {
205
+ if (this.watchId !== null) {
206
+ navigator.geolocation.clearWatch(this.watchId);
207
+ this.watchId = null;
208
+ this.notifyListeners('stop', {});
209
+ }
210
+ }
211
+ async switchMode(_options) {
212
+ throw this.unimplemented(NOT_AVAILABLE);
213
+ }
214
+ async checkStatus() {
215
+ return {
216
+ isRunning: this.watchId !== null,
217
+ locationServicesEnabled: 'geolocation' in navigator,
218
+ authorization: exports.AuthorizationStatus.AUTHORIZED_FOREGROUND,
219
+ };
220
+ }
221
+ // ---------------- Locations ----------------
222
+ getCurrentLocation(options) {
223
+ if (!('geolocation' in navigator)) {
224
+ throw this.unavailable('Geolocation API is not available in this browser.');
225
+ }
226
+ return new Promise((resolve, reject) => {
227
+ var _a, _b, _c;
228
+ navigator.geolocation.getCurrentPosition((pos) => resolve(this.toLocation(pos)), (err) => reject(this.toError(err)), {
229
+ enableHighAccuracy: (_a = options === null || options === void 0 ? void 0 : options.enableHighAccuracy) !== null && _a !== void 0 ? _a : true,
230
+ maximumAge: (_b = options === null || options === void 0 ? void 0 : options.maximumAge) !== null && _b !== void 0 ? _b : 0,
231
+ timeout: (_c = options === null || options === void 0 ? void 0 : options.timeout) !== null && _c !== void 0 ? _c : 30000,
232
+ });
233
+ });
234
+ }
235
+ async getStationaryLocation() {
236
+ return null;
237
+ }
238
+ async getLocations() {
239
+ return { locations: [] };
240
+ }
241
+ async getValidLocations() {
242
+ return { locations: [] };
243
+ }
244
+ async getValidLocationsAndDelete() {
245
+ return { locations: [] };
246
+ }
247
+ async deleteLocation(_options) {
248
+ throw this.unimplemented(NOT_AVAILABLE);
249
+ }
250
+ async deleteAllLocations() {
251
+ throw this.unimplemented(NOT_AVAILABLE);
252
+ }
253
+ // ---------------- Sync queue ----------------
254
+ async forceSync() {
255
+ throw this.unimplemented(NOT_AVAILABLE);
256
+ }
257
+ async clearSync() {
258
+ throw this.unimplemented(NOT_AVAILABLE);
259
+ }
260
+ async getPendingSyncCount() {
261
+ return { count: 0 };
262
+ }
263
+ // ---------------- Sessions ----------------
264
+ async startSession() {
265
+ throw this.unimplemented(NOT_AVAILABLE);
266
+ }
267
+ async getSessionLocations() {
268
+ return { locations: [] };
269
+ }
270
+ async clearSession() {
271
+ throw this.unimplemented(NOT_AVAILABLE);
272
+ }
273
+ async getSessionLocationsCount() {
274
+ return { count: 0 };
275
+ }
276
+ // ---------------- Diagnostics & OEMs ----------------
277
+ async getDiagnostics() {
278
+ var _a, _b;
279
+ return {
280
+ isRunning: this.watchId !== null,
281
+ locationServicesEnabled: 'geolocation' in navigator,
282
+ lastLocationAt: (_b = (_a = this.lastLocation) === null || _a === void 0 ? void 0 : _a.time) !== null && _b !== void 0 ? _b : null,
283
+ manufacturer: 'web',
284
+ };
285
+ }
286
+ async isIgnoringBatteryOptimizations() {
287
+ return { whitelisted: true };
288
+ }
289
+ async requestIgnoreBatteryOptimizations() {
290
+ return { whitelisted: true };
291
+ }
292
+ async openBatterySettings() {
293
+ /* no-op */
294
+ }
295
+ async openAutoStartSettings() {
296
+ return { opened: false, manufacturer: 'web', screen: '' };
297
+ }
298
+ async getManufacturerHelp() {
299
+ return { manufacturer: 'web', steps: [] };
300
+ }
301
+ async getPluginVersion() {
302
+ return { version: '1.0.0' };
303
+ }
304
+ // ---------------- Permissions ----------------
305
+ async checkPermissions() {
306
+ const perms = navigator
307
+ .permissions;
308
+ if (perms === null || perms === void 0 ? void 0 : perms.query) {
309
+ try {
310
+ const result = await perms.query({ name: 'geolocation' });
311
+ return { location: result.state };
312
+ }
313
+ catch (_a) {
314
+ /* fall through to probe */
315
+ }
316
+ }
317
+ return { location: 'prompt' };
318
+ }
319
+ async requestPermissions() {
320
+ if (!('geolocation' in navigator)) {
321
+ return { location: 'denied' };
322
+ }
323
+ return new Promise((resolve) => {
324
+ navigator.geolocation.getCurrentPosition(() => resolve({ location: 'granted' }), (err) => {
325
+ resolve({
326
+ location: err.code === err.PERMISSION_DENIED ? 'denied' : 'prompt',
327
+ });
328
+ }, { enableHighAccuracy: false, maximumAge: 60000, timeout: 5000 });
329
+ });
330
+ }
331
+ async requestBackgroundLocationPermission() {
332
+ return { granted: true, notRequired: true };
333
+ }
334
+ async requestActivityRecognitionPermission() {
335
+ return { granted: true, notRequired: true };
336
+ }
337
+ async requestNotificationPermission() {
338
+ if (typeof Notification === 'undefined') {
339
+ return { granted: true, notRequired: true };
340
+ }
341
+ if (Notification.permission === 'granted') {
342
+ return { granted: true };
343
+ }
344
+ try {
345
+ const result = await Notification.requestPermission();
346
+ return result === 'granted'
347
+ ? { granted: true }
348
+ : { granted: false, denied: ['notifications'] };
349
+ }
350
+ catch (_a) {
351
+ return { granted: false, denied: ['notifications'] };
352
+ }
353
+ }
354
+ async showAppSettings() {
355
+ throw this.unimplemented(NOT_AVAILABLE);
356
+ }
357
+ async openSettings() {
358
+ throw this.unimplemented(NOT_AVAILABLE);
359
+ }
360
+ async showLocationSettings() {
361
+ throw this.unimplemented(NOT_AVAILABLE);
362
+ }
363
+ // ---------------- Tasks ----------------
364
+ async startTask() {
365
+ return { taskKey: 0 };
366
+ }
367
+ async endTask(_options) {
368
+ /* no-op */
369
+ }
370
+ async triggerSOS(payload) {
371
+ var _a;
372
+ this.notifyListeners('sos', Object.assign(Object.assign({}, (payload !== null && payload !== void 0 ? payload : {})), { location: (_a = this.lastLocation) !== null && _a !== void 0 ? _a : undefined }));
373
+ }
374
+ async headlessTask() {
375
+ throw this.unimplemented(NOT_AVAILABLE);
376
+ }
377
+ // ---------------- Config & logs ----------------
378
+ async getConfig() {
379
+ return Object.assign({}, this.config);
380
+ }
381
+ async getLogEntries(_options) {
382
+ return { entries: [] };
383
+ }
384
+ // ---------------- Helpers ----------------
385
+ toLocation(pos) {
386
+ var _a, _b, _c, _d;
387
+ const c = pos.coords;
388
+ return {
389
+ id: pos.timestamp,
390
+ provider: 'gps',
391
+ locationProvider: 0,
392
+ time: pos.timestamp,
393
+ latitude: c.latitude,
394
+ longitude: c.longitude,
395
+ accuracy: (_a = c.accuracy) !== null && _a !== void 0 ? _a : 0,
396
+ speed: (_b = c.speed) !== null && _b !== void 0 ? _b : 0,
397
+ altitude: (_c = c.altitude) !== null && _c !== void 0 ? _c : 0,
398
+ bearing: (_d = c.heading) !== null && _d !== void 0 ? _d : 0,
399
+ };
400
+ }
401
+ toError(err) {
402
+ return { code: err.code, message: err.message };
403
+ }
404
+ }
405
+
406
+ var web = /*#__PURE__*/Object.freeze({
407
+ __proto__: null,
408
+ BackgroundGeolocationWeb: BackgroundGeolocationWeb
409
+ });
410
+
411
+ exports.AccuracyValue = AccuracyValue;
412
+ exports.BackgroundGeolocation = BackgroundGeolocation;
413
+ exports.LocationProviderValue = LocationProviderValue;
414
+
415
+ return exports;
416
+
417
+ })({}, capacitorExports);
418
+ //# sourceMappingURL=plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.js","sources":["esm/definitions.js","esm/index.js","esm/web.js"],"sourcesContent":["// SPDX-License-Identifier: Apache-2.0\n// Copyright (c) 2026 JosueLMM\n//\n// Capacitor plugin definitions for @josuelmm/capacitor-background-geolocation.\n// Mirrors @josuelmm/cordova-background-geolocation's www/BackgroundGeolocation.d.ts\n// 1:1 for v1.0.0 parity. Cordova success/fail callbacks are collapsed into\n// Promises; `on(eventName, cb)` becomes Capacitor's `addListener` overloads.\n/**\n * Numeric mapping of {@link LocationProvider} matching the Cordova plugin.\n *\n * @since 1.0.0\n */\nexport const LocationProviderValue = {\n DISTANCE_FILTER: 0,\n ACTIVITY_PROVIDER: 1,\n RAW_PROVIDER: 2,\n};\n/**\n * Meters mapping of {@link Accuracy} (matches the Cordova plugin's `AccuracyLevel`).\n *\n * @since 1.0.0\n */\nexport const AccuracyValue = {\n HIGH: 0,\n MEDIUM: 100,\n LOW: 1000,\n PASSIVE: 10000,\n};\n/**\n * Service authorization state, mirroring the Cordova plugin constants.\n *\n * @since 1.0.0\n */\nexport var AuthorizationStatus;\n(function (AuthorizationStatus) {\n AuthorizationStatus[AuthorizationStatus[\"NOT_AUTHORIZED\"] = 0] = \"NOT_AUTHORIZED\";\n AuthorizationStatus[AuthorizationStatus[\"AUTHORIZED\"] = 1] = \"AUTHORIZED\";\n AuthorizationStatus[AuthorizationStatus[\"AUTHORIZED_FOREGROUND\"] = 2] = \"AUTHORIZED_FOREGROUND\";\n})(AuthorizationStatus || (AuthorizationStatus = {}));\n// ---------------------------------------------------------------------------\n// @awesome-cordova-plugins compatibility re-exports\n// ---------------------------------------------------------------------------\n/** Event name strings (compatibility with `@awesome-cordova-plugins` style). @since 1.0.0 */\nexport var BackgroundGeolocationEvents;\n(function (BackgroundGeolocationEvents) {\n BackgroundGeolocationEvents[\"http_authorization\"] = \"http_authorization\";\n BackgroundGeolocationEvents[\"abort_requested\"] = \"abort_requested\";\n BackgroundGeolocationEvents[\"background\"] = \"background\";\n BackgroundGeolocationEvents[\"foreground\"] = \"foreground\";\n BackgroundGeolocationEvents[\"authorization\"] = \"authorization\";\n BackgroundGeolocationEvents[\"error\"] = \"error\";\n BackgroundGeolocationEvents[\"stop\"] = \"stop\";\n BackgroundGeolocationEvents[\"start\"] = \"start\";\n BackgroundGeolocationEvents[\"activity\"] = \"activity\";\n BackgroundGeolocationEvents[\"stationary\"] = \"stationary\";\n BackgroundGeolocationEvents[\"location\"] = \"location\";\n BackgroundGeolocationEvents[\"heartbeat\"] = \"heartbeat\";\n BackgroundGeolocationEvents[\"syncStart\"] = \"syncStart\";\n BackgroundGeolocationEvents[\"syncProgress\"] = \"syncProgress\";\n BackgroundGeolocationEvents[\"syncSuccess\"] = \"syncSuccess\";\n BackgroundGeolocationEvents[\"syncError\"] = \"syncError\";\n BackgroundGeolocationEvents[\"tripStart\"] = \"tripStart\";\n BackgroundGeolocationEvents[\"tripEnd\"] = \"tripEnd\";\n BackgroundGeolocationEvents[\"moving\"] = \"moving\";\n BackgroundGeolocationEvents[\"stopped\"] = \"stopped\";\n BackgroundGeolocationEvents[\"speeding\"] = \"speeding\";\n BackgroundGeolocationEvents[\"providerChange\"] = \"providerChange\";\n BackgroundGeolocationEvents[\"sos\"] = \"sos\";\n BackgroundGeolocationEvents[\"hardBrake\"] = \"hardBrake\";\n BackgroundGeolocationEvents[\"rapidAcceleration\"] = \"rapidAcceleration\";\n BackgroundGeolocationEvents[\"sharpTurn\"] = \"sharpTurn\";\n BackgroundGeolocationEvents[\"possibleCrash\"] = \"possibleCrash\";\n BackgroundGeolocationEvents[\"phoneUsageWhileDriving\"] = \"phoneUsageWhileDriving\";\n})(BackgroundGeolocationEvents || (BackgroundGeolocationEvents = {}));\n/** Location error codes. @since 1.0.0 */\nexport var BackgroundGeolocationLocationCode;\n(function (BackgroundGeolocationLocationCode) {\n BackgroundGeolocationLocationCode[BackgroundGeolocationLocationCode[\"PERMISSION_DENIED\"] = 1] = \"PERMISSION_DENIED\";\n BackgroundGeolocationLocationCode[BackgroundGeolocationLocationCode[\"LOCATION_UNAVAILABLE\"] = 2] = \"LOCATION_UNAVAILABLE\";\n BackgroundGeolocationLocationCode[BackgroundGeolocationLocationCode[\"TIMEOUT\"] = 3] = \"TIMEOUT\";\n})(BackgroundGeolocationLocationCode || (BackgroundGeolocationLocationCode = {}));\n/** Native provider strings. @since 1.0.0 */\nexport var BackgroundGeolocationNativeProvider;\n(function (BackgroundGeolocationNativeProvider) {\n BackgroundGeolocationNativeProvider[\"gps\"] = \"gps\";\n BackgroundGeolocationNativeProvider[\"network\"] = \"network\";\n BackgroundGeolocationNativeProvider[\"passive\"] = \"passive\";\n BackgroundGeolocationNativeProvider[\"fused\"] = \"fused\";\n})(BackgroundGeolocationNativeProvider || (BackgroundGeolocationNativeProvider = {}));\n/** Location provider IDs. @since 1.0.0 */\nexport var BackgroundGeolocationLocationProvider;\n(function (BackgroundGeolocationLocationProvider) {\n BackgroundGeolocationLocationProvider[BackgroundGeolocationLocationProvider[\"DISTANCE_FILTER_PROVIDER\"] = 0] = \"DISTANCE_FILTER_PROVIDER\";\n BackgroundGeolocationLocationProvider[BackgroundGeolocationLocationProvider[\"ACTIVITY_PROVIDER\"] = 1] = \"ACTIVITY_PROVIDER\";\n BackgroundGeolocationLocationProvider[BackgroundGeolocationLocationProvider[\"RAW_PROVIDER\"] = 2] = \"RAW_PROVIDER\";\n})(BackgroundGeolocationLocationProvider || (BackgroundGeolocationLocationProvider = {}));\n/** Authorization status. @since 1.0.0 */\nexport var BackgroundGeolocationAuthorizationStatus;\n(function (BackgroundGeolocationAuthorizationStatus) {\n BackgroundGeolocationAuthorizationStatus[BackgroundGeolocationAuthorizationStatus[\"NOT_AUTHORIZED\"] = 0] = \"NOT_AUTHORIZED\";\n BackgroundGeolocationAuthorizationStatus[BackgroundGeolocationAuthorizationStatus[\"AUTHORIZED\"] = 1] = \"AUTHORIZED\";\n BackgroundGeolocationAuthorizationStatus[BackgroundGeolocationAuthorizationStatus[\"AUTHORIZED_FOREGROUND\"] = 2] = \"AUTHORIZED_FOREGROUND\";\n})(BackgroundGeolocationAuthorizationStatus || (BackgroundGeolocationAuthorizationStatus = {}));\n/** Log levels. @since 1.0.0 */\nexport var BackgroundGeolocationLogLevel;\n(function (BackgroundGeolocationLogLevel) {\n BackgroundGeolocationLogLevel[\"TRACE\"] = \"TRACE\";\n BackgroundGeolocationLogLevel[\"DEBUG\"] = \"DEBUG\";\n BackgroundGeolocationLogLevel[\"INFO\"] = \"INFO\";\n BackgroundGeolocationLogLevel[\"WARN\"] = \"WARN\";\n BackgroundGeolocationLogLevel[\"ERROR\"] = \"ERROR\";\n})(BackgroundGeolocationLogLevel || (BackgroundGeolocationLogLevel = {}));\n/** Provider enum (compatibility with `@awesome-cordova-plugins` style). @since 1.0.0 */\nexport var BackgroundGeolocationProvider;\n(function (BackgroundGeolocationProvider) {\n BackgroundGeolocationProvider[BackgroundGeolocationProvider[\"ANDROID_DISTANCE_FILTER_PROVIDER\"] = 0] = \"ANDROID_DISTANCE_FILTER_PROVIDER\";\n BackgroundGeolocationProvider[BackgroundGeolocationProvider[\"ANDROID_ACTIVITY_PROVIDER\"] = 1] = \"ANDROID_ACTIVITY_PROVIDER\";\n BackgroundGeolocationProvider[BackgroundGeolocationProvider[\"RAW_PROVIDER\"] = 2] = \"RAW_PROVIDER\";\n})(BackgroundGeolocationProvider || (BackgroundGeolocationProvider = {}));\n/** Desired accuracy in meters. @since 1.0.0 */\nexport var BackgroundGeolocationAccuracy;\n(function (BackgroundGeolocationAccuracy) {\n BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy[\"HIGH\"] = 0] = \"HIGH\";\n BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy[\"MEDIUM\"] = 100] = \"MEDIUM\";\n BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy[\"LOW\"] = 1000] = \"LOW\";\n BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy[\"PASSIVE\"] = 10000] = \"PASSIVE\";\n})(BackgroundGeolocationAccuracy || (BackgroundGeolocationAccuracy = {}));\n/** Mode for `switchMode`. @since 1.0.0 */\nexport var BackgroundGeolocationMode;\n(function (BackgroundGeolocationMode) {\n BackgroundGeolocationMode[BackgroundGeolocationMode[\"BACKGROUND\"] = 0] = \"BACKGROUND\";\n BackgroundGeolocationMode[BackgroundGeolocationMode[\"FOREGROUND\"] = 1] = \"FOREGROUND\";\n})(BackgroundGeolocationMode || (BackgroundGeolocationMode = {}));\n/** iOS activity type. @since 1.0.0 */\nexport var BackgroundGeolocationIOSActivity;\n(function (BackgroundGeolocationIOSActivity) {\n BackgroundGeolocationIOSActivity[\"AutomotiveNavigation\"] = \"AutomotiveNavigation\";\n BackgroundGeolocationIOSActivity[\"OtherNavigation\"] = \"OtherNavigation\";\n BackgroundGeolocationIOSActivity[\"Fitness\"] = \"Fitness\";\n BackgroundGeolocationIOSActivity[\"Other\"] = \"Other\";\n})(BackgroundGeolocationIOSActivity || (BackgroundGeolocationIOSActivity = {}));\n//# sourceMappingURL=definitions.js.map","// SPDX-License-Identifier: Apache-2.0\n// Copyright (c) 2026 JosueLMM\nimport { registerPlugin } from '@capacitor/core';\nconst NativeBackgroundGeolocation = registerPlugin('BackgroundGeolocation', {\n web: () => import('./web').then((m) => new m.BackgroundGeolocationWeb()),\n});\n/**\n * Public plugin. `headlessTask(fn)` serialises the callback before sending it\n * to the native side; every other method is a 1:1 passthrough.\n */\nconst BackgroundGeolocation = new Proxy(NativeBackgroundGeolocation, {\n get(target, prop, receiver) {\n if (prop === 'headlessTask') {\n return (task) => NativeBackgroundGeolocation.registerHeadlessTask({\n task: task.toString(),\n });\n }\n return Reflect.get(target, prop, receiver);\n },\n});\nexport * from './definitions';\nexport { BackgroundGeolocation };\n//# sourceMappingURL=index.js.map","// SPDX-License-Identifier: Apache-2.0\n// Copyright (c) 2026 JosueLMM\n//\n// Browser fallback for @josuelmm/capacitor-background-geolocation.\n// Uses navigator.geolocation. Real background tracking is not possible on the\n// web platform — the service runs only while the page is alive.\nimport { WebPlugin } from '@capacitor/core';\nimport { AuthorizationStatus } from './definitions';\nconst NOT_AVAILABLE = 'Not available on web.';\nexport class BackgroundGeolocationWeb extends WebPlugin {\n constructor() {\n super(...arguments);\n this.watchId = null;\n this.config = {};\n this.lastLocation = null;\n }\n // ---------------- Tracking control ----------------\n async configure(options) {\n this.config = Object.assign(Object.assign({}, this.config), options);\n }\n async start() {\n if (!('geolocation' in navigator)) {\n throw this.unavailable('Geolocation API is not available in this browser.');\n }\n if (this.watchId !== null) {\n return;\n }\n this.watchId = navigator.geolocation.watchPosition((pos) => {\n const loc = this.toLocation(pos);\n this.lastLocation = loc;\n this.notifyListeners('location', loc);\n }, (err) => {\n this.notifyListeners('error', this.toError(err));\n }, {\n enableHighAccuracy: this.config.desiredAccuracy !== 'LOW',\n maximumAge: 0,\n timeout: 30000,\n });\n this.notifyListeners('start', {});\n }\n async stop() {\n if (this.watchId !== null) {\n navigator.geolocation.clearWatch(this.watchId);\n this.watchId = null;\n this.notifyListeners('stop', {});\n }\n }\n async switchMode(_options) {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async checkStatus() {\n return {\n isRunning: this.watchId !== null,\n locationServicesEnabled: 'geolocation' in navigator,\n authorization: AuthorizationStatus.AUTHORIZED_FOREGROUND,\n };\n }\n // ---------------- Locations ----------------\n getCurrentLocation(options) {\n if (!('geolocation' in navigator)) {\n throw this.unavailable('Geolocation API is not available in this browser.');\n }\n return new Promise((resolve, reject) => {\n var _a, _b, _c;\n navigator.geolocation.getCurrentPosition((pos) => resolve(this.toLocation(pos)), (err) => reject(this.toError(err)), {\n enableHighAccuracy: (_a = options === null || options === void 0 ? void 0 : options.enableHighAccuracy) !== null && _a !== void 0 ? _a : true,\n maximumAge: (_b = options === null || options === void 0 ? void 0 : options.maximumAge) !== null && _b !== void 0 ? _b : 0,\n timeout: (_c = options === null || options === void 0 ? void 0 : options.timeout) !== null && _c !== void 0 ? _c : 30000,\n });\n });\n }\n async getStationaryLocation() {\n return null;\n }\n async getLocations() {\n return { locations: [] };\n }\n async getValidLocations() {\n return { locations: [] };\n }\n async getValidLocationsAndDelete() {\n return { locations: [] };\n }\n async deleteLocation(_options) {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async deleteAllLocations() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n // ---------------- Sync queue ----------------\n async forceSync() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async clearSync() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async getPendingSyncCount() {\n return { count: 0 };\n }\n // ---------------- Sessions ----------------\n async startSession() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async getSessionLocations() {\n return { locations: [] };\n }\n async clearSession() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async getSessionLocationsCount() {\n return { count: 0 };\n }\n // ---------------- Diagnostics & OEMs ----------------\n async getDiagnostics() {\n var _a, _b;\n return {\n isRunning: this.watchId !== null,\n locationServicesEnabled: 'geolocation' in navigator,\n lastLocationAt: (_b = (_a = this.lastLocation) === null || _a === void 0 ? void 0 : _a.time) !== null && _b !== void 0 ? _b : null,\n manufacturer: 'web',\n };\n }\n async isIgnoringBatteryOptimizations() {\n return { whitelisted: true };\n }\n async requestIgnoreBatteryOptimizations() {\n return { whitelisted: true };\n }\n async openBatterySettings() {\n /* no-op */\n }\n async openAutoStartSettings() {\n return { opened: false, manufacturer: 'web', screen: '' };\n }\n async getManufacturerHelp() {\n return { manufacturer: 'web', steps: [] };\n }\n async getPluginVersion() {\n return { version: '1.0.0' };\n }\n // ---------------- Permissions ----------------\n async checkPermissions() {\n const perms = navigator\n .permissions;\n if (perms === null || perms === void 0 ? void 0 : perms.query) {\n try {\n const result = await perms.query({ name: 'geolocation' });\n return { location: result.state };\n }\n catch (_a) {\n /* fall through to probe */\n }\n }\n return { location: 'prompt' };\n }\n async requestPermissions() {\n if (!('geolocation' in navigator)) {\n return { location: 'denied' };\n }\n return new Promise((resolve) => {\n navigator.geolocation.getCurrentPosition(() => resolve({ location: 'granted' }), (err) => {\n resolve({\n location: err.code === err.PERMISSION_DENIED ? 'denied' : 'prompt',\n });\n }, { enableHighAccuracy: false, maximumAge: 60000, timeout: 5000 });\n });\n }\n async requestBackgroundLocationPermission() {\n return { granted: true, notRequired: true };\n }\n async requestActivityRecognitionPermission() {\n return { granted: true, notRequired: true };\n }\n async requestNotificationPermission() {\n if (typeof Notification === 'undefined') {\n return { granted: true, notRequired: true };\n }\n if (Notification.permission === 'granted') {\n return { granted: true };\n }\n try {\n const result = await Notification.requestPermission();\n return result === 'granted'\n ? { granted: true }\n : { granted: false, denied: ['notifications'] };\n }\n catch (_a) {\n return { granted: false, denied: ['notifications'] };\n }\n }\n async showAppSettings() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async openSettings() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async showLocationSettings() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n // ---------------- Tasks ----------------\n async startTask() {\n return { taskKey: 0 };\n }\n async endTask(_options) {\n /* no-op */\n }\n async triggerSOS(payload) {\n var _a;\n this.notifyListeners('sos', Object.assign(Object.assign({}, (payload !== null && payload !== void 0 ? payload : {})), { location: (_a = this.lastLocation) !== null && _a !== void 0 ? _a : undefined }));\n }\n async headlessTask() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n // ---------------- Config & logs ----------------\n async getConfig() {\n return Object.assign({}, this.config);\n }\n async getLogEntries(_options) {\n return { entries: [] };\n }\n // ---------------- Helpers ----------------\n toLocation(pos) {\n var _a, _b, _c, _d;\n const c = pos.coords;\n return {\n id: pos.timestamp,\n provider: 'gps',\n locationProvider: 0,\n time: pos.timestamp,\n latitude: c.latitude,\n longitude: c.longitude,\n accuracy: (_a = c.accuracy) !== null && _a !== void 0 ? _a : 0,\n speed: (_b = c.speed) !== null && _b !== void 0 ? _b : 0,\n altitude: (_c = c.altitude) !== null && _c !== void 0 ? _c : 0,\n bearing: (_d = c.heading) !== null && _d !== void 0 ? _d : 0,\n };\n }\n toError(err) {\n return { code: err.code, message: err.message };\n }\n}\n//# sourceMappingURL=web.js.map"],"names":["AuthorizationStatus","BackgroundGeolocationEvents","BackgroundGeolocationLocationCode","BackgroundGeolocationNativeProvider","BackgroundGeolocationLocationProvider","BackgroundGeolocationAuthorizationStatus","BackgroundGeolocationLogLevel","BackgroundGeolocationProvider","BackgroundGeolocationAccuracy","BackgroundGeolocationMode","BackgroundGeolocationIOSActivity","registerPlugin","WebPlugin"],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ // Copyright (c) 2026 JosueLMM
3
+
4
+ #ifndef BackgroundGeolocationPlugin_Bridging_Header_h
5
+ #define BackgroundGeolocationPlugin_Bridging_Header_h
6
+
7
+ #import "MAURBackgroundGeolocationFacade.h"
8
+ #import "MAURConfig.h"
9
+ #import "MAURLocation.h"
10
+ #import "MAURActivity.h"
11
+ #import "MAURProviderDelegate.h"
12
+ #import "MAURLocationContract.h"
13
+ #import "MAURBackgroundTaskManager.h"
14
+ #import "MAURSQLiteLocationDAO.h"
15
+ #import "MAURBackgroundSync.h"
16
+ #import "MAURLogReader.h"
17
+
18
+ #endif /* BackgroundGeolocationPlugin_Bridging_Header_h */
@@ -0,0 +1,52 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ // Copyright (c) 2026 JosueLMM
3
+
4
+ #import <Foundation/Foundation.h>
5
+ #import <Capacitor/Capacitor.h>
6
+
7
+ CAP_PLUGIN(BackgroundGeolocationPlugin, "BackgroundGeolocation",
8
+ CAP_PLUGIN_METHOD(configure, CAPPluginReturnPromise);
9
+ CAP_PLUGIN_METHOD(start, CAPPluginReturnPromise);
10
+ CAP_PLUGIN_METHOD(stop, CAPPluginReturnPromise);
11
+ CAP_PLUGIN_METHOD(getCurrentLocation, CAPPluginReturnPromise);
12
+ CAP_PLUGIN_METHOD(getStationaryLocation, CAPPluginReturnPromise);
13
+ CAP_PLUGIN_METHOD(getLocations, CAPPluginReturnPromise);
14
+ CAP_PLUGIN_METHOD(getValidLocations, CAPPluginReturnPromise);
15
+ CAP_PLUGIN_METHOD(getValidLocationsAndDelete, CAPPluginReturnPromise);
16
+ CAP_PLUGIN_METHOD(getConfig, CAPPluginReturnPromise);
17
+ CAP_PLUGIN_METHOD(deleteLocation, CAPPluginReturnPromise);
18
+ CAP_PLUGIN_METHOD(deleteAllLocations, CAPPluginReturnPromise);
19
+ CAP_PLUGIN_METHOD(isLocationEnabled, CAPPluginReturnPromise);
20
+ CAP_PLUGIN_METHOD(showAppSettings, CAPPluginReturnPromise);
21
+ CAP_PLUGIN_METHOD(showLocationSettings, CAPPluginReturnPromise);
22
+ CAP_PLUGIN_METHOD(openSettings, CAPPluginReturnPromise);
23
+ CAP_PLUGIN_METHOD(watchLocationMode, CAPPluginReturnPromise);
24
+ CAP_PLUGIN_METHOD(stopWatchingLocationMode, CAPPluginReturnPromise);
25
+ CAP_PLUGIN_METHOD(getLogEntries, CAPPluginReturnPromise);
26
+ CAP_PLUGIN_METHOD(checkStatus, CAPPluginReturnPromise);
27
+ CAP_PLUGIN_METHOD(getDiagnostics, CAPPluginReturnPromise);
28
+ CAP_PLUGIN_METHOD(getPluginVersion, CAPPluginReturnPromise);
29
+ CAP_PLUGIN_METHOD(switchMode, CAPPluginReturnPromise);
30
+ CAP_PLUGIN_METHOD(startTask, CAPPluginReturnPromise);
31
+ CAP_PLUGIN_METHOD(endTask, CAPPluginReturnPromise);
32
+ CAP_PLUGIN_METHOD(forceSync, CAPPluginReturnPromise);
33
+ CAP_PLUGIN_METHOD(clearSync, CAPPluginReturnPromise);
34
+ CAP_PLUGIN_METHOD(getPendingSyncCount, CAPPluginReturnPromise);
35
+ CAP_PLUGIN_METHOD(startSession, CAPPluginReturnPromise);
36
+ CAP_PLUGIN_METHOD(clearSession, CAPPluginReturnPromise);
37
+ CAP_PLUGIN_METHOD(getSessionLocations, CAPPluginReturnPromise);
38
+ CAP_PLUGIN_METHOD(getSessionLocationsCount, CAPPluginReturnPromise);
39
+ CAP_PLUGIN_METHOD(triggerSOS, CAPPluginReturnPromise);
40
+ CAP_PLUGIN_METHOD(isIgnoringBatteryOptimizations, CAPPluginReturnPromise);
41
+ CAP_PLUGIN_METHOD(requestIgnoreBatteryOptimizations, CAPPluginReturnPromise);
42
+ CAP_PLUGIN_METHOD(openBatterySettings, CAPPluginReturnPromise);
43
+ CAP_PLUGIN_METHOD(openAutoStartSettings, CAPPluginReturnPromise);
44
+ CAP_PLUGIN_METHOD(getManufacturerHelp, CAPPluginReturnPromise);
45
+ CAP_PLUGIN_METHOD(requestBackgroundLocationPermission, CAPPluginReturnPromise);
46
+ CAP_PLUGIN_METHOD(requestActivityRecognitionPermission, CAPPluginReturnPromise);
47
+ CAP_PLUGIN_METHOD(requestNotificationPermission, CAPPluginReturnPromise);
48
+ CAP_PLUGIN_METHOD(checkPermissions, CAPPluginReturnPromise);
49
+ CAP_PLUGIN_METHOD(requestPermissions, CAPPluginReturnPromise);
50
+ CAP_PLUGIN_METHOD(registerHeadlessTask, CAPPluginReturnPromise);
51
+ CAP_PLUGIN_METHOD(removeAllListeners, CAPPluginReturnPromise);
52
+ )