mirror of
https://github.com/bower/bower.git
synced 2026-02-12 15:05:05 -05:00
- Changed way renderers work - Move worker to a separate module - Improve loglevel - Minor tweaks - Fix tests
37 lines
839 B
JavaScript
37 lines
839 B
JavaScript
var Q = require('q');
|
|
|
|
// Similar to Q.all but also propagates progress events
|
|
function all(promises) {
|
|
var deferred = Q.defer();
|
|
|
|
promises.forEach(function (promise) {
|
|
if (promise && promise.progress) {
|
|
promise.progress(deferred.notify);
|
|
}
|
|
});
|
|
|
|
Q.all(promises)
|
|
.then(deferred.resolve, deferred.reject);
|
|
|
|
return deferred.promise;
|
|
}
|
|
|
|
// Similar to Q.allResolved but also propagates progress events
|
|
function allResolved(promises) {
|
|
var deferred = Q.defer();
|
|
|
|
promises.forEach(function (promise) {
|
|
if (promise && promise.progress) {
|
|
promise.progress(deferred.notify);
|
|
}
|
|
});
|
|
|
|
Q.allResolved(promises)
|
|
.then(deferred.resolve, deferred.reject);
|
|
|
|
return deferred.promise;
|
|
}
|
|
|
|
module.exports.all = all;
|
|
module.exports.allResolved = allResolved;
|