0.3.0 • Published 9 months ago
@luolapeikko/sleep v0.3.0
Sleep promise with Abort support
This module includes open telemetry instrumentation to track more detailed sleep functionality and optional abort calls.
should work on both browser and nodejs
install
npm i @luolapeikko/sleep @opentelemetry/apiexamples
await sleep(1000); // plain sleep
const controller = new AbortController();
await sleep(1000, {signal: controller.signal}); // sleep with abort signal
await sleep(1000, {signal: controller.signal, abortThrows: true}); // sleep with abort signal and throws SleepAbortError when abortedif adding abortThrows option true, it will throw SleepAbortError instance when aborted
exampes as sleep Result
const res = await sleepResult(1000); // plain sleep
const controller = new AbortController();
const res = await sleepResult(1000, {signal: controller.signal}); // sleep with abort signal
if (res.isErr) {
/* something was wrong on arguments */
}
const res = await sleepResult(1000, {signal: controller.signal, abortThrows: true}); // sleep with abort signal and throws SleepAbortError when aborted
if (res.isErr) {
/* something was wrong on arguments or have aborted with SleepAbortError */
}