Commit 61762f3 for mammothjs
commit 61762f3078f0c4aa822f8ad469746f51eb5b6165
Author: Michael Williamson <mike@zwobble.org>
Date: Thu Sep 17 00:04:13 2026 +0100
Implement forEachSeries() in promises module
diff --git a/lib/promises.js b/lib/promises.js
index f008200..0da48bb 100644
--- a/lib/promises.js
+++ b/lib/promises.js
@@ -7,8 +7,23 @@ exports.resolve = bluebird.resolve;
exports.reject = bluebird.reject;
exports.forEachSeries = function(array, func) {
- return bluebird.mapSeries(array, func).then(function() {
- });
+ var arrayIndex = 0;
+
+ var deferred = defer();
+
+ var next = function() {
+ if (arrayIndex < array.length) {
+ var element = array[arrayIndex];
+ arrayIndex++;
+ func(element).then(next, deferred.reject);
+ } else {
+ deferred.resolve();
+ }
+ };
+
+ next();
+
+ return deferred.promise;
};
var props = exports.props = function(obj) {