mirror of
https://github.com/moodle/moodle.git
synced 2025-01-18 22:08:20 +01:00
ad3f8cd18c
Instead of using the more rollup-tolerant config for all files, make the configuration stricter by default but lower in grunt for yui modules. This means that manual runs (prechecker) or editor integrations will flag up the errors as well as grunt. Also add ignore lines to the core files so that eslint isn't noisy when not running with grunt.
173 lines
5.5 KiB
Plaintext
173 lines
5.5 KiB
Plaintext
{
|
|
'env': {
|
|
'browser': true,
|
|
'amd': true
|
|
},
|
|
'globals': {
|
|
'M': true,
|
|
'Y': true
|
|
},
|
|
'rules': {
|
|
// See http://eslint.org/docs/rules/ for all rules and explanations of all
|
|
// rules.
|
|
|
|
// === Possible Errors ===
|
|
'comma-dangle': 'off',
|
|
'no-cond-assign': 'error',
|
|
'no-console': 'error',
|
|
'no-constant-condition': 'error',
|
|
'no-control-regex': 'error',
|
|
'no-debugger': 'error',
|
|
'no-dupe-args': 'error',
|
|
'no-dupe-keys': 'error',
|
|
'no-duplicate-case': 'error',
|
|
'no-empty': 'warn',
|
|
'no-empty-character-class': 'error',
|
|
'no-ex-assign': 'error',
|
|
'no-extra-boolean-cast': 'error',
|
|
'no-extra-parens': 'off',
|
|
'no-extra-semi': 'error',
|
|
'no-func-assign': 'error',
|
|
'no-inner-declarations': 'error',
|
|
'no-invalid-regexp': 'error',
|
|
'no-irregular-whitespace': 'error',
|
|
'no-negated-in-lhs': 'error',
|
|
'no-obj-calls': 'error',
|
|
'no-prototype-builtins': 'off',
|
|
'no-regex-spaces': 'error',
|
|
'no-sparse-arrays': 'error',
|
|
'no-unexpected-multiline': 'error',
|
|
'no-unreachable': 'warn',
|
|
'no-unsafe-finally': 'error',
|
|
'use-isnan': 'error',
|
|
'valid-jsdoc': ['warn', { 'requireReturn': false, 'requireParamDescription': false, 'requireReturnDescription': false }],
|
|
'valid-typeof': 'error',
|
|
|
|
// === Best Practices ===
|
|
// (these mostly match our jshint config)
|
|
'array-callback-return': 'warn',
|
|
'block-scoped-var': 'warn',
|
|
'complexity': 'warn',
|
|
'consistent-return': 'warn',
|
|
'curly': 'error',
|
|
'dot-notation': 'warn',
|
|
'no-alert': 'warn',
|
|
'no-caller': 'error',
|
|
'no-case-declarations': 'error',
|
|
'no-div-regex': 'error',
|
|
'no-empty-pattern': 'error',
|
|
'no-empty-function': 'warn',
|
|
'no-eq-null': 'error',
|
|
'no-eval': 'error',
|
|
'no-extend-native': 'error',
|
|
'no-extra-bind': 'warn',
|
|
'no-fallthrough': 'error',
|
|
'no-floating-decimal': 'warn',
|
|
// Enabled by grunt for AMD modules: 'no-implicit-globals': 'error',
|
|
'no-implied-eval': 'error',
|
|
'no-invalid-this': 'error',
|
|
'no-iterator': 'error',
|
|
'no-labels': 'error',
|
|
'no-loop-func': 'error',
|
|
'no-multi-spaces': 'warn',
|
|
'no-multi-str': 'error',
|
|
'no-native-reassign': 'warn',
|
|
'no-new-func': 'error',
|
|
'no-new-wrappers': 'error',
|
|
'no-octal': 'error',
|
|
'no-octal-escape': 'error',
|
|
'no-proto': 'error',
|
|
'no-redeclare': 'warn',
|
|
'no-return-assign': 'error',
|
|
'no-script-url': 'error',
|
|
'no-self-assign': 'error',
|
|
'no-self-compare': 'error',
|
|
'no-sequences': 'warn',
|
|
'no-throw-literal': 'warn',
|
|
'no-unmodified-loop-condition': 'error',
|
|
'no-unused-expressions': 'error',
|
|
'no-unused-labels': 'error',
|
|
'no-useless-call': 'warn',
|
|
'no-useless-escape': 'warn',
|
|
'no-with': 'error',
|
|
'wrap-iife': ['error', 'any'],
|
|
|
|
// === Variables ===
|
|
'no-delete-var': 'error',
|
|
'no-undef': 'error',
|
|
'no-undef-init': 'error',
|
|
'no-unused-vars': ['error', { 'caughtErrors': 'none', 'argsIgnorePattern': "(e|event)" }],
|
|
|
|
// === Stylistic Issues ===
|
|
'array-bracket-spacing': 'warn',
|
|
'block-spacing': 'warn',
|
|
'brace-style': ['warn', '1tbs'],
|
|
'camelcase': 'warn',
|
|
'comma-spacing': ['warn', { 'before': false, 'after': true }],
|
|
'comma-style': ['warn', 'last'],
|
|
'computed-property-spacing': 'error',
|
|
'consistent-this': 'off',
|
|
'eol-last': 'off',
|
|
'func-names': 'off',
|
|
'func-style': 'off',
|
|
// indent currently not doing well with our wrapping style, so disabled.
|
|
'indent': ['off', 4, { 'SwitchCase': 1 }],
|
|
'key-spacing': ['warn', { 'beforeColon': false, 'afterColon': true, 'mode': minimum }],
|
|
'keyword-spacing': 'warn',
|
|
'linebreak-style': ['error', 'unix'],
|
|
'lines-around-comment': 'off',
|
|
'max-len': ['error', 132],
|
|
'max-lines': 'off',
|
|
'max-depth': 'warn',
|
|
'max-nested-callbacks': ['warn', 5],
|
|
'max-params': 'off',
|
|
'max-statements': 'off',
|
|
'max-statements-per-line': ['warn', { max: 2 }],
|
|
'new-cap': ['warn', { 'properties': false }],
|
|
'new-parens': 'warn',
|
|
'newline-after-var': 'off',
|
|
'newline-before-return': 'off',
|
|
'newline-per-chained-call': 'off',
|
|
'no-array-constructor': 'off',
|
|
'no-bitwise': 'error',
|
|
'no-continue': 'off',
|
|
'no-inline-comments': 'off',
|
|
'no-lonely-if': 'off',
|
|
'no-mixed-operators': 'off',
|
|
'no-mixed-spaces-and-tabs': 'error',
|
|
'no-multiple-empty-lines': 'warn',
|
|
'no-negated-condition': 'off',
|
|
'no-nested-ternary': 'warn',
|
|
'no-new-object': 'off',
|
|
'no-plusplus': 'off',
|
|
'no-spaced-func': 'warn',
|
|
'no-ternary': 'off',
|
|
'no-trailing-spaces': 'error',
|
|
'no-underscore-dangle': 'off',
|
|
'no-unneeded-ternary': 'off',
|
|
'no-whitespace-before-property': 'warn',
|
|
'object-curly-newline': 'off',
|
|
'object-curly-spacing': 'warn',
|
|
'object-property-newline': 'off',
|
|
'one-var': 'off',
|
|
'one-var-declaration-per-line': ['warn', 'initializations'],
|
|
'operator-assignment': 'off',
|
|
'operator-linebreak': 'off',
|
|
'padded-blocks': 'off',
|
|
'quote-props': ['warn', 'as-needed', {'unnecessary': false, 'keywords': true, 'numbers': true}],
|
|
'quotes': 'off',
|
|
'require-jsdoc': 'warn',
|
|
'semi': 'error',
|
|
'semi-spacing': ['warn', {'before': false, 'after': true}],
|
|
'sort-vars': 'off',
|
|
'space-before-blocks': 'warn',
|
|
'space-before-function-paren': ['warn', 'never'],
|
|
'space-in-parens': 'warn',
|
|
'space-infix-ops': 'warn',
|
|
'space-unary-ops': 'warn',
|
|
'spaced-comment': 'warn',
|
|
'unicode-bom': 'error',
|
|
'wrap-regex': 'off',
|
|
}
|
|
}
|