1 | {
|
2 | "root": true,
|
3 | "extends": [
|
4 | "airbnb",
|
5 | "prettier"
|
6 | ],
|
7 | "env": {
|
8 | "browser": true,
|
9 | "node": true,
|
10 | "es6": true,
|
11 | "jest": true,
|
12 | "jasmine": true
|
13 | },
|
14 | "parser": "babel-eslint",
|
15 | "plugins": [
|
16 | "import",
|
17 | "react",
|
18 | "react-hooks",
|
19 | "prettier"
|
20 | ],
|
21 | "parserOptions": {
|
22 | "ecmaVersion": 6,
|
23 | "sourceType": "module",
|
24 | "ecmaFeatures": {
|
25 | "jsx": true,
|
26 | "experimentalObjectRestSpread": true
|
27 | }
|
28 | },
|
29 | "rules": {
|
30 | "prettier/prettier": "error",
|
31 | "arrow-body-style": "off",
|
32 | "prefer-arrow-callback": "off",
|
33 | "arrow-parens": ["error", "as-needed"],
|
34 | "class-methods-use-this": 0,
|
35 | "no-multi-spaces": ["error", { "exceptions": { "ImportDeclaration": true } }],
|
36 | "no-tabs": 0,
|
37 | "no-console": 0,
|
38 | "no-underscore-dangle": 0,
|
39 | "no-mixed-operators": ["error", { "allowSamePrecedence": true }],
|
40 | "object-curly-newline": ["error", { "consistent": true }],
|
41 | "react/jsx-indent": [2, "tab"],
|
42 | "react/jsx-indent-props": [2, "tab"],
|
43 | "react/prop-types": 0,
|
44 | "react/jsx-filename-extension": [1, { "extensions": [".js", ".jsx"] }],
|
45 | "react/sort-comp": [1, {
|
46 | "order": [
|
47 | "static-methods",
|
48 | "lifecycle",
|
49 | "everything-else",
|
50 | "render"
|
51 | ]
|
52 | }],
|
53 | "react/jsx-one-expression-per-line": 0,
|
54 | "react-hooks/rules-of-hooks": "error",
|
55 | "import/prefer-default-export": 0,
|
56 | "import/no-extraneous-dependencies": 0,
|
57 | "import/no-unresolved": 0,
|
58 | "import/extensions": 0,
|
59 | "jsx-a11y/anchor-is-valid": ["error", {
|
60 | "components": [],
|
61 | "specialLink": [],
|
62 | "aspects": ["noHref", "invalidHref", "preferButton"]
|
63 | }]
|
64 | }
|
65 | }
|