UNPKG

cv-dialog-sdk

Version:

Catavolt Dialog Javascript API

26 lines (25 loc) 873 B
export class SessionTimer { constructor(remainingSessionTimeFn, checkIntervalMillis, onSessionExpired) { this.remainingSessionTimeFn = remainingSessionTimeFn; this.checkIntervalMillis = checkIntervalMillis; this.onSessionExpired = onSessionExpired; } ; resetSessionTimer() { this.stopSessionTimer(); this.sessionInterval = setInterval(() => { // Log.debug(`SessionTimer: ${this.remainingSessionTimeFn()} < ${this.checkIntervalMillis}`); if (this.remainingSessionTimeFn() < this.checkIntervalMillis) { clearInterval(this.sessionInterval); this.onSessionExpired(); } }, this.checkIntervalMillis); } ; stopSessionTimer() { if (this.sessionInterval) { clearInterval(this.sessionInterval); } } ; }