This repository has been archived on 2022-08-19. You can view files and clone it, but cannot push or open issues or pull requests.
hydrogen-web/src/ui/web/dom/OnlineStatus.js
Bruno Windels 1f15ca6498 more WIP
2020-04-18 19:16:16 +02:00

30 lines
674 B
JavaScript

export class OnlineStatus extends ObservableValue {
constructor() {
super();
this._onOffline = this._onOffline.bind(this);
this._onOnline = this._onOnline.bind(this);
}
_onOffline() {
this.emit(false);
}
_onOnline() {
this.emit(true);
}
get value() {
return navigator.onLine;
}
onSubscribeFirst() {
window.addEventListener('offline', this._onOffline);
window.addEventListener('online', this._onOnline);
}
onUnsubscribeLast() {
window.removeEventListener('offline', this._onOffline);
window.removeEventListener('online', this._onOnline);
}
}