129 lines
No EOL
2.2 KiB
Text
129 lines
No EOL
2.2 KiB
Text
{
|
|
"parser": "@typescript-eslint/parser",
|
|
"extends": [
|
|
"eslint:recommended",
|
|
"plugin:react/recommended",
|
|
"plugin:@typescript-eslint/recommended",
|
|
"plugin:mdx/recommended",
|
|
"prettier"
|
|
],
|
|
"plugins": [
|
|
"react",
|
|
"react-hooks",
|
|
"@typescript-eslint",
|
|
"typescript-sort-keys",
|
|
"simple-import-sort",
|
|
"import"
|
|
],
|
|
"env": {
|
|
"browser": true,
|
|
"node": true,
|
|
"es6": true,
|
|
"jest": true
|
|
},
|
|
"settings": {
|
|
"react": {
|
|
"version": "detect"
|
|
},
|
|
"import/parsers": {
|
|
"@typescript-eslint/parser": [
|
|
".ts",
|
|
".tsx",
|
|
".mdx"
|
|
]
|
|
},
|
|
"mdx/code-blocks": false
|
|
},
|
|
"overrides": [
|
|
{
|
|
"files": [
|
|
"*.mdx"
|
|
],
|
|
"extends": [
|
|
"plugin:mdx/recommended"
|
|
],
|
|
"rules": {
|
|
"react/jsx-tag-spacing": "off"
|
|
}
|
|
},
|
|
{
|
|
"files": [
|
|
"*.js"
|
|
],
|
|
"parser": "esprima",
|
|
"rules": {
|
|
"@typescript-eslint/no-var-requires": 0
|
|
}
|
|
}
|
|
],
|
|
"rules": {
|
|
"object-curly-spacing": [
|
|
"error",
|
|
"always"
|
|
],
|
|
"no-useless-return": "error",
|
|
"no-multi-spaces": "error",
|
|
"no-console": [
|
|
"error",
|
|
{
|
|
"allow": [
|
|
"info",
|
|
"warn",
|
|
"error"
|
|
]
|
|
}
|
|
],
|
|
"@typescript-eslint/no-unused-vars": 2,
|
|
"@typescript-eslint/interface-name-prefix": 0,
|
|
"@typescript-eslint/no-empty-interface:": 0,
|
|
"@typescript-eslint/explicit-function-return-type": 0,
|
|
"@typescript-eslint/explicit-member-accessibility": 2,
|
|
"@typescript-eslint/no-explicit-any": 0,
|
|
"@typescript-eslint/no-empty-function": 0,
|
|
"@typescript-eslint/camelcase": 0,
|
|
"typescript-sort-keys/interface": "error",
|
|
"typescript-sort-keys/string-enum": "error",
|
|
"react-hooks/rules-of-hooks": "error",
|
|
"react/jsx-no-bind": [
|
|
"error",
|
|
{
|
|
"ignoreDOMComponents": true,
|
|
"allowArrowFunctions": true
|
|
}
|
|
],
|
|
"react/jsx-tag-spacing": [
|
|
"error",
|
|
{
|
|
"beforeSelfClosing": "always"
|
|
}
|
|
],
|
|
"react/prop-types": 0,
|
|
"sort-imports": "off",
|
|
"import/no-cycle": "error",
|
|
"import/no-duplicates": "error",
|
|
"import/first": "error",
|
|
"import/newline-after-import": "error",
|
|
"import/order": "off",
|
|
"simple-import-sort/imports": [
|
|
"error",
|
|
{
|
|
"groups": [
|
|
[
|
|
"^\\u0000"
|
|
],
|
|
[
|
|
"^react$",
|
|
"^ramda$",
|
|
"^[^.]"
|
|
],
|
|
[
|
|
"^@procyon?\\w"
|
|
],
|
|
[
|
|
"^\\."
|
|
]
|
|
]
|
|
}
|
|
]
|
|
}
|
|
} |