class Battery { constructor() { this._battery = document.querySelector("#battery-label"); this._info = {}; this._init(); } _updateData() { this._info = lightdm.batteryData; var level = this._info.level; var state = this._info.state; var ac = this._info.ac_status; var icon = 0; var charging = ""; var blevel = Math.floor(level / 10) * 10; icon = `-${blevel}`; charging = ac == 1 ? "-charging" : ""; if (blevel < 10) icon = "-outline"; if (level == 100 && ac == 0) { icon = ""; } if (level >= 0) { this._battery.style.visibility = "visible"; this._battery.innerHTML = ` ${level}%`; } else { this._battery.innerHTML = ""; this._battery.style.visibility = "hidden"; } } _setTimer() { if (!lightdm.can_access_battery) return; this._updateData(); } _init() { this._setTimer(); } }