yeoman-environment
Advanced tools
Comparing version 1.2.6 to 1.2.7
@@ -216,2 +216,12 @@ 'use strict'; | ||
/** | ||
* Get registered generators names | ||
* | ||
* @return {Array} | ||
*/ | ||
Environment.prototype.getGeneratorNames = function getGeneratorNames() { | ||
return _.uniq(Object.keys(this.getGeneratorsMeta()).map(Environment.namespaceToName)); | ||
}; | ||
/** | ||
* Get a single generator from the registered list of generators. The lookup is | ||
@@ -369,7 +379,9 @@ * based on generator's namespace, "walking up" the namespaces until a matching | ||
// Sort lookups by length so biggest are removed first | ||
var lookups = _(this.lookups).map(path.normalize).sortBy('length').value().reverse(); | ||
var lookups = _(this.lookups.concat(['..'])).map(path.normalize).sortBy('length').value().reverse(); | ||
// if `ns` contains a lookup dir in its path, remove it. | ||
ns = lookups.reduce(function (ns, lookup) { | ||
return ns.replace(new RegExp(escapeStrRe(lookup), 'g'), ''); | ||
// only match full directory (begin with leading slash or start of input, end with trailing slash) | ||
lookup = new RegExp('(?:\\\\|/|^)' + escapeStrRe(lookup) + '(?=\\\\|/)', 'g'); | ||
return ns.replace(lookup, ''); | ||
}, ns); | ||
@@ -386,3 +398,2 @@ | ||
.replace(/[\/\\](index|main)$/, '') // remove `/index` or `/main` | ||
.replace(/\.+/g, '') // remove `.` | ||
.replace(/^[\/\\]+/, '') // remove leading `/` | ||
@@ -389,0 +400,0 @@ .replace(/[\/\\]+/g, ':'); // replace slashes by `:` |
{ | ||
"name": "yeoman-environment", | ||
"version": "1.2.6", | ||
"version": "1.2.7", | ||
"description": "Handles the lifecyle and bootstrapping of generators in a specific environment", | ||
@@ -5,0 +5,0 @@ "license": "BSD-2-Clause", |
30578
875