JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 14419095
  • Score
    100M100P100Q212631F
  • License MIT

Timeout a promise after a specified amount of time

Package Exports

  • p-timeout

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (p-timeout) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

p-timeout Build Status

Timeout a promise after a specified amount of time

Install

$ npm install p-timeout

Usage

const delay = require('delay');
const pTimeout = require('p-timeout');

const delayedPromise = delay(200);

pTimeout(delayedPromise, 50).then(() => 'foo');
//=> [TimeoutError: Promise timed out after 50 milliseconds]

API

pTimeout(input, milliseconds, [message | fallback])

Returns a decorated input that times out after milliseconds time.

If you pass in a cancelable promise, specifically a promise with a .cancel() method, that method will be called when the pTimeout promise times out.

input

Type: Promise

Promise to decorate.

milliseconds

Type: number

Milliseconds before timing out.

message

Type: string Error
Default: 'Promise timed out after 50 milliseconds'

Specify a custom error message or error.

If you do a custom error, it's recommended to sub-class pTimeout.TimeoutError.

fallback

Type: Function

Do something other than rejecting with an error on timeout.

You could for example retry:

const delay = require('delay');
const pTimeout = require('p-timeout');

const delayedPromise = () => delay(200);

pTimeout(delayedPromise(), 50, () => {
    return pTimeout(delayedPromise(), 300);
});

pTimeout.TimeoutError

Exposed for instance checking and sub-classing.

  • delay - Delay a promise a specified amount of time
  • p-min-delay - Delay a promise a minimum amount of time
  • p-retry - Retry a promise-returning function
  • More…

License

MIT © Sindre Sorhus