UNPKG

ng-factory

Version:

An **upgradable** development workflow library built on top of Gulp and focused on AngularJS components and applications.

52 lines (43 loc) 1.22 kB
'use strict'; var _ = require('lodash'); var resolve = require('resolve-dep'); var defaultsDeep = _.partialRight(_.merge, function deep(value, other) { if (_.isString(value) || _.isArray(value) || _.isDate(other)) return value; return _.merge(value, other, deep); }); var exports = module.exports = {}; var taker; exports.bind = function(instance) { taker = instance; return exports; }; exports.resolve = function(pattern) { var resolved = resolve.npm(pattern, {type: 'devDependencies'}); return resolved.map(function(module) { return require(module); }); }; exports.registerTasks = function(registries) { registries.forEach(function(module) { var tasks = module.tasks; Object.keys(tasks).forEach(function(task) { taker.registry(new (tasks[task])(taker)); }); }); }; exports.registerIndexes = function(registries, config) { registries.forEach(function(module) { if(module.index) { taker.registry(new (module.index)(taker, config)); } }); }; exports.loadDefaults = function(registries) { var config = {}; registries.forEach(function(module) { if(module.defaults) { defaultsDeep(config, module.defaults); } }); return config; };