Ver código fonte

fixing build with subfolders

Rashid Khan 12 anos atrás
pai
commit
4c7f52797f
3 arquivos alterados com 16 adições e 7 exclusões
  1. 1 1
      Gruntfile.js
  2. 14 5
      tasks/options/requirejs.js
  3. 1 1
      tasks/options/uglify.js

+ 1 - 1
Gruntfile.js

@@ -22,7 +22,7 @@ module.exports = function (grunt) {
       var key = option.replace(/\.js$/,'');
       // If key already exists, extend it. It is your responsibility to avoid naming collisions
       config[key] = config[key] || {};
-      grunt.util._.extend(config[key], require(path + option)(config));
+      grunt.util._.extend(config[key], require(path + option)(config,grunt));
     });
     // technically not required
     return config;

+ 14 - 5
tasks/options/requirejs.js

@@ -1,4 +1,4 @@
-module.exports = function(config) {
+module.exports = function(config,grunt) {
   var _c = {
     build: {
       options: {
@@ -63,15 +63,24 @@ module.exports = function(config) {
     }
   ];
 
+  var fs = require('fs');
+  var panelPath = config.srcDir+'/app/panels'
+
   // create a module for each directory in src/app/panels/
-  require('fs')
-    .readdirSync(config.srcDir+'/app/panels')
-    .forEach(function (panelName) {
+  fs.readdirSync(panelPath).forEach(function (panelName) {
+    if(!grunt.file.exists(panelPath+'/'+panelName+'/module.js')) {
+      fs.readdirSync(panelPath+"/"+panelName).forEach(function (subName) {
+        requireModules.push({
+          name: 'panels/'+panelName+'/'+subName+'/module',
+          exclude: ['app']
+        });      })
+    } else {
       requireModules.push({
         name: 'panels/'+panelName+'/module',
         exclude: ['app']
       });
-    });
+    }
+  });
 
   // exclude the literal config definition from all modules
   requireModules

+ 1 - 1
tasks/options/uglify.js

@@ -2,7 +2,7 @@ module.exports = function(config) {
   return {
     dest: {
       expand: true,
-      src: ['**/*.js', '!config.js', '!app/dashboards/*.js'],
+      src: ['**/*.js', '!config.js', '!app/dashboards/*.js', '!app/dashboards/**/*.js',],
       dest: '<%= destDir %>',
       cwd: '<%= destDir %>',
       options: {