@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.
- package/JosuelmmCapacitorBackgroundGeolocation.podspec +34 -0
- package/LICENSE +17 -0
- package/NOTICE.md +32 -0
- package/Package.swift +45 -0
- package/README.md +402 -0
- package/android/build.gradle +79 -0
- package/android/proguard-rules.pro +1 -0
- package/android/src/main/AndroidManifest.xml +83 -0
- package/android/src/main/java/com/evgenii/jsevaluator/HandlerWrapper.java +18 -0
- package/android/src/main/java/com/evgenii/jsevaluator/JavaScriptInterface.java +22 -0
- package/android/src/main/java/com/evgenii/jsevaluator/JsEvaluator.java +133 -0
- package/android/src/main/java/com/evgenii/jsevaluator/JsFunctionCallFormatter.java +37 -0
- package/android/src/main/java/com/evgenii/jsevaluator/WebViewWrapper.java +71 -0
- package/android/src/main/java/com/evgenii/jsevaluator/interfaces/CallJavaResultInterface.java +8 -0
- package/android/src/main/java/com/evgenii/jsevaluator/interfaces/HandlerWrapperInterface.java +5 -0
- package/android/src/main/java/com/evgenii/jsevaluator/interfaces/JsCallback.java +10 -0
- package/android/src/main/java/com/evgenii/jsevaluator/interfaces/JsEvaluatorInterface.java +18 -0
- package/android/src/main/java/com/evgenii/jsevaluator/interfaces/WebViewWrapperInterface.java +14 -0
- package/android/src/main/java/com/josuelmm/capacitor/backgroundgeolocation/BackgroundGeolocationPlugin.java +898 -0
- package/android/src/main/java/com/josuelmm/capacitor/backgroundgeolocation/ConfigMapper.java +303 -0
- package/android/src/main/java/com/josuelmm/capacitor/backgroundgeolocation/HeadlessTaskRegistry.java +34 -0
- package/android/src/main/java/com/josuelmm/capacitor/backgroundgeolocation/JsEvaluatorTaskRunner.java +63 -0
- package/android/src/main/java/com/marianhello/bgloc/BackgroundGeolocationFacade.java +699 -0
- package/android/src/main/java/com/marianhello/bgloc/BootCompletedReceiver.java +103 -0
- package/android/src/main/java/com/marianhello/bgloc/Config.java +1155 -0
- package/android/src/main/java/com/marianhello/bgloc/ConnectivityListener.java +5 -0
- package/android/src/main/java/com/marianhello/bgloc/HttpPostService.java +362 -0
- package/android/src/main/java/com/marianhello/bgloc/LocationManager.java +138 -0
- package/android/src/main/java/com/marianhello/bgloc/PluginDelegate.java +45 -0
- package/android/src/main/java/com/marianhello/bgloc/PluginException.java +38 -0
- package/android/src/main/java/com/marianhello/bgloc/PostLocationTask.java +238 -0
- package/android/src/main/java/com/marianhello/bgloc/ResourceResolver.java +55 -0
- package/android/src/main/java/com/marianhello/bgloc/data/AbstractLocationTemplate.java +69 -0
- package/android/src/main/java/com/marianhello/bgloc/data/ArrayListLocationTemplate.java +88 -0
- package/android/src/main/java/com/marianhello/bgloc/data/BackgroundActivity.java +108 -0
- package/android/src/main/java/com/marianhello/bgloc/data/BackgroundLocation.java +1088 -0
- package/android/src/main/java/com/marianhello/bgloc/data/ConfigJsonMapper.java +211 -0
- package/android/src/main/java/com/marianhello/bgloc/data/ConfigurationDAO.java +13 -0
- package/android/src/main/java/com/marianhello/bgloc/data/DAOFactory.java +17 -0
- package/android/src/main/java/com/marianhello/bgloc/data/HashMapLocationTemplate.java +82 -0
- package/android/src/main/java/com/marianhello/bgloc/data/LocationDAO.java +27 -0
- package/android/src/main/java/com/marianhello/bgloc/data/LocationTemplate.java +12 -0
- package/android/src/main/java/com/marianhello/bgloc/data/LocationTemplateFactory.java +71 -0
- package/android/src/main/java/com/marianhello/bgloc/data/LocationTransform.java +19 -0
- package/android/src/main/java/com/marianhello/bgloc/data/SessionLocationDAO.java +18 -0
- package/android/src/main/java/com/marianhello/bgloc/data/provider/ContentProviderLocationDAO.java +406 -0
- package/android/src/main/java/com/marianhello/bgloc/data/provider/LocationContentProvider.java +321 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteConfigurationContract.java +94 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteConfigurationDAO.java +227 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteLocationContract.java +122 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteLocationDAO.java +550 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteOpenHelper.java +189 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteSessionContract.java +74 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteSessionLocationDAO.java +169 -0
- package/android/src/main/java/com/marianhello/bgloc/driving/DrivingEventsDetector.java +265 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/AbstractTaskRunner.java +15 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/ActivityTask.java +48 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/JsCallback.java +10 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/LocationTask.java +60 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/StationaryTask.java +25 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/Task.java +8 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/TaskRunner.java +5 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/TaskRunnerFactory.java +8 -0
- package/android/src/main/java/com/marianhello/bgloc/http/UrlTemplateResolver.java +115 -0
- package/android/src/main/java/com/marianhello/bgloc/oem/BatteryOemHelper.java +214 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/AbstractLocationProvider.java +218 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/ActivityRecognitionLocationProvider.java +385 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/DistanceFilterLocationProvider.java +685 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/LocationProvider.java +32 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/LocationProviderFactory.java +47 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/ProviderDelegate.java +12 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/RawLocationProvider.java +175 -0
- package/android/src/main/java/com/marianhello/bgloc/sensor/SensorFusionDetector.java +199 -0
- package/android/src/main/java/com/marianhello/bgloc/service/LocationService.java +16 -0
- package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceImpl.java +1531 -0
- package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceInfo.java +6 -0
- package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceInfoImpl.java +41 -0
- package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceIntentBuilder.java +203 -0
- package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceProxy.java +156 -0
- package/android/src/main/java/com/marianhello/bgloc/sync/AccountHelper.java +39 -0
- package/android/src/main/java/com/marianhello/bgloc/sync/Authenticator.java +68 -0
- package/android/src/main/java/com/marianhello/bgloc/sync/AuthenticatorService.java +28 -0
- package/android/src/main/java/com/marianhello/bgloc/sync/BatchManager.java +311 -0
- package/android/src/main/java/com/marianhello/bgloc/sync/NotificationHelper.java +148 -0
- package/android/src/main/java/com/marianhello/bgloc/sync/SyncAdapter.java +301 -0
- package/android/src/main/java/com/marianhello/bgloc/sync/SyncService.java +68 -0
- package/android/src/main/java/com/marianhello/logging/DBLogReader.java +208 -0
- package/android/src/main/java/com/marianhello/logging/LogEntry.java +99 -0
- package/android/src/main/java/com/marianhello/logging/LoggerManager.java +70 -0
- package/android/src/main/java/com/marianhello/logging/UncaughtExceptionLogger.java +36 -0
- package/android/src/main/java/com/marianhello/utils/CloneHelper.java +22 -0
- package/android/src/main/java/com/marianhello/utils/Convert.java +56 -0
- package/android/src/main/java/com/marianhello/utils/TextUtils.java +72 -0
- package/android/src/main/java/com/marianhello/utils/ToneGenerator.java +68 -0
- package/android/src/main/java/org/apache/commons/io/Charsets.java +153 -0
- package/android/src/main/java/org/apache/commons/io/input/ReversedLinesFileReader.java +344 -0
- package/android/src/main/java/org/chromium/content/browser/ThreadUtils.java +134 -0
- package/android/src/main/java/ru/andremoniy/sqlbuilder/SqlExpression.java +398 -0
- package/android/src/main/java/ru/andremoniy/sqlbuilder/SqlSelectStatement.java +671 -0
- package/android/src/main/java/ru/andremoniy/sqlbuilder/SqlStatement.java +29 -0
- package/android/src/main/java/ru/andremoniy/utils/TextUtils.java +61 -0
- package/android/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
- package/android/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
- package/android/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
- package/android/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
- package/android/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
- package/android/src/main/res/values/strings.xml +15 -0
- package/android/src/main/res/xml/authenticator.xml +7 -0
- package/android/src/main/res/xml/syncadapter.xml +9 -0
- package/dist/esm/definitions.d.ts +1052 -0
- package/dist/esm/definitions.js +142 -0
- package/dist/esm/definitions.js.map +1 -0
- package/dist/esm/index.d.ts +8 -0
- package/dist/esm/index.js +23 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/web.d.ts +92 -0
- package/dist/esm/web.js +242 -0
- package/dist/esm/web.js.map +1 -0
- package/dist/plugin.cjs.js +415 -0
- package/dist/plugin.cjs.js.map +1 -0
- package/dist/plugin.js +418 -0
- package/dist/plugin.js.map +1 -0
- package/ios/Sources/BackgroundGeolocationPlugin/BackgroundGeolocationPlugin-Bridging-Header.h +18 -0
- package/ios/Sources/BackgroundGeolocationPlugin/BackgroundGeolocationPlugin.m +52 -0
- package/ios/Sources/BackgroundGeolocationPlugin/BackgroundGeolocationPlugin.swift +750 -0
- package/ios/Tests/BackgroundGeolocationPluginTests/BackgroundGeolocationPluginTests.swift +12 -0
- package/ios/common/BackgroundGeolocation/CocoaLumberjack.h +1945 -0
- package/ios/common/BackgroundGeolocation/CocoaLumberjack.m +5255 -0
- package/ios/common/BackgroundGeolocation/FMDB.h +2357 -0
- package/ios/common/BackgroundGeolocation/FMDB.m +2672 -0
- package/ios/common/BackgroundGeolocation/FMDBLogger.h +42 -0
- package/ios/common/BackgroundGeolocation/FMDBLogger.m +264 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTUHeadingRequest.h +41 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTUHeadingRequest.m +68 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationManager+Internal.h +33 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationManager.h +178 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationManager.m +1025 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationRequest.h +103 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationRequest.m +238 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationRequestDefines.h +163 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTURequestIDGenerator.h +39 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTURequestIDGenerator.m +37 -0
- package/ios/common/BackgroundGeolocation/MAURAbstractLocationProvider.h +51 -0
- package/ios/common/BackgroundGeolocation/MAURAbstractLocationProvider.m +53 -0
- package/ios/common/BackgroundGeolocation/MAURActivity.h +23 -0
- package/ios/common/BackgroundGeolocation/MAURActivity.m +52 -0
- package/ios/common/BackgroundGeolocation/MAURActivityLocationProvider.h +18 -0
- package/ios/common/BackgroundGeolocation/MAURActivityLocationProvider.m +340 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundGeolocationFacade.h +88 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundGeolocationFacade.m +1193 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundSync.h +46 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundSync.m +283 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundTaskManager.h +25 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundTaskManager.m +105 -0
- package/ios/common/BackgroundGeolocation/MAURConfig.h +99 -0
- package/ios/common/BackgroundGeolocation/MAURConfig.m +636 -0
- package/ios/common/BackgroundGeolocation/MAURConfigurationContract.h +53 -0
- package/ios/common/BackgroundGeolocation/MAURConfigurationContract.m +54 -0
- package/ios/common/BackgroundGeolocation/MAURDistanceFilterLocationProvider.h +20 -0
- package/ios/common/BackgroundGeolocation/MAURDistanceFilterLocationProvider.m +550 -0
- package/ios/common/BackgroundGeolocation/MAURGeolocationOpenHelper.h +17 -0
- package/ios/common/BackgroundGeolocation/MAURGeolocationOpenHelper.m +124 -0
- package/ios/common/BackgroundGeolocation/MAURLocation.h +73 -0
- package/ios/common/BackgroundGeolocation/MAURLocation.m +392 -0
- package/ios/common/BackgroundGeolocation/MAURLocationContract.h +38 -0
- package/ios/common/BackgroundGeolocation/MAURLocationContract.m +39 -0
- package/ios/common/BackgroundGeolocation/MAURLocationManager.h +53 -0
- package/ios/common/BackgroundGeolocation/MAURLocationManager.m +305 -0
- package/ios/common/BackgroundGeolocation/MAURLogReader.h +26 -0
- package/ios/common/BackgroundGeolocation/MAURLogReader.m +122 -0
- package/ios/common/BackgroundGeolocation/MAURLogging.h +19 -0
- package/ios/common/BackgroundGeolocation/MAURPostLocationTask.h +53 -0
- package/ios/common/BackgroundGeolocation/MAURPostLocationTask.m +367 -0
- package/ios/common/BackgroundGeolocation/MAURProviderDelegate.h +52 -0
- package/ios/common/BackgroundGeolocation/MAURRawLocationProvider.h +18 -0
- package/ios/common/BackgroundGeolocation/MAURRawLocationProvider.m +138 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteConfigurationDAO.h +26 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteConfigurationDAO.m +335 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteHelper.h +57 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteHelper.m +93 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteLocationDAO.h +52 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteLocationDAO.m +520 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteOpenHelper.h +32 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteOpenHelper.m +276 -0
- package/ios/common/BackgroundGeolocation/MAURSensorFusionDetector.h +41 -0
- package/ios/common/BackgroundGeolocation/MAURSensorFusionDetector.m +137 -0
- package/ios/common/BackgroundGeolocation/MAURSessionLocationContract.h +29 -0
- package/ios/common/BackgroundGeolocation/MAURSessionLocationContract.m +31 -0
- package/ios/common/BackgroundGeolocation/MAURSessionLocationDAO.h +25 -0
- package/ios/common/BackgroundGeolocation/MAURSessionLocationDAO.m +153 -0
- package/ios/common/BackgroundGeolocation/MAURUncaughtExceptionLogger.h +20 -0
- package/ios/common/BackgroundGeolocation/MAURUncaughtExceptionLogger.m +62 -0
- package/ios/common/BackgroundGeolocation/MAURUrlTemplateResolver.h +31 -0
- package/ios/common/BackgroundGeolocation/MAURUrlTemplateResolver.m +107 -0
- package/ios/common/BackgroundGeolocation/Reachability.h +102 -0
- package/ios/common/BackgroundGeolocation/Reachability.m +475 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/README.md +170 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/ext/NSString+ZIMString.h +55 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/ext/NSString+ZIMString.m +47 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlDataManipulationCommand.h +27 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlExpression.h +250 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlExpression.m +259 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlSelectStatement.h +360 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlSelectStatement.m +427 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlStatement.h +37 -0
- package/ios/common/BackgroundGeolocation/module.modulemap +16 -0
- package/package.json +82 -0
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
// Copyright (c) 2026 JosueLMM
|
|
3
|
+
//
|
|
4
|
+
// Capacitor plugin definitions for @josuelmm/capacitor-background-geolocation.
|
|
5
|
+
// Mirrors @josuelmm/cordova-background-geolocation's www/BackgroundGeolocation.d.ts
|
|
6
|
+
// 1:1 for v1.0.0 parity. Cordova success/fail callbacks are collapsed into
|
|
7
|
+
// Promises; `on(eventName, cb)` becomes Capacitor's `addListener` overloads.
|
|
8
|
+
/**
|
|
9
|
+
* Numeric mapping of {@link LocationProvider} matching the Cordova plugin.
|
|
10
|
+
*
|
|
11
|
+
* @since 1.0.0
|
|
12
|
+
*/
|
|
13
|
+
export const LocationProviderValue = {
|
|
14
|
+
DISTANCE_FILTER: 0,
|
|
15
|
+
ACTIVITY_PROVIDER: 1,
|
|
16
|
+
RAW_PROVIDER: 2,
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Meters mapping of {@link Accuracy} (matches the Cordova plugin's `AccuracyLevel`).
|
|
20
|
+
*
|
|
21
|
+
* @since 1.0.0
|
|
22
|
+
*/
|
|
23
|
+
export const AccuracyValue = {
|
|
24
|
+
HIGH: 0,
|
|
25
|
+
MEDIUM: 100,
|
|
26
|
+
LOW: 1000,
|
|
27
|
+
PASSIVE: 10000,
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Service authorization state, mirroring the Cordova plugin constants.
|
|
31
|
+
*
|
|
32
|
+
* @since 1.0.0
|
|
33
|
+
*/
|
|
34
|
+
export var AuthorizationStatus;
|
|
35
|
+
(function (AuthorizationStatus) {
|
|
36
|
+
AuthorizationStatus[AuthorizationStatus["NOT_AUTHORIZED"] = 0] = "NOT_AUTHORIZED";
|
|
37
|
+
AuthorizationStatus[AuthorizationStatus["AUTHORIZED"] = 1] = "AUTHORIZED";
|
|
38
|
+
AuthorizationStatus[AuthorizationStatus["AUTHORIZED_FOREGROUND"] = 2] = "AUTHORIZED_FOREGROUND";
|
|
39
|
+
})(AuthorizationStatus || (AuthorizationStatus = {}));
|
|
40
|
+
// ---------------------------------------------------------------------------
|
|
41
|
+
// @awesome-cordova-plugins compatibility re-exports
|
|
42
|
+
// ---------------------------------------------------------------------------
|
|
43
|
+
/** Event name strings (compatibility with `@awesome-cordova-plugins` style). @since 1.0.0 */
|
|
44
|
+
export var BackgroundGeolocationEvents;
|
|
45
|
+
(function (BackgroundGeolocationEvents) {
|
|
46
|
+
BackgroundGeolocationEvents["http_authorization"] = "http_authorization";
|
|
47
|
+
BackgroundGeolocationEvents["abort_requested"] = "abort_requested";
|
|
48
|
+
BackgroundGeolocationEvents["background"] = "background";
|
|
49
|
+
BackgroundGeolocationEvents["foreground"] = "foreground";
|
|
50
|
+
BackgroundGeolocationEvents["authorization"] = "authorization";
|
|
51
|
+
BackgroundGeolocationEvents["error"] = "error";
|
|
52
|
+
BackgroundGeolocationEvents["stop"] = "stop";
|
|
53
|
+
BackgroundGeolocationEvents["start"] = "start";
|
|
54
|
+
BackgroundGeolocationEvents["activity"] = "activity";
|
|
55
|
+
BackgroundGeolocationEvents["stationary"] = "stationary";
|
|
56
|
+
BackgroundGeolocationEvents["location"] = "location";
|
|
57
|
+
BackgroundGeolocationEvents["heartbeat"] = "heartbeat";
|
|
58
|
+
BackgroundGeolocationEvents["syncStart"] = "syncStart";
|
|
59
|
+
BackgroundGeolocationEvents["syncProgress"] = "syncProgress";
|
|
60
|
+
BackgroundGeolocationEvents["syncSuccess"] = "syncSuccess";
|
|
61
|
+
BackgroundGeolocationEvents["syncError"] = "syncError";
|
|
62
|
+
BackgroundGeolocationEvents["tripStart"] = "tripStart";
|
|
63
|
+
BackgroundGeolocationEvents["tripEnd"] = "tripEnd";
|
|
64
|
+
BackgroundGeolocationEvents["moving"] = "moving";
|
|
65
|
+
BackgroundGeolocationEvents["stopped"] = "stopped";
|
|
66
|
+
BackgroundGeolocationEvents["speeding"] = "speeding";
|
|
67
|
+
BackgroundGeolocationEvents["providerChange"] = "providerChange";
|
|
68
|
+
BackgroundGeolocationEvents["sos"] = "sos";
|
|
69
|
+
BackgroundGeolocationEvents["hardBrake"] = "hardBrake";
|
|
70
|
+
BackgroundGeolocationEvents["rapidAcceleration"] = "rapidAcceleration";
|
|
71
|
+
BackgroundGeolocationEvents["sharpTurn"] = "sharpTurn";
|
|
72
|
+
BackgroundGeolocationEvents["possibleCrash"] = "possibleCrash";
|
|
73
|
+
BackgroundGeolocationEvents["phoneUsageWhileDriving"] = "phoneUsageWhileDriving";
|
|
74
|
+
})(BackgroundGeolocationEvents || (BackgroundGeolocationEvents = {}));
|
|
75
|
+
/** Location error codes. @since 1.0.0 */
|
|
76
|
+
export var BackgroundGeolocationLocationCode;
|
|
77
|
+
(function (BackgroundGeolocationLocationCode) {
|
|
78
|
+
BackgroundGeolocationLocationCode[BackgroundGeolocationLocationCode["PERMISSION_DENIED"] = 1] = "PERMISSION_DENIED";
|
|
79
|
+
BackgroundGeolocationLocationCode[BackgroundGeolocationLocationCode["LOCATION_UNAVAILABLE"] = 2] = "LOCATION_UNAVAILABLE";
|
|
80
|
+
BackgroundGeolocationLocationCode[BackgroundGeolocationLocationCode["TIMEOUT"] = 3] = "TIMEOUT";
|
|
81
|
+
})(BackgroundGeolocationLocationCode || (BackgroundGeolocationLocationCode = {}));
|
|
82
|
+
/** Native provider strings. @since 1.0.0 */
|
|
83
|
+
export var BackgroundGeolocationNativeProvider;
|
|
84
|
+
(function (BackgroundGeolocationNativeProvider) {
|
|
85
|
+
BackgroundGeolocationNativeProvider["gps"] = "gps";
|
|
86
|
+
BackgroundGeolocationNativeProvider["network"] = "network";
|
|
87
|
+
BackgroundGeolocationNativeProvider["passive"] = "passive";
|
|
88
|
+
BackgroundGeolocationNativeProvider["fused"] = "fused";
|
|
89
|
+
})(BackgroundGeolocationNativeProvider || (BackgroundGeolocationNativeProvider = {}));
|
|
90
|
+
/** Location provider IDs. @since 1.0.0 */
|
|
91
|
+
export var BackgroundGeolocationLocationProvider;
|
|
92
|
+
(function (BackgroundGeolocationLocationProvider) {
|
|
93
|
+
BackgroundGeolocationLocationProvider[BackgroundGeolocationLocationProvider["DISTANCE_FILTER_PROVIDER"] = 0] = "DISTANCE_FILTER_PROVIDER";
|
|
94
|
+
BackgroundGeolocationLocationProvider[BackgroundGeolocationLocationProvider["ACTIVITY_PROVIDER"] = 1] = "ACTIVITY_PROVIDER";
|
|
95
|
+
BackgroundGeolocationLocationProvider[BackgroundGeolocationLocationProvider["RAW_PROVIDER"] = 2] = "RAW_PROVIDER";
|
|
96
|
+
})(BackgroundGeolocationLocationProvider || (BackgroundGeolocationLocationProvider = {}));
|
|
97
|
+
/** Authorization status. @since 1.0.0 */
|
|
98
|
+
export var BackgroundGeolocationAuthorizationStatus;
|
|
99
|
+
(function (BackgroundGeolocationAuthorizationStatus) {
|
|
100
|
+
BackgroundGeolocationAuthorizationStatus[BackgroundGeolocationAuthorizationStatus["NOT_AUTHORIZED"] = 0] = "NOT_AUTHORIZED";
|
|
101
|
+
BackgroundGeolocationAuthorizationStatus[BackgroundGeolocationAuthorizationStatus["AUTHORIZED"] = 1] = "AUTHORIZED";
|
|
102
|
+
BackgroundGeolocationAuthorizationStatus[BackgroundGeolocationAuthorizationStatus["AUTHORIZED_FOREGROUND"] = 2] = "AUTHORIZED_FOREGROUND";
|
|
103
|
+
})(BackgroundGeolocationAuthorizationStatus || (BackgroundGeolocationAuthorizationStatus = {}));
|
|
104
|
+
/** Log levels. @since 1.0.0 */
|
|
105
|
+
export var BackgroundGeolocationLogLevel;
|
|
106
|
+
(function (BackgroundGeolocationLogLevel) {
|
|
107
|
+
BackgroundGeolocationLogLevel["TRACE"] = "TRACE";
|
|
108
|
+
BackgroundGeolocationLogLevel["DEBUG"] = "DEBUG";
|
|
109
|
+
BackgroundGeolocationLogLevel["INFO"] = "INFO";
|
|
110
|
+
BackgroundGeolocationLogLevel["WARN"] = "WARN";
|
|
111
|
+
BackgroundGeolocationLogLevel["ERROR"] = "ERROR";
|
|
112
|
+
})(BackgroundGeolocationLogLevel || (BackgroundGeolocationLogLevel = {}));
|
|
113
|
+
/** Provider enum (compatibility with `@awesome-cordova-plugins` style). @since 1.0.0 */
|
|
114
|
+
export var BackgroundGeolocationProvider;
|
|
115
|
+
(function (BackgroundGeolocationProvider) {
|
|
116
|
+
BackgroundGeolocationProvider[BackgroundGeolocationProvider["ANDROID_DISTANCE_FILTER_PROVIDER"] = 0] = "ANDROID_DISTANCE_FILTER_PROVIDER";
|
|
117
|
+
BackgroundGeolocationProvider[BackgroundGeolocationProvider["ANDROID_ACTIVITY_PROVIDER"] = 1] = "ANDROID_ACTIVITY_PROVIDER";
|
|
118
|
+
BackgroundGeolocationProvider[BackgroundGeolocationProvider["RAW_PROVIDER"] = 2] = "RAW_PROVIDER";
|
|
119
|
+
})(BackgroundGeolocationProvider || (BackgroundGeolocationProvider = {}));
|
|
120
|
+
/** Desired accuracy in meters. @since 1.0.0 */
|
|
121
|
+
export var BackgroundGeolocationAccuracy;
|
|
122
|
+
(function (BackgroundGeolocationAccuracy) {
|
|
123
|
+
BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy["HIGH"] = 0] = "HIGH";
|
|
124
|
+
BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy["MEDIUM"] = 100] = "MEDIUM";
|
|
125
|
+
BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy["LOW"] = 1000] = "LOW";
|
|
126
|
+
BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy["PASSIVE"] = 10000] = "PASSIVE";
|
|
127
|
+
})(BackgroundGeolocationAccuracy || (BackgroundGeolocationAccuracy = {}));
|
|
128
|
+
/** Mode for `switchMode`. @since 1.0.0 */
|
|
129
|
+
export var BackgroundGeolocationMode;
|
|
130
|
+
(function (BackgroundGeolocationMode) {
|
|
131
|
+
BackgroundGeolocationMode[BackgroundGeolocationMode["BACKGROUND"] = 0] = "BACKGROUND";
|
|
132
|
+
BackgroundGeolocationMode[BackgroundGeolocationMode["FOREGROUND"] = 1] = "FOREGROUND";
|
|
133
|
+
})(BackgroundGeolocationMode || (BackgroundGeolocationMode = {}));
|
|
134
|
+
/** iOS activity type. @since 1.0.0 */
|
|
135
|
+
export var BackgroundGeolocationIOSActivity;
|
|
136
|
+
(function (BackgroundGeolocationIOSActivity) {
|
|
137
|
+
BackgroundGeolocationIOSActivity["AutomotiveNavigation"] = "AutomotiveNavigation";
|
|
138
|
+
BackgroundGeolocationIOSActivity["OtherNavigation"] = "OtherNavigation";
|
|
139
|
+
BackgroundGeolocationIOSActivity["Fitness"] = "Fitness";
|
|
140
|
+
BackgroundGeolocationIOSActivity["Other"] = "Other";
|
|
141
|
+
})(BackgroundGeolocationIOSActivity || (BackgroundGeolocationIOSActivity = {}));
|
|
142
|
+
//# sourceMappingURL=definitions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/definitions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { BackgroundGeolocationPlugin } from './definitions';
|
|
2
|
+
/**
|
|
3
|
+
* Public plugin. `headlessTask(fn)` serialises the callback before sending it
|
|
4
|
+
* to the native side; every other method is a 1:1 passthrough.
|
|
5
|
+
*/
|
|
6
|
+
declare const BackgroundGeolocation: BackgroundGeolocationPlugin;
|
|
7
|
+
export * from './definitions';
|
|
8
|
+
export { BackgroundGeolocation };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
// Copyright (c) 2026 JosueLMM
|
|
3
|
+
import { registerPlugin } from '@capacitor/core';
|
|
4
|
+
const NativeBackgroundGeolocation = registerPlugin('BackgroundGeolocation', {
|
|
5
|
+
web: () => import('./web').then((m) => new m.BackgroundGeolocationWeb()),
|
|
6
|
+
});
|
|
7
|
+
/**
|
|
8
|
+
* Public plugin. `headlessTask(fn)` serialises the callback before sending it
|
|
9
|
+
* to the native side; every other method is a 1:1 passthrough.
|
|
10
|
+
*/
|
|
11
|
+
const BackgroundGeolocation = new Proxy(NativeBackgroundGeolocation, {
|
|
12
|
+
get(target, prop, receiver) {
|
|
13
|
+
if (prop === 'headlessTask') {
|
|
14
|
+
return (task) => NativeBackgroundGeolocation.registerHeadlessTask({
|
|
15
|
+
task: task.toString(),
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
return Reflect.get(target, prop, receiver);
|
|
19
|
+
},
|
|
20
|
+
});
|
|
21
|
+
export * from './definitions';
|
|
22
|
+
export { BackgroundGeolocation };
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,8BAA8B;AAE9B,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAmBjD,MAAM,2BAA2B,GAAG,cAAc,CAChD,uBAAuB,EACvB;IACE,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,wBAAwB,EAAE,CAAC;CACzE,CACF,CAAC;AAEF;;;GAGG;AACH,MAAM,qBAAqB,GAAgC,IAAI,KAAK,CAClE,2BAAqE,EACrE;IACE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;QACxB,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;YAC5B,OAAO,CAAC,IAA2C,EAAiB,EAAE,CACpE,2BAA2B,CAAC,oBAAoB,CAAC;gBAC/C,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE;aACtB,CAAC,CAAC;QACP,CAAC;QACD,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC7C,CAAC;CACF,CACF,CAAC;AAEF,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,qBAAqB,EAAE,CAAC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { WebPlugin } from '@capacitor/core';
|
|
2
|
+
import type { PermissionState } from '@capacitor/core';
|
|
3
|
+
import type { BackgroundGeolocationPlugin, ConfigureOptions, CurrentLocationOptions, Diagnostics, Location, LogEntry, PermissionRequestResult, ServiceStatus, StationaryLocation } from './definitions';
|
|
4
|
+
export declare class BackgroundGeolocationWeb extends WebPlugin implements BackgroundGeolocationPlugin {
|
|
5
|
+
private watchId;
|
|
6
|
+
private config;
|
|
7
|
+
private lastLocation;
|
|
8
|
+
configure(options: ConfigureOptions): Promise<void>;
|
|
9
|
+
start(): Promise<void>;
|
|
10
|
+
stop(): Promise<void>;
|
|
11
|
+
switchMode(_options: {
|
|
12
|
+
mode: 0 | 1;
|
|
13
|
+
}): Promise<void>;
|
|
14
|
+
checkStatus(): Promise<ServiceStatus>;
|
|
15
|
+
getCurrentLocation(options?: CurrentLocationOptions): Promise<Location>;
|
|
16
|
+
getStationaryLocation(): Promise<StationaryLocation | null>;
|
|
17
|
+
getLocations(): Promise<{
|
|
18
|
+
locations: Location[];
|
|
19
|
+
}>;
|
|
20
|
+
getValidLocations(): Promise<{
|
|
21
|
+
locations: Location[];
|
|
22
|
+
}>;
|
|
23
|
+
getValidLocationsAndDelete(): Promise<{
|
|
24
|
+
locations: Location[];
|
|
25
|
+
}>;
|
|
26
|
+
deleteLocation(_options: {
|
|
27
|
+
locationId: number;
|
|
28
|
+
}): Promise<void>;
|
|
29
|
+
deleteAllLocations(): Promise<void>;
|
|
30
|
+
forceSync(): Promise<void>;
|
|
31
|
+
clearSync(): Promise<void>;
|
|
32
|
+
getPendingSyncCount(): Promise<{
|
|
33
|
+
count: number;
|
|
34
|
+
}>;
|
|
35
|
+
startSession(): Promise<void>;
|
|
36
|
+
getSessionLocations(): Promise<{
|
|
37
|
+
locations: Location[];
|
|
38
|
+
}>;
|
|
39
|
+
clearSession(): Promise<void>;
|
|
40
|
+
getSessionLocationsCount(): Promise<{
|
|
41
|
+
count: number;
|
|
42
|
+
}>;
|
|
43
|
+
getDiagnostics(): Promise<Diagnostics>;
|
|
44
|
+
isIgnoringBatteryOptimizations(): Promise<{
|
|
45
|
+
whitelisted: boolean;
|
|
46
|
+
}>;
|
|
47
|
+
requestIgnoreBatteryOptimizations(): Promise<{
|
|
48
|
+
whitelisted: boolean;
|
|
49
|
+
}>;
|
|
50
|
+
openBatterySettings(): Promise<void>;
|
|
51
|
+
openAutoStartSettings(): Promise<{
|
|
52
|
+
opened: boolean;
|
|
53
|
+
manufacturer: string;
|
|
54
|
+
screen: string;
|
|
55
|
+
}>;
|
|
56
|
+
getManufacturerHelp(): Promise<{
|
|
57
|
+
manufacturer: string;
|
|
58
|
+
steps: string[];
|
|
59
|
+
}>;
|
|
60
|
+
getPluginVersion(): Promise<{
|
|
61
|
+
version: string;
|
|
62
|
+
}>;
|
|
63
|
+
checkPermissions(): Promise<{
|
|
64
|
+
location: PermissionState;
|
|
65
|
+
}>;
|
|
66
|
+
requestPermissions(): Promise<{
|
|
67
|
+
location: PermissionState;
|
|
68
|
+
}>;
|
|
69
|
+
requestBackgroundLocationPermission(): Promise<PermissionRequestResult>;
|
|
70
|
+
requestActivityRecognitionPermission(): Promise<PermissionRequestResult>;
|
|
71
|
+
requestNotificationPermission(): Promise<PermissionRequestResult>;
|
|
72
|
+
showAppSettings(): Promise<void>;
|
|
73
|
+
openSettings(): Promise<void>;
|
|
74
|
+
showLocationSettings(): Promise<void>;
|
|
75
|
+
startTask(): Promise<{
|
|
76
|
+
taskKey: number;
|
|
77
|
+
}>;
|
|
78
|
+
endTask(_options: {
|
|
79
|
+
taskKey: number;
|
|
80
|
+
}): Promise<void>;
|
|
81
|
+
triggerSOS(payload?: Record<string, unknown>): Promise<void>;
|
|
82
|
+
headlessTask(): Promise<void>;
|
|
83
|
+
getConfig(): Promise<ConfigureOptions>;
|
|
84
|
+
getLogEntries(_options: {
|
|
85
|
+
limit: number;
|
|
86
|
+
fromId?: number;
|
|
87
|
+
}): Promise<{
|
|
88
|
+
entries: LogEntry[];
|
|
89
|
+
}>;
|
|
90
|
+
private toLocation;
|
|
91
|
+
private toError;
|
|
92
|
+
}
|
package/dist/esm/web.js
ADDED
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
// Copyright (c) 2026 JosueLMM
|
|
3
|
+
//
|
|
4
|
+
// Browser fallback for @josuelmm/capacitor-background-geolocation.
|
|
5
|
+
// Uses navigator.geolocation. Real background tracking is not possible on the
|
|
6
|
+
// web platform — the service runs only while the page is alive.
|
|
7
|
+
import { WebPlugin } from '@capacitor/core';
|
|
8
|
+
import { AuthorizationStatus } from './definitions';
|
|
9
|
+
const NOT_AVAILABLE = 'Not available on web.';
|
|
10
|
+
export class BackgroundGeolocationWeb extends WebPlugin {
|
|
11
|
+
constructor() {
|
|
12
|
+
super(...arguments);
|
|
13
|
+
this.watchId = null;
|
|
14
|
+
this.config = {};
|
|
15
|
+
this.lastLocation = null;
|
|
16
|
+
}
|
|
17
|
+
// ---------------- Tracking control ----------------
|
|
18
|
+
async configure(options) {
|
|
19
|
+
this.config = Object.assign(Object.assign({}, this.config), options);
|
|
20
|
+
}
|
|
21
|
+
async start() {
|
|
22
|
+
if (!('geolocation' in navigator)) {
|
|
23
|
+
throw this.unavailable('Geolocation API is not available in this browser.');
|
|
24
|
+
}
|
|
25
|
+
if (this.watchId !== null) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
this.watchId = navigator.geolocation.watchPosition((pos) => {
|
|
29
|
+
const loc = this.toLocation(pos);
|
|
30
|
+
this.lastLocation = loc;
|
|
31
|
+
this.notifyListeners('location', loc);
|
|
32
|
+
}, (err) => {
|
|
33
|
+
this.notifyListeners('error', this.toError(err));
|
|
34
|
+
}, {
|
|
35
|
+
enableHighAccuracy: this.config.desiredAccuracy !== 'LOW',
|
|
36
|
+
maximumAge: 0,
|
|
37
|
+
timeout: 30000,
|
|
38
|
+
});
|
|
39
|
+
this.notifyListeners('start', {});
|
|
40
|
+
}
|
|
41
|
+
async stop() {
|
|
42
|
+
if (this.watchId !== null) {
|
|
43
|
+
navigator.geolocation.clearWatch(this.watchId);
|
|
44
|
+
this.watchId = null;
|
|
45
|
+
this.notifyListeners('stop', {});
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
async switchMode(_options) {
|
|
49
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
50
|
+
}
|
|
51
|
+
async checkStatus() {
|
|
52
|
+
return {
|
|
53
|
+
isRunning: this.watchId !== null,
|
|
54
|
+
locationServicesEnabled: 'geolocation' in navigator,
|
|
55
|
+
authorization: AuthorizationStatus.AUTHORIZED_FOREGROUND,
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
// ---------------- Locations ----------------
|
|
59
|
+
getCurrentLocation(options) {
|
|
60
|
+
if (!('geolocation' in navigator)) {
|
|
61
|
+
throw this.unavailable('Geolocation API is not available in this browser.');
|
|
62
|
+
}
|
|
63
|
+
return new Promise((resolve, reject) => {
|
|
64
|
+
var _a, _b, _c;
|
|
65
|
+
navigator.geolocation.getCurrentPosition((pos) => resolve(this.toLocation(pos)), (err) => reject(this.toError(err)), {
|
|
66
|
+
enableHighAccuracy: (_a = options === null || options === void 0 ? void 0 : options.enableHighAccuracy) !== null && _a !== void 0 ? _a : true,
|
|
67
|
+
maximumAge: (_b = options === null || options === void 0 ? void 0 : options.maximumAge) !== null && _b !== void 0 ? _b : 0,
|
|
68
|
+
timeout: (_c = options === null || options === void 0 ? void 0 : options.timeout) !== null && _c !== void 0 ? _c : 30000,
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
async getStationaryLocation() {
|
|
73
|
+
return null;
|
|
74
|
+
}
|
|
75
|
+
async getLocations() {
|
|
76
|
+
return { locations: [] };
|
|
77
|
+
}
|
|
78
|
+
async getValidLocations() {
|
|
79
|
+
return { locations: [] };
|
|
80
|
+
}
|
|
81
|
+
async getValidLocationsAndDelete() {
|
|
82
|
+
return { locations: [] };
|
|
83
|
+
}
|
|
84
|
+
async deleteLocation(_options) {
|
|
85
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
86
|
+
}
|
|
87
|
+
async deleteAllLocations() {
|
|
88
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
89
|
+
}
|
|
90
|
+
// ---------------- Sync queue ----------------
|
|
91
|
+
async forceSync() {
|
|
92
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
93
|
+
}
|
|
94
|
+
async clearSync() {
|
|
95
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
96
|
+
}
|
|
97
|
+
async getPendingSyncCount() {
|
|
98
|
+
return { count: 0 };
|
|
99
|
+
}
|
|
100
|
+
// ---------------- Sessions ----------------
|
|
101
|
+
async startSession() {
|
|
102
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
103
|
+
}
|
|
104
|
+
async getSessionLocations() {
|
|
105
|
+
return { locations: [] };
|
|
106
|
+
}
|
|
107
|
+
async clearSession() {
|
|
108
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
109
|
+
}
|
|
110
|
+
async getSessionLocationsCount() {
|
|
111
|
+
return { count: 0 };
|
|
112
|
+
}
|
|
113
|
+
// ---------------- Diagnostics & OEMs ----------------
|
|
114
|
+
async getDiagnostics() {
|
|
115
|
+
var _a, _b;
|
|
116
|
+
return {
|
|
117
|
+
isRunning: this.watchId !== null,
|
|
118
|
+
locationServicesEnabled: 'geolocation' in navigator,
|
|
119
|
+
lastLocationAt: (_b = (_a = this.lastLocation) === null || _a === void 0 ? void 0 : _a.time) !== null && _b !== void 0 ? _b : null,
|
|
120
|
+
manufacturer: 'web',
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
async isIgnoringBatteryOptimizations() {
|
|
124
|
+
return { whitelisted: true };
|
|
125
|
+
}
|
|
126
|
+
async requestIgnoreBatteryOptimizations() {
|
|
127
|
+
return { whitelisted: true };
|
|
128
|
+
}
|
|
129
|
+
async openBatterySettings() {
|
|
130
|
+
/* no-op */
|
|
131
|
+
}
|
|
132
|
+
async openAutoStartSettings() {
|
|
133
|
+
return { opened: false, manufacturer: 'web', screen: '' };
|
|
134
|
+
}
|
|
135
|
+
async getManufacturerHelp() {
|
|
136
|
+
return { manufacturer: 'web', steps: [] };
|
|
137
|
+
}
|
|
138
|
+
async getPluginVersion() {
|
|
139
|
+
return { version: '1.0.0' };
|
|
140
|
+
}
|
|
141
|
+
// ---------------- Permissions ----------------
|
|
142
|
+
async checkPermissions() {
|
|
143
|
+
const perms = navigator
|
|
144
|
+
.permissions;
|
|
145
|
+
if (perms === null || perms === void 0 ? void 0 : perms.query) {
|
|
146
|
+
try {
|
|
147
|
+
const result = await perms.query({ name: 'geolocation' });
|
|
148
|
+
return { location: result.state };
|
|
149
|
+
}
|
|
150
|
+
catch (_a) {
|
|
151
|
+
/* fall through to probe */
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
return { location: 'prompt' };
|
|
155
|
+
}
|
|
156
|
+
async requestPermissions() {
|
|
157
|
+
if (!('geolocation' in navigator)) {
|
|
158
|
+
return { location: 'denied' };
|
|
159
|
+
}
|
|
160
|
+
return new Promise((resolve) => {
|
|
161
|
+
navigator.geolocation.getCurrentPosition(() => resolve({ location: 'granted' }), (err) => {
|
|
162
|
+
resolve({
|
|
163
|
+
location: err.code === err.PERMISSION_DENIED ? 'denied' : 'prompt',
|
|
164
|
+
});
|
|
165
|
+
}, { enableHighAccuracy: false, maximumAge: 60000, timeout: 5000 });
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
async requestBackgroundLocationPermission() {
|
|
169
|
+
return { granted: true, notRequired: true };
|
|
170
|
+
}
|
|
171
|
+
async requestActivityRecognitionPermission() {
|
|
172
|
+
return { granted: true, notRequired: true };
|
|
173
|
+
}
|
|
174
|
+
async requestNotificationPermission() {
|
|
175
|
+
if (typeof Notification === 'undefined') {
|
|
176
|
+
return { granted: true, notRequired: true };
|
|
177
|
+
}
|
|
178
|
+
if (Notification.permission === 'granted') {
|
|
179
|
+
return { granted: true };
|
|
180
|
+
}
|
|
181
|
+
try {
|
|
182
|
+
const result = await Notification.requestPermission();
|
|
183
|
+
return result === 'granted'
|
|
184
|
+
? { granted: true }
|
|
185
|
+
: { granted: false, denied: ['notifications'] };
|
|
186
|
+
}
|
|
187
|
+
catch (_a) {
|
|
188
|
+
return { granted: false, denied: ['notifications'] };
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
async showAppSettings() {
|
|
192
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
193
|
+
}
|
|
194
|
+
async openSettings() {
|
|
195
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
196
|
+
}
|
|
197
|
+
async showLocationSettings() {
|
|
198
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
199
|
+
}
|
|
200
|
+
// ---------------- Tasks ----------------
|
|
201
|
+
async startTask() {
|
|
202
|
+
return { taskKey: 0 };
|
|
203
|
+
}
|
|
204
|
+
async endTask(_options) {
|
|
205
|
+
/* no-op */
|
|
206
|
+
}
|
|
207
|
+
async triggerSOS(payload) {
|
|
208
|
+
var _a;
|
|
209
|
+
this.notifyListeners('sos', Object.assign(Object.assign({}, (payload !== null && payload !== void 0 ? payload : {})), { location: (_a = this.lastLocation) !== null && _a !== void 0 ? _a : undefined }));
|
|
210
|
+
}
|
|
211
|
+
async headlessTask() {
|
|
212
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
213
|
+
}
|
|
214
|
+
// ---------------- Config & logs ----------------
|
|
215
|
+
async getConfig() {
|
|
216
|
+
return Object.assign({}, this.config);
|
|
217
|
+
}
|
|
218
|
+
async getLogEntries(_options) {
|
|
219
|
+
return { entries: [] };
|
|
220
|
+
}
|
|
221
|
+
// ---------------- Helpers ----------------
|
|
222
|
+
toLocation(pos) {
|
|
223
|
+
var _a, _b, _c, _d;
|
|
224
|
+
const c = pos.coords;
|
|
225
|
+
return {
|
|
226
|
+
id: pos.timestamp,
|
|
227
|
+
provider: 'gps',
|
|
228
|
+
locationProvider: 0,
|
|
229
|
+
time: pos.timestamp,
|
|
230
|
+
latitude: c.latitude,
|
|
231
|
+
longitude: c.longitude,
|
|
232
|
+
accuracy: (_a = c.accuracy) !== null && _a !== void 0 ? _a : 0,
|
|
233
|
+
speed: (_b = c.speed) !== null && _b !== void 0 ? _b : 0,
|
|
234
|
+
altitude: (_c = c.altitude) !== null && _c !== void 0 ? _c : 0,
|
|
235
|
+
bearing: (_d = c.heading) !== null && _d !== void 0 ? _d : 0,
|
|
236
|
+
};
|
|
237
|
+
}
|
|
238
|
+
toError(err) {
|
|
239
|
+
return { code: err.code, message: err.message };
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
//# sourceMappingURL=web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"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"}
|