drained: regenerate JS

pull/2684/head
Rob Pilling 2023-04-19 18:14:41 +01:00
parent f8fc93301e
commit 96c8b9e49d
3 changed files with 69 additions and 20 deletions

View File

@ -13,8 +13,13 @@ var forceOff = function (name) {
}; };
forceOff("GPS"); forceOff("GPS");
forceOff("HRM"); forceOff("HRM");
NRF.disconnect(); try {
NRF.sleep(); NRF.disconnect();
NRF.sleep();
}
catch (e) {
console.log("couldn't disable ble: ".concat(e));
}
Bangle.removeAllListeners(); Bangle.removeAllListeners();
clearWatch(); clearWatch();
Bangle.setOptions({ Bangle.setOptions({
@ -46,22 +51,53 @@ var draw = function () {
draw(); draw();
}, 60000 - (date.getTime() % 60000)); }, 60000 - (date.getTime() % 60000));
}; };
Bangle.setUI({ var reload = function () {
Bangle.setUI({
mode: "custom", mode: "custom",
remove: function () { remove: function () {
if (nextDraw) if (nextDraw)
clearTimeout(nextDraw); clearTimeout(nextDraw);
nextDraw = undefined; nextDraw = undefined;
}, },
}); btn: function () {
Bangle.CLOCK = 1; E.showPrompt("Restore watch to full power?").then(function (v) {
g.clear(); if (v) {
draw(); drainedRestore();
}
else {
reload();
}
});
}
});
Bangle.CLOCK = 1;
g.clear();
draw();
};
reload();
Bangle.emit("drained", E.getBattery()); Bangle.emit("drained", E.getBattery());
var _a = (require("Storage").readJSON("".concat(app, ".setting.json"), true) || {}).disableBoot, disableBoot = _a === void 0 ? false : _a; var _a = require("Storage").readJSON("".concat(app, ".setting.json"), true) || {}, _b = _a.disableBoot, disableBoot = _b === void 0 ? false : _b, _c = _a.restore, restore = _c === void 0 ? 20 : _c;
function drainedRestore() {
if (disableBoot) {
try {
eval(require('Storage').read('bootupdate.js'));
}
catch (e) {
console.log("error restoring bootupdate:" + e);
}
}
load();
}
if (disableBoot) { if (disableBoot) {
var checkCharge_1 = function () {
if (E.getBattery() < restore)
return;
drainedRestore();
};
if (Bangle.isCharging())
checkCharge_1();
Bangle.on("charging", function (charging) { Bangle.on("charging", function (charging) {
if (charging) if (charging)
eval(require('Storage').read('bootupdate.js')); checkCharge_1();
}); });
} }

View File

@ -6,8 +6,9 @@
return; return;
if (E.getBattery() > threshold_1) if (E.getBattery() > threshold_1)
return; return;
var app = "drained.app.js";
if (disableBoot_1) if (disableBoot_1)
require("Storage").erase(".boot0"); require("Storage").write(".boot0", "if(typeof __FILE__ === \"undefined\" || __FILE__ !== \"".concat(app, "\") setTimeout(load, 100, \"").concat(app, "\");"));
load("drained.app.js"); load(app);
}, interval * 60 * 1000); }, interval * 60 * 1000);
} }

View File

@ -1,12 +1,13 @@
"use strict"; "use strict";
(function (back) { (function (back) {
var _a, _b, _c; var _a, _b, _c, _d;
var SETTINGS_FILE = "drained.setting.json"; var SETTINGS_FILE = "drained.setting.json";
var storage = require("Storage"); var storage = require("Storage");
var settings = storage.readJSON(SETTINGS_FILE, true) || {}; var settings = storage.readJSON(SETTINGS_FILE, true) || {};
(_a = settings.battery) !== null && _a !== void 0 ? _a : (settings.battery = 5); (_a = settings.battery) !== null && _a !== void 0 ? _a : (settings.battery = 5);
(_b = settings.interval) !== null && _b !== void 0 ? _b : (settings.interval = 10); (_b = settings.restore) !== null && _b !== void 0 ? _b : (settings.restore = 20);
(_c = settings.disableBoot) !== null && _c !== void 0 ? _c : (settings.disableBoot = false); (_c = settings.interval) !== null && _c !== void 0 ? _c : (settings.interval = 10);
(_d = settings.disableBoot) !== null && _d !== void 0 ? _d : (settings.disableBoot = false);
var save = function () { var save = function () {
storage.writeJSON(SETTINGS_FILE, settings); storage.writeJSON(SETTINGS_FILE, settings);
}; };
@ -43,5 +44,16 @@
save(); save();
}, },
}, },
"Restore watch at %": {
value: settings.restore,
min: 0,
max: 95,
step: 5,
format: function (v) { return "".concat(v, "%"); },
onchange: function (v) {
settings.restore = v;
save();
},
},
}); });
}); });