91 lines
1.9 KiB
JavaScript
91 lines
1.9 KiB
JavaScript
module.exports = {
|
|
env: {
|
|
node: true,
|
|
browser: true,
|
|
es6: true,
|
|
},
|
|
extends: ['eslint:recommended'],
|
|
parserOptions: {
|
|
ecmaVersion: 2020,
|
|
sourceType: 'module',
|
|
},
|
|
rules: {
|
|
curly: ['error', 'multi-line'],
|
|
eqeqeq: ['error', 'always'],
|
|
semi: ['error', 'never'],
|
|
indent: [
|
|
'error',
|
|
2,
|
|
{
|
|
SwitchCase: 1,
|
|
},
|
|
],
|
|
quotes: [
|
|
'error',
|
|
'single',
|
|
{
|
|
avoidEscape: true,
|
|
allowTemplateLiterals: true,
|
|
},
|
|
],
|
|
'key-spacing': [
|
|
'error',
|
|
{
|
|
beforeColon: false,
|
|
afterColon: true,
|
|
mode: 'strict',
|
|
},
|
|
],
|
|
'no-empty': 'error',
|
|
'no-else-return': 'error',
|
|
'no-multi-spaces': 'error',
|
|
'require-await': 'error',
|
|
'brace-style': ['error', 'stroustrup'],
|
|
'spaced-comment': ['error', 'always'],
|
|
'arrow-spacing': 'error',
|
|
'no-duplicate-imports': 'error',
|
|
'comma-spacing': [
|
|
'error',
|
|
{
|
|
before: false,
|
|
after: true,
|
|
},
|
|
],
|
|
'default-case': 'error',
|
|
'consistent-this': ['error', '_this'],
|
|
'max-depth': ['error', 6],
|
|
'max-lines': ['error', 2000],
|
|
'no-multi-str': 'error',
|
|
'space-infix-ops': 'error',
|
|
'space-before-blocks': ['error', 'always'],
|
|
'space-before-function-paren': [
|
|
'error',
|
|
{
|
|
named: 'never',
|
|
anonymous: 'never',
|
|
asyncArrow: 'always',
|
|
},
|
|
],
|
|
'keyword-spacing': ['error'],
|
|
'prefer-const': 'error',
|
|
'no-useless-return': 'error',
|
|
'array-bracket-spacing': 'error',
|
|
'no-useless-escape': 'off',
|
|
'no-case-declarations': 'off',
|
|
'no-eval': 'error',
|
|
'no-var': 'error',
|
|
'no-with': 'error',
|
|
'no-alert': 'warn',
|
|
'no-console': 'warn',
|
|
'no-debugger': 'warn',
|
|
},
|
|
overrides: [
|
|
{
|
|
files: ['**/__tests__/*.{j,t}s?(x)', '**/tests/unit/**/*.spec.{j,t}s?(x)'],
|
|
env: {
|
|
jest: true,
|
|
},
|
|
},
|
|
],
|
|
};
|