You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
23 lines
471 B
23 lines
471 B
'use strict';
|
|
|
|
const pEachSeries = async (iterable, iterator) => {
|
|
let index = 0;
|
|
|
|
for (const value of iterable) {
|
|
// eslint-disable-next-line no-await-in-loop
|
|
const returnValue = await iterator(await value, index++);
|
|
|
|
if (returnValue === pEachSeries.stop) {
|
|
break;
|
|
}
|
|
}
|
|
|
|
return iterable;
|
|
};
|
|
|
|
pEachSeries.stop = Symbol('pEachSeries.stop');
|
|
|
|
module.exports = pEachSeries;
|
|
// TODO: Remove this for the next major release
|
|
module.exports.default = pEachSeries;
|