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-2481klf-200-apikafka-publisherleancloud-realtimeleancloud-storageledger-wallet-providerlimestone-nodelocal-network-scanhomebridge-braavahomebridge-tplink-hs100-lightbulbshomebridge-tplink-lightbulbhomebridge-roomba-stviobroker.klf200jdbc-altibasejhonny-sdkjaidbotmintcore-uimixbee-ts-sdkmeross-cloud-tsmongodb-stashmongoose-smartcachenow-haskell-builderzazu-translationworking-rconpro-util-packageprolink-connectproxychoosertg4websitesuntesseontology-dapiontology-dapi-desktopontology-ts-sdkraml-1-parser-test-utilsredstone-evm-connectorredstone-noderihandjssignalzsfcc-schemassfcc-schemas-latestserver-core-cubejssail-toolsverpubvladi-server-corevectorcalc@alan-eu/now-whitelisted-static-build@general-process/now-static-jam@heora/cubejs-server-core@matvp91/webrun@morgs32/webpack@imvision/cli@melonade/melonade-client@metacodelabs/janus-videoroom-web-sdk@membrane/util@olliemurray/cryptosimmod@decentology/dappstarter@dmxjs/prolink-connect@classapp-tech/prometheus-integration@chainlink/ea-bootstrap@codefresh-io/cubejs-backend-server-core@cortec/core@cryptosat/cryptosim@cubejs-backend/standalone@cubejs-backend/server-core@cubejs-backend-json-clone/server-core@ont-community/ontology-ts-sdk-ledger@ont-community/ontology-ts-sdk-trezor@ont-dev/ontology-dapi@ont-dev/ontology-ts-sdk-ledger@pact-foundation/pact-core@ozo/lazy-loader@protoplan/exchange-rates@netsells/simulate-user@mojaloop/sdk-scheme-adapter@mt-cubejs-backend-clone/server-core@nielinjie/multi-repo@securerpc/local-provider@skylineos/clsp-player@roit/roit-data-firestore@sift/lib.ldap@realfun/rfid@scout_apm/scout-apm@wecity/weda-builder@wongterrencew/now-whitelisted-static-build@tksolution/tks-datasource-api-core@tksolution/tks-graphql-api-core@truffle/dashboard-provider@rweda/cloud-machine-testing@userbugreport/bugbutton-react@vision-design/cli@vision-dev/cli@unyxos/working-rconcheck-proxy
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

9 years ago