lint: replace tslint with eslint and fix new warnings and errors.
parent
f29edf1563
commit
11dd883f5f
@ -0,0 +1,98 @@
|
||||
module.exports = {
|
||||
"env": {
|
||||
"browser": true,
|
||||
"es6": true,
|
||||
"node": true
|
||||
},
|
||||
"parser": "@typescript-eslint/parser",
|
||||
"parserOptions": {
|
||||
"sourceType": "module",
|
||||
"ecmaFeatures": {
|
||||
"jsx": true
|
||||
}
|
||||
},
|
||||
"settings": {
|
||||
"react": {
|
||||
"version": "detect",
|
||||
},
|
||||
},
|
||||
"plugins": [
|
||||
"@typescript-eslint",
|
||||
],
|
||||
"extends": [
|
||||
"eslint:recommended",
|
||||
"plugin:react/recommended",
|
||||
"plugin:@typescript-eslint/eslint-recommended",
|
||||
"plugin:@typescript-eslint/recommended"
|
||||
],
|
||||
"rules": {
|
||||
"@typescript-eslint/explicit-function-return-type": "off",
|
||||
"@typescript-eslint/no-use-before-define": "off",
|
||||
"@typescript-eslint/no-non-null-assertion": "off",
|
||||
"@typescript-eslint/no-explicit-any": "off",
|
||||
"@typescript-eslint/member-delimiter-style": ["error", {
|
||||
"multiline": {
|
||||
"delimiter": "semi",
|
||||
"requireLast": true
|
||||
},
|
||||
"singleline": {
|
||||
"delimiter": "comma",
|
||||
"requireLast": false
|
||||
}
|
||||
}],
|
||||
"@typescript-eslint/no-unused-vars": ["warn", {
|
||||
"vars": "all",
|
||||
"args": "after-used",
|
||||
"ignoreRestSiblings": true,
|
||||
"argsIgnorePattern": "^_",
|
||||
}],
|
||||
|
||||
"react/display-name": "off",
|
||||
"react/no-unescaped-entities": "off",
|
||||
"react/jsx-tag-spacing": ["error", {
|
||||
"closingSlash": "never",
|
||||
"beforeSelfClosing": "always",
|
||||
"afterOpening": "never",
|
||||
"beforeClosing": "never"
|
||||
}],
|
||||
"react/jsx-boolean-value": ["error", "never"],
|
||||
"react/jsx-curly-spacing": ["error", "never"],
|
||||
"react/jsx-key": ["error", { "checkFragmentShorthand": true }],
|
||||
|
||||
"quotes": "off",
|
||||
"@typescript-eslint/quotes": ["error", "single", { "allowTemplateLiterals": true }],
|
||||
"semi": ["error", "always", { "omitLastInOneLineBlock": true }],
|
||||
"camelcase": ["error"],
|
||||
"comma-dangle": ["error", {
|
||||
"arrays": "always-multiline",
|
||||
"objects": "always-multiline",
|
||||
"imports": "always-multiline",
|
||||
"exports": "always-multiline",
|
||||
"functions": "never"
|
||||
}],
|
||||
"eqeqeq": ["error", "smart"],
|
||||
"indent": ["error", 2, {
|
||||
"SwitchCase": 1,
|
||||
}],
|
||||
"no-multi-spaces": "error",
|
||||
"object-curly-spacing": ["error", "always"],
|
||||
"arrow-parens": "error",
|
||||
"arrow-spacing": "error",
|
||||
"key-spacing": "error",
|
||||
"keyword-spacing": "error",
|
||||
"func-call-spacing": "off",
|
||||
"@typescript-eslint/func-call-spacing": ["error"],
|
||||
"space-before-function-paren": ["error", {
|
||||
"anonymous": "always",
|
||||
"named": "never",
|
||||
"asyncArrow": "always"
|
||||
}],
|
||||
"space-in-parens": ["error", "never"],
|
||||
"space-before-blocks": "error",
|
||||
"curly": ["error", "all"],
|
||||
"space-infix-ops": "error",
|
||||
"consistent-return": "error",
|
||||
"brace-style": ["error", "1tbs", { "allowSingleLine": true }],
|
||||
"jsx-quotes": ["error"],
|
||||
}
|
||||
};
|
@ -1,42 +0,0 @@
|
||||
{
|
||||
"extends": ["tslint:recommended", "tslint-react"],
|
||||
"rules": {
|
||||
"no-console": [true, "error"],
|
||||
"interface-name": [true, "never-prefix"],
|
||||
"ordered-imports": false,
|
||||
"jsx-boolean-value": [true, "never"],
|
||||
"jsx-curly-spacing": [true, "never"],
|
||||
"jsx-no-bind": [true, "allowArrowFunctions"],
|
||||
"jsx-no-lambda": [false],
|
||||
"jsx-no-multiline-js": false,
|
||||
"jsx-space-before-trailing-slash": true,
|
||||
"jsx-key": true,
|
||||
"max-classes-per-file": [false, 0],
|
||||
"max-line-length": false,
|
||||
"no-consecutive-blank-lines": false,
|
||||
"no-conditional-assignment": false,
|
||||
"object-literal-sort-keys": false,
|
||||
"quotemark": [true, "single", "jsx-double", "avoid-escape", "avoid-template"],
|
||||
"semicolon": [true, "always", "ignore-bound-class-methods"],
|
||||
"variable-name": [true, "ban-keywords", "check-format", "allow-pascal-case", "allow-leading-underscore"],
|
||||
"trailing-comma": [
|
||||
true,
|
||||
{
|
||||
"multiline": {
|
||||
"objects": "always",
|
||||
"arrays": "always",
|
||||
"functions": "never",
|
||||
"typeLiterals": "ignore"
|
||||
},
|
||||
"esSpecCompliant": true
|
||||
}
|
||||
],
|
||||
"whitespace": [true,"check-branch", "check-decl", "check-operator", "check-module", "check-separator", "check-rest-spread", "check-type", "check-typecast", "check-type-operator", "check-preblock"]
|
||||
},
|
||||
"linterOptions": {
|
||||
"exclude": [
|
||||
"config/**/*.js",
|
||||
"node_modules/**/*.ts"
|
||||
]
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue