diff --git a/tasks/angular-templates.js b/tasks/angular-templates.js index 3f7904f..8278ec8 100644 --- a/tasks/angular-templates.js +++ b/tasks/angular-templates.js @@ -42,7 +42,7 @@ module.exports = function(grunt) { var compiler = new Compiler(grunt, options, file.cwd); var appender = new Appender(grunt); - var modules = compiler.modules(file.src); + var modules = compiler.modules(file); var compiled = []; for (var module in modules) { diff --git a/tasks/lib/compiler.js b/tasks/lib/compiler.js index 90a5d1e..7906cae 100644 --- a/tasks/lib/compiler.js +++ b/tasks/lib/compiler.js @@ -127,27 +127,30 @@ var Compiler = function(grunt, options, cwd) { /** * Get static or dynamic module name from file. + * @param {Object} files Files source * @param {String} file File name * @return {String} */ - this.module = function(file) { - if (typeof options.module === 'function') { - return options.module(file, options); + this.module = function(files, file) { + var module = files.module || options.module; + + if (typeof module === 'function') { + return module(file, options); } - return options.module; + return module; }; /** * Group files into individual modules - * @param {Array} files Files + * @param {Object} files Files source * @return {Object} Key/Value pair of module + files */ this.modules = function(files) { var modules = {}; - files.forEach(function(file) { - var module = this.module(file); + files.src.forEach(function(file) { + var module = this.module(files, file); if (!modules[module]) { modules[module] = [];