]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - .eslintrc.json
Don't manage remote channels
[github/Chocobozzz/PeerTube.git] / .eslintrc.json
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",
26 "prefer-regex-literals": "off",
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,
46 "MemberExpression": "off"
47 }
48 ],
49 "@typescript-eslint/consistent-type-assertions": [
50 "error",
51 {
52 "assertionStyle": "as"
53 }
54 ],
55 "@typescript-eslint/array-type": [
56 "error",
57 {
58 "default": "array"
59 }
60 ],
61 "@typescript-eslint/restrict-template-expressions": [
62 "off",
63 {
64 "allowNumber": "true"
65 }
66 ],
67 "@typescript-eslint/no-this-alias": [
68 "error",
69 {
70 "allowDestructuring": true, // Allow `const { props, state } = this`; false by default
71 "allowedNames": ["self"] // Allow `const self = this`; `[]` by default
72 }
73 ],
74
75 "@typescript-eslint/return-await": "off",
76 "@typescript-eslint/dot-notation": "off",
77 "@typescript-eslint/method-signature-style": "off",
78 "@typescript-eslint/no-base-to-string": "off",
79 "@typescript-eslint/quotes": "off",
80 "@typescript-eslint/no-var-requires": "off",
81 "@typescript-eslint/explicit-function-return-type": "off",
82 "@typescript-eslint/promise-function-async": "off",
83 "@typescript-eslint/no-dynamic-delete": "off",
84 "@typescript-eslint/no-unnecessary-boolean-literal-compare": "off",
85 "@typescript-eslint/strict-boolean-expressions": "off",
86 "@typescript-eslint/consistent-type-definitions": "off",
87 "@typescript-eslint/no-misused-promises": "off",
88 "@typescript-eslint/no-namespace": "off",
89 "@typescript-eslint/no-empty-interface": "off",
90 "@typescript-eslint/no-extraneous-class": "off",
91 "@typescript-eslint/no-use-before-define": "off",
92
93 "require-await": "off",
94 "@typescript-eslint/require-await": "error",
95
96 // bugged but useful
97 "@typescript-eslint/restrict-plus-operands": "off"
98 },
99 "ignorePatterns": [
100 "node_modules/"
101 ],
102 "parserOptions": {
103 "EXPERIMENTAL_useSourceOfProjectReferenceRedirect": true,
104 "project": [
105 "./tsconfig.json",
106 "./shared/tsconfig.json",
107 "./scripts/tsconfig.json",
108 "./server/tsconfig.json",
109 "./server/tools/tsconfig.json"
110 ]
111 }
112 }