Merge branch 'release/21.50.0' into master
[gitter.git] / .eslintrc.json
blobc5f3dea6b8faa86e4b48f067cd8c4001fd469b6f
2   "env": {
3     "commonjs": true,
4     "node": true
5   },
6   "parserOptions": {
7     "ecmaVersion": 2018,
8     "sourceType": "script"
9   },
10   "plugins": ["node"],
11   "extends": ["eslint:recommended", "plugin:vue/recommended", "prettier", "prettier/vue"],
12   "rules": {
13     "indent": "off",
14     "comma-dangle": "off",
15     "quotes": "off",
16     "eqeqeq": ["warn", "allow-null"],
17     "strict": ["error", "safe"],
18     "no-unused-vars": ["error"],
19     "no-extra-boolean-cast": ["warn"],
20     "complexity": [
21       "error",
22       {
23         "max": 12
24       }
25     ],
26     "max-statements-per-line": [
27       "error",
28       {
29         "max": 3
30       }
31     ],
32     "no-debugger": "error",
33     "no-dupe-keys": "error",
34     "no-unsafe-finally": "error",
35     "no-with": "error",
36     "no-useless-call": "error",
37     "no-spaced-func": "error",
38     "no-useless-escape": "warn",
39     "max-statements": ["warn", 30],
40     "max-depth": ["error", 4],
41     "no-throw-literal": ["error"],
42     "no-sequences": "error",
43     "no-warning-comments": [
44       "warn",
45       {
46         "terms": ["fixme", "xxx"],
47         "location": "anywhere"
48       }
49     ],
50     "radix": "error",
51     "yoda": "error",
52     "no-nested-ternary": "warn",
53     "no-whitespace-before-property": "error",
54     "no-trailing-spaces": ["error"],
55     "space-in-parens": ["warn", "never"],
56     "max-nested-callbacks": ["error", 6],
57     "eol-last": "warn",
58     "no-mixed-spaces-and-tabs": "error",
59     "no-negated-condition": "warn",
60     "no-unneeded-ternary": "error",
61     "no-use-before-define": ["warn", { "variables": true, "functions": true, "classes": true }],
62     "no-undef": "error",
63     "no-param-reassign": "warn",
64     "no-multi-spaces": [
65       "warn",
66       {
67         "exceptions": {
68           "Property": true
69         }
70       }
71     ],
72     "key-spacing": [
73       "warn",
74       {
75         "singleLine": {
76           "beforeColon": false,
77           "afterColon": true
78         },
79         "multiLine": {
80           "beforeColon": false,
81           "afterColon": true,
82           "mode": "minimum"
83         }
84       }
85     ],
86     "node/no-missing-require": "error",
87     "node/no-missing-import": "error",
88     "node/no-unsupported-features/es-syntax": ["error", {
89       "version": ">=14.0.0 <15.0.0",
90       "ignores": []
91     }],
92     "node/no-unsupported-features/es-builtins":["error", {
93       "version": ">=14.0.0 <15.0.0",
94       "ignores": []
95     }],
96     "vue/no-v-html": "off"
97   }