wallet-storage-client
Version:
Client only Wallet Storage
27 lines • 958 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.TaskClock = void 0;
const WalletMonitorTask_1 = require("./WalletMonitorTask");
class TaskClock extends WalletMonitorTask_1.WalletMonitorTask {
constructor(monitor, triggerMsecs = 1 * monitor.oneSecond) {
super(monitor, TaskClock.taskName);
this.triggerMsecs = triggerMsecs;
this.nextMinute = this.getNextMinute();
}
trigger(nowMsecsSinceEpoch) {
const s = this.storage;
const run = Date.now() > this.nextMinute;
return { run };
}
async runTask() {
const log = `${new Date(this.nextMinute).toISOString()}`;
this.nextMinute = this.getNextMinute();
return log;
}
getNextMinute() {
return Math.ceil(Date.now() / this.monitor.oneMinute) * this.monitor.oneMinute;
}
}
exports.TaskClock = TaskClock;
TaskClock.taskName = 'Clock';
//# sourceMappingURL=TaskClock.js.map