Valetudo/.eslintrc.json

105 lines
2.7 KiB
JSON

{
"env": {
"browser": true,
"commonjs": true,
"es6": true,
"node": true,
"mocha": true
},
"plugins": ["jsdoc", "sort-keys-fix", "sort-requires", "node", "regexp"],
"extends": ["eslint:recommended", "plugin:regexp/recommended"],
"globals": {
"Atomics": "readonly",
"SharedArrayBuffer": "readonly"
},
"parserOptions": {
"ecmaVersion": 2020,
"sourceType": "module"
},
"settings": {
"jsdoc": {
"mode": "closure",
"tagNamePreference": {
"returns": "returns",
"augments": "extends"
}
}
},
"rules": {
"no-console": "error",
"no-labels": "error",
"max-classes-per-file": "error",
"eqeqeq": "error",
"curly": "error",
"default-case-last": "error",
"block-scoped-var": "error",
"no-new": "error",
"no-multi-str": "error",
"no-new-wrappers": "error",
"no-sequences": "error",
"no-self-compare": "error",
"no-multi-assign": "error",
"no-whitespace-before-property": "error",
"no-magic-numbers": ["off", { "ignoreArrayIndexes": true }],
"no-unused-vars": ["warn", { "args": "none" }],
"object-shorthand": ["error", "never"],
"no-restricted-syntax": [
"error",
"[generator=true]"
],
"jsdoc/check-alignment": "error",
"jsdoc/check-param-names": "error",
"jsdoc/check-tag-names": "error",
"jsdoc/check-types": "error",
"jsdoc/implements-on-classes": "error",
"jsdoc/newline-after-description": "error",
"jsdoc/no-undefined-types": "error",
"jsdoc/require-param": "error",
"jsdoc/require-param-name": "error",
"jsdoc/require-param-type": "error",
"jsdoc/require-returns-check": "error",
"jsdoc/require-returns-type": "error",
"sort-requires/sort-requires": "warn",
"operator-linebreak": ["error", "after"],
"no-unneeded-ternary": ["error", { "defaultAssignment": false }],
"regexp/no-unused-capturing-group": "off",
"regexp/prefer-w": "off",
"regexp/prefer-d": "off",
"regexp/no-useless-escape": "off",
"regexp/use-ignore-case": "off",
"no-empty": "off",
"brace-style": "off",
"no-trailing-spaces": "off",
"keyword-spacing": "off",
"eol-last": "off",
"no-multi-spaces": "off",
"semi": "off",
"quotes": "off",
"indent": "off"
},
"overrides": [
{
"files": ["lib/**/index.js"],
"rules": {
"sort-keys-fix/sort-keys-fix": "warn"
}
},
{
"files": ["index.js", "lib/**/*.js", "util/**/*.js"],
"parserOptions": {
"ecmaVersion": 2020
},
"extends": ["eslint:recommended", "plugin:node/recommended"],
"rules": {
"no-process-exit": "off",
"node/no-process-exit": "off"
}
}
]
}