1 | {
|
2 | "extends": ["eslint:recommended", "plugin:n/recommended", "prettier"],
|
3 | "plugins": ["n", "prettier"],
|
4 | "rules": {
|
5 | "prettier/prettier": "error",
|
6 | "block-scoped-var": "error",
|
7 | "eqeqeq": "error",
|
8 | "no-var": "error",
|
9 | "prefer-const": "error",
|
10 | "eol-last": "error",
|
11 | "prefer-arrow-callback": "error",
|
12 | "no-trailing-spaces": "error",
|
13 | "quotes": ["warn", "single", {"avoidEscape": true}],
|
14 | "no-restricted-properties": [
|
15 | "error",
|
16 | {
|
17 | "object": "describe",
|
18 | "property": "only"
|
19 | },
|
20 | {
|
21 | "object": "it",
|
22 | "property": "only"
|
23 | }
|
24 | ]
|
25 | },
|
26 | "overrides": [
|
27 | {
|
28 | "files": ["**/*.ts", "**/*.tsx"],
|
29 | "parser": "@typescript-eslint/parser",
|
30 | "extends": ["plugin:@typescript-eslint/recommended"],
|
31 | "rules": {
|
32 | "@typescript-eslint/ban-ts-comment": "warn",
|
33 | "@typescript-eslint/no-floating-promises": "error",
|
34 | "@typescript-eslint/no-non-null-assertion": "off",
|
35 | "@typescript-eslint/no-use-before-define": "off",
|
36 | "@typescript-eslint/no-warning-comments": "off",
|
37 | "@typescript-eslint/no-empty-function": "off",
|
38 | "@typescript-eslint/no-var-requires": "off",
|
39 | "@typescript-eslint/explicit-function-return-type": "off",
|
40 | "@typescript-eslint/explicit-module-boundary-types": "off",
|
41 | "@typescript-eslint/ban-types": "off",
|
42 | "@typescript-eslint/camelcase": "off",
|
43 | "n/no-missing-import": "off",
|
44 | "n/no-empty-function": "off",
|
45 | "n/no-unsupported-features/es-syntax": "off",
|
46 | "n/no-missing-require": "off",
|
47 | "n/shebang": "off",
|
48 | "no-dupe-class-members": "off",
|
49 | "require-atomic-updates": "off"
|
50 | },
|
51 | "parserOptions": {
|
52 | "ecmaVersion": 2018,
|
53 | "project": "./tsconfig.json",
|
54 | "sourceType": "module"
|
55 | }
|
56 | }
|
57 | ]
|
58 | }
|