@elshaer/homebridge-lg-thinq
Version:
A Homebridge plugin for controlling/monitoring LG ThinQ device via LG ThinQ platform.
36 lines • 1.04 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Session = void 0;
class Session {
constructor(_accessToken, _refreshToken, expiresIn) {
this._accessToken = _accessToken;
this._refreshToken = _refreshToken;
this.expiresIn = expiresIn;
this._refreshToken = _refreshToken;
this.newToken(_accessToken, expiresIn);
}
newToken(accessToken, expiresIn) {
this._accessToken = accessToken;
this.expiresIn = expiresIn;
}
get accessToken() {
return this._accessToken;
}
get refreshToken() {
return this._refreshToken;
}
hasToken() {
return !!this._accessToken;
}
isTokenExpired() {
return this.expiresOn < Session.getCurrentEpoch();
}
hasValidToken() {
return this.hasToken() && !this.isTokenExpired();
}
static getCurrentEpoch() {
return Math.round(new Date().getTime() / 1000);
}
}
exports.Session = Session;
//# sourceMappingURL=Session.js.map