]>
Commit | Line | Data |
---|---|---|
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 | ], | |
7e0f50d6 | 41 | "quotes": "off", |
a1587156 C |
42 | "@typescript-eslint/indent": [ |
43 | "error", | |
44 | 2, | |
45 | { | |
46 | "SwitchCase": 1, | |
ba2684ce C |
47 | "MemberExpression": "off", |
48 | // https://github.com/eslint/eslint/issues/15299 | |
49 | "ignoredNodes": ["PropertyDefinition"] | |
a1587156 C |
50 | } |
51 | ], | |
52 | "@typescript-eslint/consistent-type-assertions": [ | |
53 | "error", | |
54 | { | |
55 | "assertionStyle": "as" | |
56 | } | |
57 | ], | |
58 | "@typescript-eslint/array-type": [ | |
59 | "error", | |
60 | { | |
61 | "default": "array" | |
62 | } | |
63 | ], | |
64 | "@typescript-eslint/restrict-template-expressions": [ | |
65 | "off", | |
66 | { | |
67 | "allowNumber": "true" | |
68 | } | |
69 | ], | |
7fed6375 C |
70 | "@typescript-eslint/no-this-alias": [ |
71 | "error", | |
72 | { | |
73 | "allowDestructuring": true, // Allow `const { props, state } = this`; false by default | |
74 | "allowedNames": ["self"] // Allow `const self = this`; `[]` by default | |
75 | } | |
76 | ], | |
bdd428a6 | 77 | |
d9699428 | 78 | "@typescript-eslint/return-await": "off", |
faa9d434 C |
79 | "@typescript-eslint/dot-notation": "off", |
80 | "@typescript-eslint/method-signature-style": "off", | |
d9699428 | 81 | "@typescript-eslint/no-base-to-string": "off", |
7e0f50d6 F |
82 | "@typescript-eslint/quotes": [ |
83 | "error", | |
84 | "single", | |
85 | { | |
86 | "avoidEscape": true, | |
87 | "allowTemplateLiterals": true | |
88 | } | |
89 | ], | |
a1587156 C |
90 | "@typescript-eslint/no-var-requires": "off", |
91 | "@typescript-eslint/explicit-function-return-type": "off", | |
92 | "@typescript-eslint/promise-function-async": "off", | |
93 | "@typescript-eslint/no-dynamic-delete": "off", | |
bdd428a6 | 94 | "@typescript-eslint/no-unnecessary-boolean-literal-compare": "off", |
a1587156 C |
95 | "@typescript-eslint/strict-boolean-expressions": "off", |
96 | "@typescript-eslint/consistent-type-definitions": "off", | |
97 | "@typescript-eslint/no-misused-promises": "off", | |
98 | "@typescript-eslint/no-namespace": "off", | |
4a8d113b | 99 | "@typescript-eslint/no-empty-interface": "off", |
a1587156 | 100 | "@typescript-eslint/no-extraneous-class": "off", |
c158a5fa | 101 | "@typescript-eslint/no-use-before-define": "off", |
98ab5dc8 C |
102 | |
103 | "require-await": "off", | |
104 | "@typescript-eslint/require-await": "error", | |
105 | ||
a1587156 C |
106 | // bugged but useful |
107 | "@typescript-eslint/restrict-plus-operands": "off" | |
108 | }, | |
109 | "ignorePatterns": [ | |
110 | "node_modules/" | |
111 | ], | |
112 | "parserOptions": { | |
b8a4afa4 | 113 | "EXPERIMENTAL_useSourceOfProjectReferenceRedirect": true, |
a1587156 C |
114 | "project": [ |
115 | "./tsconfig.json", | |
06aad801 | 116 | "./shared/tsconfig.json", |
117 | "./scripts/tsconfig.json", | |
118 | "./server/tsconfig.json", | |
a1587156 C |
119 | "./server/tools/tsconfig.json" |
120 | ] | |
121 | } | |
122 | } |