diff --git a/.eslintrc b/.eslintrc index 6773f25a..8beec8ac 100644 --- a/.eslintrc +++ b/.eslintrc @@ -118,6 +118,7 @@ rules: # http://eslint.org/docs/rules/#nodejs callback-return: 2 + global-require: 2 handle-callback-err: - 2 - ^(e|err|error)$ diff --git a/rules/controller-as-route.js b/rules/controller-as-route.js index fa13104e..1797330d 100644 --- a/rules/controller-as-route.js +++ b/rules/controller-as-route.js @@ -9,9 +9,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { return { CallExpression: function(node) { var routeObject = null; diff --git a/rules/controller-as-vm.js b/rules/controller-as-vm.js index 970aa82b..eec549a0 100644 --- a/rules/controller-as-vm.js +++ b/rules/controller-as-vm.js @@ -11,8 +11,9 @@ */ 'use strict'; +var utils = require('./utils/utils'); + module.exports = function(context) { - var utils = require('./utils/utils'); var badStatements = []; var badCaptureStatements = []; var controllerFunctions = []; diff --git a/rules/controller-as.js b/rules/controller-as.js index 1cfbff9c..a67147d9 100644 --- a/rules/controller-as.js +++ b/rules/controller-as.js @@ -11,8 +11,9 @@ */ 'use strict'; +var utils = require('./utils/utils'); + module.exports = function(context) { - var utils = require('./utils/utils'); var badStatements = []; var controllerFunctions = []; diff --git a/rules/controller-name.js b/rules/controller-name.js index 89705187..dd8bdcce 100644 --- a/rules/controller-name.js +++ b/rules/controller-name.js @@ -12,9 +12,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { return { CallExpression: function(node) { diff --git a/rules/di.js b/rules/di.js index 3c92416b..30b79b48 100644 --- a/rules/di.js +++ b/rules/di.js @@ -8,9 +8,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { var angularNamedObjectList = ['value', 'factory', 'service', 'provider', 'controller', 'filter', 'directive']; function report(node, syntax) { diff --git a/rules/directive-name.js b/rules/directive-name.js index bdead682..f10039b0 100644 --- a/rules/directive-name.js +++ b/rules/directive-name.js @@ -12,8 +12,9 @@ */ 'use strict'; +var utils = require('./utils/utils'); + module.exports = function(context) { - var utils = require('./utils/utils'); if (context.settings.angular === 2) { return {}; } diff --git a/rules/directive-restrict.js b/rules/directive-restrict.js index 46747098..221f4242 100644 --- a/rules/directive-restrict.js +++ b/rules/directive-restrict.js @@ -12,9 +12,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { var options = context.options[0] || {}; var restrictOpt = options.restrict || 'AE'; var explicitRestrict = options.explicit === 'always'; diff --git a/rules/empty-controller.js b/rules/empty-controller.js index b3174699..26d1187f 100644 --- a/rules/empty-controller.js +++ b/rules/empty-controller.js @@ -9,9 +9,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { function report(node, name) { context.report(node, 'The {{ctrl}} controller is useless because empty. You can remove it from your Router configuration or in one of your view', { ctrl: name diff --git a/rules/file-name.js b/rules/file-name.js index d5ef4ac0..6ae8a410 100644 --- a/rules/file-name.js +++ b/rules/file-name.js @@ -13,9 +13,11 @@ */ 'use strict'; +var path = require('path'); + +var utils = require('./utils/utils'); + module.exports = (function() { - var utils = require('./utils/utils'); - var path = require('path'); var fileEnding = '.js'; var separators = { diff --git a/rules/filter-name.js b/rules/filter-name.js index 7fb7983e..0e1d9fcd 100644 --- a/rules/filter-name.js +++ b/rules/filter-name.js @@ -10,9 +10,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { return { CallExpression: function(node) { diff --git a/rules/function-type.js b/rules/function-type.js index 7566c9b9..8a84381c 100644 --- a/rules/function-type.js +++ b/rules/function-type.js @@ -12,8 +12,9 @@ */ 'use strict'; +var utils = require('./utils/utils'); + module.exports = function(context) { - var utils = require('./utils/utils'); var angularObjectList = ['animation', 'config', 'constant', 'controller', 'directive', 'factory', 'filter', 'provider', 'service', 'value', 'decorator']; var configType = context.options[0] || 'anonymous'; var messageByConfigType = { diff --git a/rules/module-dependency-order.js b/rules/module-dependency-order.js index ed459eaa..c63ce015 100644 --- a/rules/module-dependency-order.js +++ b/rules/module-dependency-order.js @@ -14,9 +14,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { var options = context.options[0] || {}; var groupedMode = options.grouped !== false; var moduleRegex; diff --git a/rules/module-getter.js b/rules/module-getter.js index 72e3a389..02e93670 100644 --- a/rules/module-getter.js +++ b/rules/module-getter.js @@ -10,9 +10,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { return { ExpressionStatement: function(node) { diff --git a/rules/module-name.js b/rules/module-name.js index be61a1b9..8c95ed2e 100644 --- a/rules/module-name.js +++ b/rules/module-name.js @@ -11,9 +11,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { return { CallExpression: function(node) { diff --git a/rules/module-setter.js b/rules/module-setter.js index 06b90d8b..42518c1e 100644 --- a/rules/module-setter.js +++ b/rules/module-setter.js @@ -10,10 +10,9 @@ */ 'use strict'; +var utils = require('./utils/utils'); module.exports = function(context) { - var utils = require('./utils/utils'); - return { VariableDeclaration: function(node) { diff --git a/rules/no-controller.js b/rules/no-controller.js index b1d5b531..4d3214d4 100644 --- a/rules/no-controller.js +++ b/rules/no-controller.js @@ -8,9 +8,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { return { CallExpression: function(node) { diff --git a/rules/no-service-method.js b/rules/no-service-method.js index 6767045c..f210c009 100644 --- a/rules/no-service-method.js +++ b/rules/no-service-method.js @@ -9,9 +9,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { return { CallExpression: function(node) { diff --git a/rules/no-services.js b/rules/no-services.js index 66925848..e15a68b7 100644 --- a/rules/no-services.js +++ b/rules/no-services.js @@ -12,9 +12,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { var angularObjectList = ['controller', 'filter', 'directive']; var badServices; var map; diff --git a/rules/rest-service.js b/rules/rest-service.js index 9656f17c..90e2627e 100644 --- a/rules/rest-service.js +++ b/rules/rest-service.js @@ -9,9 +9,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { var angularObjectList = ['controller', 'filter', 'directive', 'service', 'factory', 'provider']; var services = ['$http', '$resource', 'Restangular']; var message = 'You should use the same service ({{method}}) for REST API calls'; diff --git a/rules/service-name.js b/rules/service-name.js index 774b934f..b214f5af 100644 --- a/rules/service-name.js +++ b/rules/service-name.js @@ -11,9 +11,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { return { CallExpression: function(node) { diff --git a/rules/typecheck-array.js b/rules/typecheck-array.js index 32af27a6..fcbbfd42 100644 --- a/rules/typecheck-array.js +++ b/rules/typecheck-array.js @@ -8,9 +8,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { function recordError(node, origin) { if (node.type === 'Literal' && node.value === '[object Array]') { context.report(origin, 'You should use the angular.isArray method', {}); diff --git a/rules/typecheck-date.js b/rules/typecheck-date.js index 95b0b26d..7df5c01d 100644 --- a/rules/typecheck-date.js +++ b/rules/typecheck-date.js @@ -8,9 +8,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { function recordError(node, origin) { if (node.type === 'Literal' && node.value === '[object Date]') { context.report(origin, 'You should use the angular.isDate method', {}); diff --git a/rules/typecheck-function.js b/rules/typecheck-function.js index 2587ad20..6632cb9f 100644 --- a/rules/typecheck-function.js +++ b/rules/typecheck-function.js @@ -8,9 +8,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { function recordError(node, origin) { if (node.type === 'Literal' && (node.value === 'function' || node.value === '[object Function]')) { context.report(origin, 'You should use the angular.isFunction method', {}); diff --git a/rules/typecheck-number.js b/rules/typecheck-number.js index cf12b890..b1fc34fc 100644 --- a/rules/typecheck-number.js +++ b/rules/typecheck-number.js @@ -8,9 +8,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { function recordError(node, origin) { if (node.type === 'Literal' && (node.value === 'number' || node.value === '[object Number]')) { context.report(origin, 'You should use the angular.isNumber method', {}); diff --git a/rules/typecheck-object.js b/rules/typecheck-object.js index 760f85a1..8ac0ade0 100644 --- a/rules/typecheck-object.js +++ b/rules/typecheck-object.js @@ -8,9 +8,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { function recordError(node, origin) { if (node.type === 'Literal' && (node.value === 'object' || node.value === '[object Object]')) { context.report(origin, 'You should use the angular.isObject method', {}); diff --git a/rules/typecheck-regexp.js b/rules/typecheck-regexp.js index c5677bdc..c6e3c9ab 100644 --- a/rules/typecheck-regexp.js +++ b/rules/typecheck-regexp.js @@ -9,9 +9,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { function recordError(node, origin) { if (node.type === 'Literal' && node.value === '[object RegExp]') { context.report(origin, 'You should use the angular.isRegexp method', {}); diff --git a/rules/typecheck-string.js b/rules/typecheck-string.js index 9bdcd0f1..e3a2e147 100644 --- a/rules/typecheck-string.js +++ b/rules/typecheck-string.js @@ -8,9 +8,9 @@ */ 'use strict'; -module.exports = function(context) { - var utils = require('./utils/utils'); +var utils = require('./utils/utils'); +module.exports = function(context) { function recordError(node, origin) { if (node.type === 'Literal' && (node.value === 'string' || node.value === '[object String]')) { context.report(origin, 'You should use the angular.isString method', {}); diff --git a/rules/utils/rulesConfiguration.js b/rules/utils/rulesConfiguration.js index d069ec6b..7adc2370 100644 --- a/rules/utils/rulesConfiguration.js +++ b/rules/utils/rulesConfiguration.js @@ -3,7 +3,7 @@ function Rule(name, config) { this.name = name; this.config = config; - this._requireRule = require('../' + this.name); + this._requireRule = require('../' + this.name); // eslint-disable-line global-require } Rule.prototype = { diff --git a/scripts/docs.js b/scripts/docs.js index 59f39764..ab440295 100644 --- a/scripts/docs.js +++ b/scripts/docs.js @@ -3,7 +3,8 @@ var fs = require('fs'); var parseComments = require('parse-comments'); var _ = require('lodash'); -var eslintAngularIndex = require('../index.js'); +var eslintAngularIndex = require('../index'); +var ruleCategories = require('./ruleCategories.json'); var RuleTester = require('eslint').RuleTester; var templates = require('./templates.js'); @@ -41,8 +42,6 @@ function createDocFiles(cb) { * @param cb callback */ function updateReadme(readmePath, cb) { - var ruleCategories = require('./ruleCategories.json'); - ruleCategories.rulesByCategory = _.groupBy(this.rules, 'category'); // filter categories without rules @@ -192,7 +191,7 @@ function _createRule(ruleName) { } // load rule module for tests - rule.module = require('../rules/' + rule.ruleName); + rule.module = require('../rules/' + rule.ruleName); // eslint-disable-line global-require // load examples, prepare them for the tests and group the for the template rule.allExamples = _loadExamples(rule);