]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - .eslintrc.json
Fix lint
[github/Chocobozzz/PeerTube.git] / .eslintrc.json
CommitLineData
a1587156
C
1{
2 "extends": "standard-with-typescript",
3 "rules": {
4 "eol-last": [
5 "error",
6 "always"
7 ],
8 "indent": "off",
9 "no-lone-blocks": "off",
10 "no-mixed-operators": "off",
11 "max-len": [
12 "error",
13 {
14 "code": 140
15 }
16 ],
17 "array-bracket-spacing": [
18 "error",
19 "always"
20 ],
21 "quote-props": [
22 "error",
23 "consistent-as-needed"
24 ],
25 "padded-blocks": "off",
a35a2279 26 "prefer-regex-literals": "off",
a1587156
C
27 "no-async-promise-executor": "off",
28 "dot-notation": "off",
29 "promise/param-names": "off",
30 "import/first": "off",
31 "operator-linebreak": [
32 "error",
33 "after",
34 {
35 "overrides": {
36 "?": "before",
37 ":": "before"
38 }
39 }
40 ],
41 "@typescript-eslint/indent": [
42 "error",
43 2,
44 {
45 "SwitchCase": 1,
ba2684ce
C
46 "MemberExpression": "off",
47 // https://github.com/eslint/eslint/issues/15299
48 "ignoredNodes": ["PropertyDefinition"]
a1587156
C
49 }
50 ],
51 "@typescript-eslint/consistent-type-assertions": [
52 "error",
53 {
54 "assertionStyle": "as"
55 }
56 ],
57 "@typescript-eslint/array-type": [
58 "error",
59 {
60 "default": "array"
61 }
62 ],
63 "@typescript-eslint/restrict-template-expressions": [
64 "off",
65 {
66 "allowNumber": "true"
67 }
68 ],
7fed6375
C
69 "@typescript-eslint/no-this-alias": [
70 "error",
71 {
72 "allowDestructuring": true, // Allow `const { props, state } = this`; false by default
73 "allowedNames": ["self"] // Allow `const self = this`; `[]` by default
74 }
75 ],
bdd428a6 76
d9699428 77 "@typescript-eslint/return-await": "off",
faa9d434
C
78 "@typescript-eslint/dot-notation": "off",
79 "@typescript-eslint/method-signature-style": "off",
d9699428 80 "@typescript-eslint/no-base-to-string": "off",
a1587156
C
81 "@typescript-eslint/quotes": "off",
82 "@typescript-eslint/no-var-requires": "off",
83 "@typescript-eslint/explicit-function-return-type": "off",
84 "@typescript-eslint/promise-function-async": "off",
85 "@typescript-eslint/no-dynamic-delete": "off",
bdd428a6 86 "@typescript-eslint/no-unnecessary-boolean-literal-compare": "off",
a1587156
C
87 "@typescript-eslint/strict-boolean-expressions": "off",
88 "@typescript-eslint/consistent-type-definitions": "off",
89 "@typescript-eslint/no-misused-promises": "off",
90 "@typescript-eslint/no-namespace": "off",
4a8d113b 91 "@typescript-eslint/no-empty-interface": "off",
a1587156 92 "@typescript-eslint/no-extraneous-class": "off",
c158a5fa 93 "@typescript-eslint/no-use-before-define": "off",
98ab5dc8
C
94
95 "require-await": "off",
96 "@typescript-eslint/require-await": "error",
97
a1587156
C
98 // bugged but useful
99 "@typescript-eslint/restrict-plus-operands": "off"
100 },
101 "ignorePatterns": [
102 "node_modules/"
103 ],
104 "parserOptions": {
b8a4afa4 105 "EXPERIMENTAL_useSourceOfProjectReferenceRedirect": true,
a1587156
C
106 "project": [
107 "./tsconfig.json",
06aad801 108 "./shared/tsconfig.json",
109 "./scripts/tsconfig.json",
110 "./server/tsconfig.json",
a1587156
C
111 "./server/tools/tsconfig.json"
112 ]
113 }
114}