Project Amber web / mobile client https://git.tdem.in/tdemin/amber
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

145 lines
5.4 KiB

{
// Thanks, BoresXP@github.com !
// https://gist.github.com/BoresXP/e404f16a0e153eeb6ce15ce06848f36e
"extends": ["react-app"],
"parserOptions": {
"project": "tsconfig.json",
"tsconfigRootDir": ".",
"ecmaVersion": 6,
"sourceType": "module",
"ecmaFeatures": {
"jsx": true
}
},
"plugins": ["react", "@typescript-eslint"],
"rules": {
"semi": "error",
"indent": [
"error",
4,
{
"SwitchCase": 1
}
],
"quotes": ["warn", "double"],
"max-len": [
"error",
{
"code": 80,
"tabWidth": 4
}
],
"no-shadow": ["error", { "builtinGlobals": false }],
"no-duplicate-imports": ["error", { "includeExports": true }],
"no-template-curly-in-string": "error",
"block-scoped-var": "error",
"curly": ["error", "all"],
"eqeqeq": "error",
"max-classes-per-file": ["error", 2],
"no-alert": "warn",
"no-console": "warn",
"no-else-return": ["error", { "allowElseIf": false }],
"no-implicit-coercion": "error",
"no-labels": "error",
"no-lone-blocks": "error",
"no-multi-spaces": "error",
"no-new": "error",
"no-new-func": "error",
"no-new-wrappers": "error",
"no-return-await": "error",
"no-self-compare": "error",
"no-sequences": "error",
"no-throw-literal": "error",
"no-unused-expressions": "error",
"no-useless-call": "error",
"no-useless-concat": "error",
"no-useless-return": "error",
"prefer-promise-reject-errors": "error",
"no-undefined": "error",
"array-bracket-newline": ["error", { "multiline": true }],
"comma-dangle": ["error", "always-multiline"],
"comma-style": "error",
"eol-last": "error",
"key-spacing": "error",
"keyword-spacing": "error",
"new-parens": "error",
"no-bitwise": "warn",
"no-lonely-if": "warn",
"no-multiple-empty-lines": "error",
"no-nested-ternary": "error",
"no-new-object": "error",
"no-tabs": ["error", { "allowIndentationTabs": true }],
"no-trailing-spaces": "error",
"no-unneeded-ternary": "error",
"no-whitespace-before-property": "error",
"object-curly-newline": "error",
"object-curly-spacing": ["error", "always"],
"semi-spacing": "error",
"space-before-blocks": "error",
"space-before-function-paren": [
"error",
{
"anonymous": "always",
"named": "never",
"asyncArrow": "always"
}
],
"space-in-parens": "error",
"space-infix-ops": "error",
"space-unary-ops": "error",
"spaced-comment": ["error", "always"],
"switch-colon-spacing": "error",
"arrow-body-style": ["error", "as-needed"],
"arrow-parens": ["error", "always"],
"arrow-spacing": "error",
"generator-star-spacing": ["error", "after"],
"no-confusing-arrow": "error",
"no-useless-computed-key": "error",
"no-useless-rename": "error",
"object-shorthand": ["error", "always"],
"prefer-arrow-callback": "warn",
"prefer-destructuring": "error",
"rest-spread-spacing": ["error", "never"],
"template-curly-spacing": "error",
"@typescript-eslint/semi": ["error", "always"],
"@typescript-eslint/member-ordering": "warn",
"@typescript-eslint/no-magic-numbers": [
"error",
{
"ignoreNumericLiteralTypes": true,
"ignoreEnums": true,
"enforceConst": true,
"ignoreReadonlyClassProperties": true,
"ignore": [0, 1, 2, 1000]
}
],
"@typescript-eslint/brace-style": ["error", "1tbs"],
"@typescript-eslint/quotes": [
"error",
"double",
{ "avoidEscape": true }
],
"@typescript-eslint/func-call-spacing": ["error", "never"],
"@typescript-eslint/no-useless-constructor": "error",
"@typescript-eslint/prefer-for-of": "warn",
"@typescript-eslint/no-parameter-properties": "error",
"@typescript-eslint/no-unnecessary-type-arguments": "warn",
"@typescript-eslint/prefer-function-type": "warn",
"@typescript-eslint/prefer-readonly": "warn",
"@typescript-eslint/no-explicit-any": "off",
"@typescript-eslint/camelcase": ["error", { "properties": "never" }],
"@typescript-eslint/interface-name-prefix": "off",
"@typescript-eslint/no-unused-vars": [
"error",
{ "argsIgnorePattern": "^_", "varsIgnorePattern": "^_$" }
],
"react/no-access-state-in-setstate": "error",
"react/no-danger": "error",
"react/no-this-in-sfc": "error",
"react/prefer-stateless-function": "error",
"react/jsx-filename-extension": ["error", { "extensions": [".tsx"] }],
"react/jsx-no-bind": "error",
"react/jsx-no-literals": "warn",
"react/jsx-pascal-case": "error"
}
}