Suspend/resume state machine with linger support. Made for mobile apps.
npm install suspendify
const Suspendify = require('suspendify')
const sus = new Suspendify({
async pollLinger () { // optional
return millisecondsLeftToLinger
}
async suspend () {
// stop your engines
},
async resume () {
// resume your engines
}
})
// suspend but wait up to 30_000
sus.suspend(30_000)
// resume asap
sus.resume()
sus.suspend(time)sus.resume()sus.resuspend(time)sus.resumedAt()sus.suspendedAt()sus.suspendingsus.suspendedsus.resumingsus.resumedApache-2.0