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
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"
|
|
}
|
|
}
|
|
|