then-all-in

Constructs a promise for an object whose values are promises.

npm install then-all-in
8 downloads in the last day
21 downloads in the last week
33 downloads in the last month

then-all-in

then-all-in is an object-aware variant of then-all. The allIn function returns a promise that is fulfilled with a new object containing the fulfillment value of each object member, or rejected with the same reason as the first rejected promise. This form can be helpful for conditionally queueing asynchronous operations.

$ npm i then-all-in

Example

var allIn = require('then-all-in');

app.patch('/account/:id', function(request, response, next) {
    var changes = {},
        body = request.body;

    // Assume `Account.get` constructs a promise for an account model.
    var account = Account.get(request.params.id);

    if (body.email != account.email) {
        // Assume `#setEmail()` is asynchronous.
        changes.email = account.setEmail(body.email);
    }

    if (body.phone != account.phone) {
        changes.phone = account.setPhone(body.phone);
    }

    allIn(changes).done(function() {
        response.send(204);
    }, next);
});

License

MIT.

npm loves you