blob: ccc336a8e6fb5ca9f774be04dd4fc0f1de3ffcf5 [file] [log] [blame] [raw]
{
"root": true,
"plugins": [
"jsdoc",
"node",
"promise",
"requirejs",
"sonarjs",
"unicorn"
],
"extends": [
"eslint:recommended",
"plugin:requirejs/recommended",
"plugin:node/recommended",
"plugin:unicorn/recommended"
],
"env": {
"mocha": true,
"node": true,
"es6": true
},
"rules": {
"comma-dangle": ["error", "always-multiline"],
"eol-last": ["error", "always"],
"eqeqeq": ["error", "smart"],
"indent": ["error", 4, {"SwitchCase": 1}],
"max-len": ["error", 120, {"ignoreRegExpLiterals": true}],
"max-statements": ["error", 50],
"no-control-regex": 0,
"no-useless-call": "error",
"no-useless-computed-key": "error",
"no-useless-concat": "error",
"no-useless-constructor": "error",
"no-useless-escape": "error",
"no-useless-rename": "error",
"no-useless-return": "error",
"quote-props": ["error", "as-needed"],
"quotes": ["error", "single", {"allowTemplateLiterals": true, "avoidEscape": true}],
"semi": ["error", "always"],
"space-before-function-paren": ["error", {"anonymous": "always", "asyncArrow": "always", "named": "never"}],
"yoda": ["error", "never", {"onlyEquality": true}],
"jsdoc/check-alignment": "warn",
"jsdoc/check-param-names": "warn",
"jsdoc/check-syntax": "warn",
"jsdoc/check-tag-names": "warn",
"jsdoc/check-types": "warn",
"jsdoc/empty-tags": "warn",
"jsdoc/newline-after-description": "warn",
"jsdoc/require-hyphen-before-param-description": "warn",
"jsdoc/valid-types": "warn",
"no-process-exit": "off",
"node/no-unpublished-require": "off",
"node/shebang": "off",
"promise/catch-or-return": "error",
"promise/no-new-statics": "error",
"promise/no-return-wrap": "error",
"promise/param-names": "error",
"promise/valid-params": "error",
"sonarjs/no-collection-size-mischeck": "error",
"sonarjs/no-redundant-boolean": "error",
"sonarjs/no-unused-collection": "error",
"sonarjs/prefer-immediate-return": "error",
"sonarjs/prefer-object-literal": "error",
"sonarjs/prefer-single-boolean-return": "error",
"unicorn/catch-error-name": "off",
"unicorn/consistent-function-scoping": "off",
"unicorn/no-fn-reference-in-iterator": "off",
"unicorn/no-hex-escape": "off",
"unicorn/no-null": "off",
"unicorn/no-reduce": "off",
"unicorn/prefer-add-event-listener": "off",
"unicorn/prefer-flat-map": "error",
"unicorn/prefer-optional-catch-binding": "off",
"unicorn/prefer-number-properties": "off",
"unicorn/prefer-string-slice": "off",
"unicorn/prevent-abbreviations": "off"
},
"parserOptions": {
"ecmaVersion": 2018
},
"globals": {
"BigInt": true
}
}