Myles Borins 2e54524955
deps: update npm to 7.0.0-rc.3
PR-URL: https://github.com/nodejs/node/pull/35474
Reviewed-By: Ruy Adorno <ruyadorno@github.com>
Reviewed-By: Ujjwal Sharma <ryzokuken@disroot.org>
Reviewed-By: Ben Coe <bencoe@gmail.com>
Reviewed-By: Geoffrey Booth <webmaster@geoffreybooth.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Shelley Vohr <codebytere@gmail.com>
Reviewed-By: Guy Bedford <guybedford@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2020-10-07 09:59:49 -04:00

28 lines
694 B
JavaScript

const allSettled =
Promise.allSettled ? promises => Promise.allSettled(promises)
: promises => {
const reflections = []
for (let i = 0; i < promises.length; i++) {
reflections[i] = Promise.resolve(promises[i]).then(value => ({
status: 'fulfilled',
value,
}), reason => ({
status: 'rejected',
reason,
}))
}
return Promise.all(reflections)
}
module.exports = promises => allSettled(promises).then(results => {
let er = null
const ret = new Array(results.length)
results.forEach((result, i) => {
if (result.status === 'rejected')
throw result.reason
else
ret[i] = result.value
})
return ret
})