2018-05-29 04:35:21 +03:00
|
|
|
module.exports = {
|
|
|
|
parser: "babel-eslint",
|
|
|
|
env: {
|
|
|
|
browser: true,
|
|
|
|
es6: true,
|
2019-01-17 09:20:52 +03:00
|
|
|
node: true,
|
|
|
|
mocha: true
|
2018-05-29 04:35:21 +03:00
|
|
|
},
|
2019-09-16 20:36:27 +03:00
|
|
|
plugins: ["prettier", "react", "react-hooks"],
|
2018-05-29 04:35:21 +03:00
|
|
|
rules: {
|
|
|
|
"prettier/prettier": "error",
|
|
|
|
"prefer-const": "error",
|
2018-10-18 00:25:31 +03:00
|
|
|
"no-use-before-define": ["error", { functions: false, classes: false, variables: true }],
|
2018-05-29 04:35:21 +03:00
|
|
|
"no-var": "error",
|
|
|
|
"no-throw-literal": "error",
|
|
|
|
// Light console usage is useful but remove debug logs before merging to master.
|
2018-07-04 03:18:08 +03:00
|
|
|
"no-console": "off",
|
2018-07-04 03:27:45 +03:00
|
|
|
"lines-between-class-members": 2,
|
|
|
|
"padding-line-between-statements": [
|
|
|
|
"error",
|
2018-10-18 00:25:31 +03:00
|
|
|
{ blankLine: "always", prev: "function", next: "function" },
|
|
|
|
{ blankLine: "always", prev: "function", next: "class" },
|
|
|
|
{ blankLine: "always", prev: "class", next: "function" },
|
|
|
|
{ blankLine: "always", prev: "class", next: "export" },
|
|
|
|
{ blankLine: "always", prev: "export", next: "function" },
|
|
|
|
{ blankLine: "always", prev: "export", next: "class" },
|
|
|
|
{ blankLine: "always", prev: "export", next: "export" },
|
|
|
|
{ blankLine: "always", prev: "import", next: "function" },
|
|
|
|
{ blankLine: "always", prev: "import", next: "class" }
|
|
|
|
],
|
2019-09-16 20:36:27 +03:00
|
|
|
"no-unused-vars": ["error", { varsIgnorePattern: "^_", argsIgnorePattern: "^_", ignoreRestSiblings: true }],
|
|
|
|
"react-hooks/rules-of-hooks": "error",
|
|
|
|
"react-hooks/exhaustive-deps": "warn"
|
2018-05-29 04:35:21 +03:00
|
|
|
},
|
|
|
|
extends: ["prettier", "plugin:react/recommended", "eslint:recommended"]
|
|
|
|
};
|