This commit is contained in:
rdl technix 2021-09-03 19:08:30 +02:00
parent 0435a38e00
commit 3409fb8ab8

View file

@ -8,19 +8,24 @@ export class ConnectivityCheck extends Readable {
super()
this.opts = opts
this.retryInterval = opts.retryInterval || 2000
this._action({ internet: false })
this._lastState = { internet: false }
this._action(this._lastState)
this._update()
}
async _update () {
let nextState
try {
const hasInternet = await isOnline(this.opts)
this._action({ internet: hasInternet })
nextState = { internet: hasInternet }
} catch (err) {
this._action({ internet: false })
nextState = { internet: hasInternet }
} finally {
this._timeout = setTimeout(() => this._update(), this.retryInterval)
}
nextState.changed = nextState.internet !== this._lastState.internet
this._action(nextState)
this._lastState = nextState
}
_destroy () {