| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- import db from "./db";
- class Prefs {
- constructor(dbImpl) {
- this.db = dbImpl;
- }
- async setSound(sound) {
- this.db.prefs.put({ key: "sound", value: sound.toString() });
- }
- async sound() {
- const sound = await this.db.prefs.get("sound");
- return sound ? sound.value : "ding";
- }
- async setMinPriority(minPriority) {
- this.db.prefs.put({ key: "minPriority", value: minPriority.toString() });
- }
- async minPriority() {
- const minPriority = await this.db.prefs.get("minPriority");
- return minPriority ? Number(minPriority.value) : 1;
- }
- async setDeleteAfter(deleteAfter) {
- await this.db.prefs.put({ key: "deleteAfter", value: deleteAfter.toString() });
- }
- async deleteAfter() {
- const deleteAfter = await this.db.prefs.get("deleteAfter");
- return deleteAfter ? Number(deleteAfter.value) : 604800; // Default is one week
- }
- async webPushEnabled() {
- const webPushEnabled = await this.db.prefs.get("webPushEnabled");
- return webPushEnabled?.value;
- }
- async setWebPushEnabled(enabled) {
- await this.db.prefs.put({ key: "webPushEnabled", value: enabled });
- }
- }
- const prefs = new Prefs(db());
- export default prefs;
|