diff options
Diffstat (limited to 'lib/generate/plugin.js')
-rw-r--r-- | lib/generate/plugin.js | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/lib/generate/plugin.js b/lib/generate/plugin.js index ff94483..ca34923 100644 --- a/lib/generate/plugin.js +++ b/lib/generate/plugin.js @@ -65,7 +65,7 @@ Plugin.prototype.normalizeResource = function(resource) { }; // Return resources -Plugin.prototype.getResources = function() { +Plugin.prototype._getResources = function() { var book = this.infos.book; // Nothing specified, fallback to default @@ -80,7 +80,24 @@ Plugin.prototype.getResources = function() { } // Plain data object - return Q(book); + return Q(_.cloneDeep(book)); +}; + +// Normalize resources and return them +Plugin.prototype.getResources = function() { + var that = this; + + + + return this._getResources() + .then(function(resources) { + + _.each(RESOURCES, function(resourceType) { + resources[resourceType] = (resources[resourceType] || []).map(that.normalizeResource); + }); + + return resources; + }); }; // Test if it's a valid plugin @@ -165,7 +182,6 @@ Plugin.normalizeNames = function(names) { // Extract data from a list of plugin Plugin.fromList = function(names, root, generator) { - var that = this; var failed = []; // Load plugins |