Skip to content
ES Proposal spec-compliant shim for Promise.allSettled
Branch: master
Clone or download
Latest commit d4a5300 May 6, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
test [Fix] when a promise has a poisoned `.then` method, reject the overar… May 5, 2019
.eslintrc [Tests] add `npm run lint` Mar 27, 2019
.gitignore Only apps should have lockfiles Mar 27, 2019
.npmrc
.travis.yml [Tests] up to `node` `v12.1`, `v11.15` May 6, 2019
CHANGELOG.md v1.0.1 May 6, 2019
LICENSE Initial commit Mar 27, 2019
README.md readme Mar 27, 2019
auto.js Initial implementation Mar 27, 2019
implementation.js [Fix] when a promise has a poisoned `.then` method, reject the overar… May 5, 2019
index.js Initial implementation Mar 27, 2019
package.json
polyfill.js Initial implementation Mar 27, 2019
requirePromise.js
shim.js Initial implementation Mar 27, 2019

README.md

promise.allsettled Version Badge

Build Status dependency status dev dependency status License Downloads

npm badge

ES Proposal spec-compliant shim for Promise.allSettled. Invoke its "shim" method to shim Promise.allSettled 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 allSettled = require('promise.allsettled');

var resolved = Promise.resolve(42);
var rejected = Promise.reject(-1);

allSettled([resolved, rejected]).then(function (results) {
	assert.deepEqual(results, [
		{ status: 'fulfilled', value: 42 },
		{ status: 'rejected', reason: -1 }
	]);
});

allSettled.shim(); // will be a no-op if not needed

Promise.allSettled([resolved, rejected]).then(function (results) {
	assert.deepEqual(results, [
		{ status: 'fulfilled', value: 42 },
		{ status: 'rejected', reason: -1 }
	]);
});

Tests

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

You can’t perform that action at this time.