1
0
mirror of https://github.com/keeweb/keeweb.git synced 2024-06-25 07:37:46 +02:00
keeweb/.eslintrc.json

216 lines
5.3 KiB
JSON
Raw Normal View History

2016-07-17 13:30:38 +02:00
{
2021-05-10 20:31:19 +02:00
"plugins": [
"prettier",
"import",
"babel",
"react",
"@typescript-eslint"
],
"extends": [
"standard",
"eslint:recommended",
"plugin:prettier/recommended"
],
"rules": {
"semi": [
"error",
"always"
],
"one-var": "off",
"space-before-function-paren": "off",
"no-throw-literal": "off",
"camelcase": [
"error",
{
"properties": "always"
}
],
"no-console": "error",
"no-alert": "error",
"no-debugger": "error",
"prefer-arrow-callback": "error",
"object-property-newline": "off",
"no-useless-escape": "off",
"no-var": "error",
"prefer-const": "error",
"no-unused-expressions": "off",
"strict": [
"error",
"never"
],
"no-mixed-operators": "off",
"prefer-promise-reject-errors": "off",
"standard/no-callback-literal": "off",
"object-curly-spacing": "off",
"quote-props": "off",
"no-new-object": "error",
"object-shorthand": "error",
"no-array-constructor": "error",
"array-callback-return": "error",
"no-eval": "error",
"no-new-func": "error",
"prefer-rest-params": "error",
"prefer-spread": "error",
"no-useless-constructor": "error",
"no-dupe-class-members": "error",
"no-duplicate-imports": "error",
"eqeqeq": "error",
"no-unneeded-ternary": "error",
"curly": "error",
"prettier/prettier": "error",
"no-empty": "off",
"no-restricted-syntax": [
"error",
{
"selector": "ExportDefaultDeclaration",
"message": "Prefer named exports"
}
],
"import/no-webpack-loader-syntax": "off",
"import/no-relative-parent-imports": "error",
"import/first": "error",
"import/no-default-export": "error",
"babel/no-unused-expressions": "error",
"node/no-callback-literal": "off"
},
"parserOptions": {
"sourceType": "module",
"ecmaFeatures": {
"impliedStrict": true
}
},
"parser": "babel-eslint",
"overrides": [
{
"files": [
"app/scripts/**/*.js"
],
"rules": {
"import/no-commonjs": "error"
}
},
{
"files": [
"*.ts",
"*.tsx"
],
"extends": [
2021-05-09 23:55:40 +02:00
"standard",
"eslint:recommended",
2021-05-10 20:31:19 +02:00
"preact",
"plugin:prettier/recommended",
"plugin:@typescript-eslint/recommended",
"plugin:@typescript-eslint/recommended-requiring-type-checking",
"plugin:import/typescript"
],
"rules": {
"semi": [
"error",
"always"
],
2016-07-17 13:30:38 +02:00
"one-var": "off",
"space-before-function-paren": "off",
"no-throw-literal": "off",
2021-05-10 20:31:19 +02:00
"camelcase": [
"error",
{
"properties": "always"
}
],
2016-07-17 13:30:38 +02:00
"no-console": "error",
"no-alert": "error",
"no-debugger": "error",
2017-01-28 23:13:39 +01:00
"prefer-arrow-callback": "error",
"object-property-newline": "off",
2017-01-31 07:50:28 +01:00
"no-useless-escape": "off",
"no-var": "error",
2017-02-05 13:11:24 +01:00
"prefer-const": "error",
"no-unused-expressions": "off",
2021-05-10 20:31:19 +02:00
"strict": [
"error",
"never"
],
2017-06-11 12:00:29 +02:00
"no-mixed-operators": "off",
"prefer-promise-reject-errors": "off",
"standard/no-callback-literal": "off",
2019-08-16 21:36:22 +02:00
"object-curly-spacing": "off",
2019-08-18 10:17:09 +02:00
"quote-props": "off",
"no-new-object": "error",
"object-shorthand": "error",
"no-array-constructor": "error",
"array-callback-return": "error",
"no-eval": "error",
"no-new-func": "error",
"prefer-rest-params": "error",
"prefer-spread": "error",
"no-useless-constructor": "error",
"no-dupe-class-members": "error",
"no-duplicate-imports": "error",
"eqeqeq": "error",
"no-unneeded-ternary": "error",
"curly": "error",
"prettier/prettier": "error",
2019-08-18 10:18:18 +02:00
"no-empty": "off",
2019-08-18 10:17:09 +02:00
"no-restricted-syntax": [
2021-05-10 20:31:19 +02:00
"error",
{
"selector": "ExportDefaultDeclaration",
"message": "Prefer named exports"
}
2019-08-18 10:17:09 +02:00
],
2019-08-20 20:18:16 +02:00
"import/no-webpack-loader-syntax": "off",
2019-08-18 10:17:09 +02:00
"import/no-relative-parent-imports": "error",
"import/first": "error",
"import/no-default-export": "error",
2020-11-19 18:43:50 +01:00
"babel/no-unused-expressions": "error",
2021-05-10 20:31:19 +02:00
"node/no-callback-literal": "off",
"import/no-commonjs": "error",
2021-05-13 12:39:22 +02:00
"prefer-template": "off",
"no-else-return": "off",
2021-05-10 20:31:19 +02:00
"jest/valid-expect": "off",
2021-05-13 12:39:22 +02:00
"jest/expect-expect": "off",
2021-05-10 20:31:19 +02:00
"@typescript-eslint/no-unused-vars": "error",
"@typescript-eslint/explicit-module-boundary-types": "error",
"@typescript-eslint/restrict-template-expressions": "off"
},
"parser": "@typescript-eslint/parser",
"parserOptions": {
2017-04-08 18:31:38 +02:00
"ecmaFeatures": {
2021-05-10 20:31:19 +02:00
"jsx": true
2021-05-09 23:55:40 +02:00
},
2021-05-10 20:31:19 +02:00
"ecmaVersion": 11,
"sourceType": "module",
"project": [
"tsconfig.json",
"jsconfig.json"
]
}
2016-07-17 13:30:38 +02:00
},
2021-05-10 20:31:19 +02:00
{
"files": [
"app/test/**/*.ts"
],
"env": {
"mocha": true
}
}
],
"settings": {
"import/parsers": {
"@typescript-eslint/parser": [
".ts",
".tsx"
]
2016-07-17 13:30:38 +02:00
}
2021-05-10 20:31:19 +02:00
},
"globals": {
"_": true,
"$": true
},
"env": {
"browser": true,
"node": true,
"es2020": true
}
2016-07-17 13:30:38 +02:00
}