Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

async-autotarget

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

async-autotarget

Select a specific subtree of required functions from an input object appropriate for async.auto()

  • 0.0.2
  • latest
  • npm
  • Socket score

Version published
Weekly downloads
0
Maintainers
1
Weekly downloads
 
Created
Source

async-autotarget

Select a specific subtree (or union of subtrees) of required functions from an input object appropriate for async.auto() [1]. The goal is to simplify writing async workflows with async.auto.

  1. https://github.com/caolan/async#auto

example

var async = require('async');
var autotarget = require('async-autotarget');

// assume you have a bunch of functions which do IO to get you cool stuff, and some depend on the results of others
var everything = {
  'vase': getVase,
  'roses': [vase, getRoses],
  'candles': ['roses', getCandles],
  'oysters': getOysters,
  'dessert': getDessert,
  'movie': getMovie,
  'popcorn': ['movie', getPopcorn] // no point in popcorn if you don't have a movie
};

// Some nights you want to have a lovely evening with all the fixings
function lovelyEvening(callback) {
  async.auto(everything, function(err, evening) {
    if (err) {
      process.stderr.write("It was not meant to be.\n");
      callback(err);
      return;
    }
    callback(null, evening);
  });
}

// Sometime you really just want the movie and the popcorn, nothing wrong with that
function movieNight(callback) {
  // popcorn requires a movie in `everything`, so just need to select 'popcorn' here
  async.auto(autotarget(everything, 'popcorn'), callback);
}

// You can pass an array to get the union of two subtrees also (this lets you get dessert too)
function movieNightWithDessert(callback) {
  async.auto(autotarget(everything, ['popcorn', 'dessert']), callback);
}

Keywords

FAQs

Package last updated on 12 Mar 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc