mirror of
https://github.com/moodle/moodle.git
synced 2025-03-22 08:30:04 +01:00
Instead of having the stricter configuration for all files, use the less strict default config and switch to the stricter config for building AMD modules. This means that the eslint commandline/editor inspections will work better for all files and not generate false positives when using editor integrations. But since grunt is required to build AMD modules we still get the stricter checking for those files on build.
165 lines
5.5 KiB
Plaintext
165 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. Commented out rules with 'DEFINE POLICY' are rules Dan P has flagged
|
|
// for discussion and possible enable soon.
|
|
// === Possible Errors ===
|
|
// DEFINE POLICY: 'comma-dangle': ['off', 'always'],
|
|
'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',
|
|
// Disabled for YUI rollups, enabled by grunt for AMD: 'no-empty': 'error',
|
|
'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 }],
|
|
'valid-typeof': 'error',
|
|
|
|
// === Best Practices ===
|
|
// (these mostly match our jshint config)
|
|
'curly': 'error',
|
|
'dot-notation': 'warn',
|
|
'no-alert': 'warn',
|
|
'no-caller': 'error',
|
|
'no-case-declarations': 'error',
|
|
'no-empty-pattern': 'error',
|
|
'no-empty-function': 'warn',
|
|
//DEFINE POLICY: 'no-eq-null': 'warn',
|
|
'no-eval': 'error',
|
|
//DEFINE POLICY: 'no-extra-bind': 'warn',
|
|
'no-fallthrough': 'error',
|
|
//DEFINE POLICY: 'no-implicit-globals': 'warn',
|
|
'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',
|
|
// DEFINE POLICY: no-octal: "error"
|
|
// DEFINE POLICY: 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-unmodified-loop-condition': 'error',
|
|
// Disabled for YUI rollups, enabled by grunt for AMD: 'no-unused-expressions': 'error',
|
|
'no-unused-labels': 'error',
|
|
//DEFINE POLICY: 'no-useless-call': 'error',
|
|
'no-useless-escape': 'warn',
|
|
//DEFINE POLICY: 'no-with': 'error',
|
|
'wrap-iife': ['error', 'any'],
|
|
|
|
// === Variables ===
|
|
'no-delete-var': 'error',
|
|
// Disabled for YUI rollups, enabled by grunt for AMD: 'no-undef': 'off',
|
|
//DEFINE POLICY: 'no-undef-init': 'error',
|
|
// Disabled for YUI rollups, enabled by grunt for AMD: 'no-unused-vars': 'error',
|
|
|
|
// === 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',
|
|
// DEFINE POLICY: turn on some of these max values?
|
|
'max-depth': 'off',
|
|
'max-nested-callbacks': 'off',
|
|
'max-params': 'off',
|
|
'max-statements': 'off',
|
|
'max-statements-per-line': 'off',
|
|
'new-cap': 'warn',
|
|
'new-parens': 'warn',
|
|
'newline-after-var': 'off',
|
|
'newline-before-return': 'off',
|
|
// REVIST POLICY: 'newline-per-chained-call': 'warn',
|
|
'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',
|
|
// DEFINE POLICY: 'no-unneeded-ternary': 'off',
|
|
'no-whitespace-before-property': 'warn',
|
|
// DEFINE POLICY: 'object-curly-newline': 'off,
|
|
// DEFINE POLICY: 'object-curly-spacing': 'off',
|
|
// DEFINE POLICY: 'object-property-newline': 'off',
|
|
'one-var': 'off',
|
|
// DEFINE POLICY: 'one-var-declaration-per-line': 'off',
|
|
'operator-assignment': 'off',
|
|
'operator-linebreak': 'off',
|
|
'padded-blocks': 'off',
|
|
// DEFINE POLICY: 'quote-props': 'off',
|
|
'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',
|
|
}
|
|
}
|