Nuclear Powered Marshmallows
    Have ideas to improve npm?Join in the discussion! »

    promise.any
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/promise.any package

    2.0.2 • Public • Published

    promise.any Version Badge

    Build Status dependency status dev dependency status License Downloads

    npm badge

    ES Proposal spec-compliant shim for Promise.any. Invoke its "shim" method to shim Promise.any if it is unavailable or noncompliant. Note: a global Promise must already exist: the es6-shim is recommended.

    This package implements the es-shim API interface. It works in an ES3-supported environment that has Promise available globally, and complies with the proposed spec.

    Most common usage:

    var assert = require('assert');
    var any = require('promise.any');
    
    var resolved = Promise.resolve(42);
    var rejected = Promise.reject(-1);
    var alsoRejected = Promise.reject(Infinity);
    
    any([resolved, rejected, alsoRejected]).then(function (result) {
    	assert.equal(result, 42);
    });
    
    any([rejected, alsoRejected]).catch(function (error) {
    	assert.ok(error instanceof AggregateError);
    	assert.deepEqual(error.errors, [-1, Infinity]);
    });
    
    any.shim(); // will be a no-op if not needed
    
    Promise.any([resolved, rejected, alsoRejected]).then(function (result) {
    	assert.equal(result, 42);
    });
    
    Promise.any([rejected, alsoRejected]).catch(function (error) {
    	assert.ok(error instanceof AggregateError);
    	assert.deepEqual(error.errors, [-1, Infinity]);
    });

    Tests

    Simply clone the repo, npm install, and run npm test

    Pre-1.0 versions

    The promise.any package was released as now-deprecated v0.1.0 and v0.1.1, as a fork of https://github.com/m0ppers/promise-any.

    Thanks to @sadorlovsky for donating the repo and the promise.any npm package!

    Install

    npm i promise.any

    DownloadsWeekly Downloads

    7,451

    Version

    2.0.2

    License

    MIT

    Unpacked Size

    17 kB

    Total Files

    21

    Last publish

    Collaborators

    • avatar
    • avatar