diff --git a/apps/drained/app.js b/apps/drained/app.js index b68a33e44..e8b9bc95d 100644 --- a/apps/drained/app.js +++ b/apps/drained/app.js @@ -13,7 +13,10 @@ var forceOff = function (name) { }; forceOff("GPS"); forceOff("HRM"); +NRF.disconnect(); +NRF.sleep(); Bangle.removeAllListeners(); +clearWatch(); Bangle.setOptions({ wakeOnFaceUp: false, wakeOnTouch: false, diff --git a/apps/drained/boot.js b/apps/drained/boot.js index b6fd3bf35..8a09441db 100644 --- a/apps/drained/boot.js +++ b/apps/drained/boot.js @@ -1,8 +1,10 @@ "use strict"; +var _a = require("Storage") + .readJSON("".concat(app, ".setting.json"), true) || {}, _b = _a.battery, battery = _b === void 0 ? 5 : _b, _c = _a.interval, interval = _c === void 0 ? 10 : _c; var drainedInterval = setInterval(function () { if (Bangle.isCharging()) return; - if (E.getBattery() > 5) + if (E.getBattery() > battery) return; load("drained.app.js"); -}, 5 * 60 * 1000); +}, interval * 60 * 1000); diff --git a/apps/drained/settings.js b/apps/drained/settings.js new file mode 100644 index 000000000..a2ed58163 --- /dev/null +++ b/apps/drained/settings.js @@ -0,0 +1,36 @@ +"use strict"; +(function (back) { + var _a, _b; + var SETTINGS_FILE = "drained.setting.json"; + var storage = require("Storage"); + var settings = storage.readJSON(SETTINGS_FILE, true) || {}; + (_a = settings.battery) !== null && _a !== void 0 ? _a : (settings.battery = 5); + (_b = settings.interval) !== null && _b !== void 0 ? _b : (settings.interval = 10); + var save = function () { + storage.writeJSON(SETTINGS_FILE, settings); + }; + E.showMenu({ + "": { "title": "Drained" }, + "< Back": back, + "Trigger when battery reaches": { + value: settings.battery, + min: 0, + max: 95, + step: 5, + onchange: function (v) { + settings.battery = v; + save(); + }, + }, + "Check every N minutes": { + value: settings.interval, + min: 1, + max: 60 * 2, + step: 5, + onchange: function (v) { + settings.interval = v; + save(); + }, + }, + }); +});