MDL-52127 js: check YUI modules with eslint
[moodle.git] / Gruntfile.js
index fb30ace..f152d3e 100644 (file)
@@ -77,6 +77,12 @@ module.exports = function(grunt) {
             options: { quiet: !grunt.option('show-lint-warnings') },
             // Check AMD files with standard config
             amd: { src: amdSrc },
             options: { quiet: !grunt.option('show-lint-warnings') },
             // Check AMD files with standard config
             amd: { src: amdSrc },
+            // Some rules disabled for YUI config, because we don't do rollup magic, so its able to be accurate
+            // about undefined items.
+            yui: {
+               src: ['**/yui/src/**/*.js'],
+               options: {globals: ['Y', 'YUI'], rules: {'no-undef': 'off', 'no-unused-vars': 'off', 'no-empty': 'off'} }
+            }
         },
         uglify: {
             amd: {
         },
         uglify: {
             amd: {
@@ -112,7 +118,7 @@ module.exports = function(grunt) {
             },
             yui: {
                 files: ['**/yui/src/**/*.js'],
             },
             yui: {
                 files: ['**/yui/src/**/*.js'],
-                tasks: ['shifter']
+                tasks: ['yui']
             },
         },
         shifter: {
             },
         },
         shifter: {
@@ -215,7 +221,7 @@ module.exports = function(grunt) {
     tasks.startup = function() {
         // Are we in a YUI directory?
         if (path.basename(path.resolve(cwd, '../../')) == 'yui') {
     tasks.startup = function() {
         // Are we in a YUI directory?
         if (path.basename(path.resolve(cwd, '../../')) == 'yui') {
-            grunt.task.run('shifter');
+            grunt.task.run('yui');
         // Are we in an AMD directory?
         } else if (inAMD) {
             grunt.task.run('amd');
         // Are we in an AMD directory?
         } else if (inAMD) {
             grunt.task.run('amd');
@@ -252,8 +258,9 @@ module.exports = function(grunt) {
 
     // Register JS tasks.
     grunt.registerTask('shifter', 'Run Shifter against the current directory', tasks.shifter);
 
     // Register JS tasks.
     grunt.registerTask('shifter', 'Run Shifter against the current directory', tasks.shifter);
+    grunt.registerTask('yui', ['eslint:yui', 'shifter']);
     grunt.registerTask('amd', ['eslint:amd', 'jshint', 'uglify']);
     grunt.registerTask('amd', ['eslint:amd', 'jshint', 'uglify']);
-    grunt.registerTask('js', ['amd', 'shifter']);
+    grunt.registerTask('js', ['amd', 'yui']);
 
     // Register CSS taks.
     grunt.registerTask('css', ['less:bootstrapbase']);
 
     // Register CSS taks.
     grunt.registerTask('css', ['less:bootstrapbase']);