Nutella Peanut-Butter Marshmallow

    sleep-ts
    TypeScript icon, indicating that this package has built-in type declarations

    0.1.1 • Public • Published

    sleep-ts npm npm Build Status codecov Known Vulnerabilities

    Pause JavaScript execution for a specified amount of time using Promises. Works elegantly with async/await and accepts flexible time formats like '3s' and '1h' (any string that can be parsed by the ms package). Implemented in TypeScript.

    Installation

    $ yarn add sleep-ts
    # or 
    $ npm install --save sleep-ts

    Usage

    import {sleep} from 'sleep-ts';
    // or
    const sleep = require('sleep-ts').sleep;
     
    // With async/await
    (async function slowHelloWorld() {
        console.log('Hello');
     
        // a number argument is treated as milliseconds, so this will
        // sleep for 1 second
        await sleep(1000);
     
        // a string argument is parsed, so this will sleep for 2 seconds
        await sleep('2s');
     
        console.log('World');
    })()
     
    // With raw Promises
    sleep(4000).then(() => {
        console.log('PING');
     
        // If you pass a second argument, the sleep Promise will
        // resolve with the given value.
        return sleep(3000, 'PONG');
    }).then(response => {
        console.log(response);
    });
     

    Output:

    Hello
    # 3 seconds later 
    World
    # 1 second later 
    PING
    # 3 seconds later 
    PONG

    Alternatives

    • If you don't care about the fancy time format parsing, you can use sleep-promise, which might save you a subdependency on the ms package.
    • Use setTimeout if you're okay with using callbacks.

    Other Languages

    License

    MIT

    Install

    npm i sleep-ts

    DownloadsWeekly Downloads

    1,508

    Version

    0.1.1

    License

    MIT

    Unpacked Size

    8.16 kB

    Total Files

    8

    Last publish

    Collaborators

    • dguo