1.3.0 • Published 6 years ago

promise-timeout v1.3.0

Weekly downloads
49,387
License
MIT
Repository
github
Last release
6 years ago

promise-timeout

A super-simple way to put a timeout on promise resolution.

It assumes you already have either platform support for promises (Node 0.12 or greater), or you have a polyfill (see es6-promise).

Installation

$ npm install promise-timeout

Usage

timeout(promise, timeoutMillis)

Rejects a promise with a TimeoutError if it does not settle within the specified timeout. Parameters:

  • promise: Promise - Promise to monitor.
  • timeoutMillis: number - Number of milliseconds to wait on settling.

TimeoutError

Exception indicating that the timeout expired.

Examples

ES2015:

import { timeout, TimeoutError } from 'promise-timeout';

let somePromise = goDoSomething();

timeout(somePromise, 1000)
  .then((thing) => console.log('I did a thing!'))
  .catch((err) => {
    if (err instanceof TimeoutError) {
      console.error('Timeout :-(');
    }
  });

ES5:

'use strict';

var pt = require('promise-timeout');

var somePromise = goDoSomething();

pt.timeout(somePromise, 1000)
  .then(function (thing) {
    console.log('I did a thing!');
  }).catch(function (err) {
    if (err instanceof pt.TimeoutError) {
      console.error('Timeout :-(');
    }
  });
kafka-publisher-ssprolinklisqvizeontology-dapi-testdoc4k_react_uiisv-lynx-devnow-static-build-test@infinitebrahmanuniverse/nolb-promise-@everything-registry/sub-chunk-2481proxychooserpro-util-packageprolink-connectsfcc-schemas-latestsfcc-schemas@realfun/rfid@rweda/cloud-machine-testingrihandjssignalz@roit/roit-data-firestore@skylineos/clsp-playerraml-1-parser-test-utilsredstone-evm-connectorredstone-nodeserver-core-cubejs@scout_apm/scout-apm@securerpc/local-provider@sift/lib.ldap@wongterrencew/now-whitelisted-static-buildtg4website@truffle/dashboard-provider@you54f/pact-cli@you54f/pact-core@tksolution/tks-datasource-api-core@tksolution/tks-graphql-api-coresail-toolssuntesseds-cctalkfeathers-cctalkmongodb-stashlimestone-nodemeross-cloud-tsmintcore-uimixbee-ts-sdkmongoose-smartcacheledger-wallet-providerleancloud-realtimeleancloud-storagelocal-network-scanjhonny-sdkhomebridge-roomba-stvhomebridge-braavahomebridge-tplink-hs100-lightbulbshomebridge-tplink-lightbulbklf-200-apiiobroker.klf200kafka-publisherjaidbotjdbc-altibaseontology-dapiontology-dapi-desktopontology-ts-sdknow-haskell-builderverpubvectorcalcavalanche-video@wecity/weda-builderaliquammolestiae@alan-eu/now-whitelisted-static-buildvladi-server-core@userbugreport/bugbutton-react@unyxos/working-rcon@vision-design/cli@vision-dev/clicryptosimcube-server-corecubejs-modified-server-corecubejs-server-core@heora/cubejs-server-corecontinuous-streams@general-process/now-static-jamworking-rcon@imvision/clidad-dapidad-ts-sdkdna-ts-sdkcctalkcctalk-devices@chainlink/ea-bootstrapcheck-proxycheck-proxy-advcheck-proxy-new@decentology/dappstarter@classapp-tech/prometheus-integrationclosest-http-endpoint@cortec/core@codefresh-io/cubejs-backend-server-core@cubejs-backend-json-clone/server-core@cryptosat/cryptosimclusterduckzazu-translation
1.3.0

6 years ago

1.2.0

6 years ago

1.1.1

7 years ago

1.1.0

7 years ago

1.0.0

8 years ago