BangleApps/apps/rep/settings.ts

49 lines
1.0 KiB
TypeScript
Raw Normal View History

2023-07-01 10:54:25 +00:00
(back => {
const SETTINGS_FILE = "rep.setting.json";
const storage = require("Storage")
const settings = (storage.readJSON(SETTINGS_FILE, true) || {}) as RepSettings;
2023-07-01 10:55:00 +00:00
settings.record ??= false;
settings.recordStopOnExit ??= false;
2023-07-01 10:54:25 +00:00
settings.stepMs ??= 5 * 1000;
const save = () => {
storage.writeJSON(SETTINGS_FILE, settings);
};
const menu: Menu = {
"": { "title": "Rep" },
"< Back": back,
/*LANG*/"Fwd/back seconds": {
value: settings.stepMs / 1000,
min: 1,
max: 60,
step: 1,
format: (v: number) => `${v}s`,
onchange: (v: number) => {
settings.stepMs = v * 1000;
save();
},
},
};
2023-07-01 10:55:00 +00:00
if (global["WIDGETS"] && WIDGETS["recorder"]) {
menu[/*LANG*/"Record activity"] = {
value: !!settings.record,
onchange: (v: boolean) => {
settings.record = v;
save();
}
};
menu[/*LANG*/"Stop record on exit"] = {
value: !!settings.recordStopOnExit,
onchange: (v: boolean) => {
settings.recordStopOnExit = v;
save();
}
};
}
2023-07-01 10:54:25 +00:00
E.showMenu(menu);
}) satisfies SettingsFunc