145 lines
3.8 KiB
JSON
145 lines
3.8 KiB
JSON
{
|
|
"extends": [
|
|
"../../../.eslintrc.json",
|
|
"plugin:@typescript-eslint/eslint-recommended",
|
|
"plugin:@typescript-eslint/recommended",
|
|
"plugin:@typescript-eslint/strict",
|
|
"plugin:import-x/recommended"
|
|
],
|
|
"ignorePatterns": [
|
|
"!**/*",
|
|
"node_modules/**/*"
|
|
],
|
|
"overrides": [
|
|
{
|
|
"files": [
|
|
"*.ts",
|
|
"*.js"
|
|
],
|
|
"parserOptions": {
|
|
"project": [
|
|
"packages/server/api/tsconfig.*?.json"
|
|
]
|
|
},
|
|
"rules": {
|
|
"import-x/no-unresolved": "off",
|
|
"no-console": "error",
|
|
"object-shorthand": "error",
|
|
"@typescript-eslint/switch-exhaustiveness-check": "error",
|
|
"@typescript-eslint/brace-style": [
|
|
"error",
|
|
"stroustrup"
|
|
],
|
|
"@typescript-eslint/comma-dangle": [
|
|
"error",
|
|
"always-multiline"
|
|
],
|
|
"@typescript-eslint/indent": [
|
|
"error",
|
|
4
|
|
],
|
|
"@typescript-eslint/quotes": [
|
|
"error",
|
|
"single"
|
|
],
|
|
"@typescript-eslint/semi": [
|
|
"error",
|
|
"never"
|
|
],
|
|
"@typescript-eslint/consistent-type-definitions": [
|
|
"error",
|
|
"type"
|
|
],
|
|
"@typescript-eslint/no-explicit-any": "error",
|
|
"@typescript-eslint/no-redundant-type-constituents": "error",
|
|
"@typescript-eslint/await-thenable": "error",
|
|
"@typescript-eslint/adjacent-overload-signatures": "error",
|
|
"@typescript-eslint/comma-spacing": "error",
|
|
"@typescript-eslint/type-annotation-spacing": "error",
|
|
"@typescript-eslint/block-spacing": "error",
|
|
"@typescript-eslint/func-call-spacing": "error",
|
|
"@typescript-eslint/key-spacing": "error",
|
|
"@typescript-eslint/object-curly-spacing": [
|
|
"error",
|
|
"always"
|
|
],
|
|
"@typescript-eslint/space-before-blocks": "error",
|
|
"@typescript-eslint/no-non-null-assertion": "warn",
|
|
"@typescript-eslint/member-delimiter-style": [
|
|
"error",
|
|
{
|
|
"multiline": {
|
|
"delimiter": "none"
|
|
},
|
|
"singleline": {
|
|
"delimiter": "comma",
|
|
"requireLast": false
|
|
}
|
|
}
|
|
],
|
|
"@typescript-eslint/no-unused-vars": [
|
|
"error",
|
|
{
|
|
"varsIgnorePattern": "^_",
|
|
"argsIgnorePattern": "^_"
|
|
}
|
|
],
|
|
"@typescript-eslint/space-before-function-paren": [
|
|
"error",
|
|
{
|
|
"anonymous": "always",
|
|
"named": "never",
|
|
"asyncArrow": "always"
|
|
}
|
|
],
|
|
"@typescript-eslint/space-infix-ops": "error",
|
|
"@typescript-eslint/keyword-spacing": "error",
|
|
"@typescript-eslint/explicit-function-return-type": "warn",
|
|
"@typescript-eslint/no-floating-promises": "error",
|
|
"@typescript-eslint/no-misused-promises": "warn",
|
|
"no-return-await": "off",
|
|
"@typescript-eslint/return-await": [
|
|
"error",
|
|
"in-try-catch"
|
|
],
|
|
"default-case-last": "error",
|
|
"import-x/no-duplicates": "error",
|
|
"import-x/order": [
|
|
"error",
|
|
{
|
|
"alphabetize": {
|
|
"order": "asc"
|
|
}
|
|
}
|
|
],
|
|
"sort-imports": [
|
|
"error",
|
|
{
|
|
"ignoreCase": true,
|
|
"ignoreDeclarationSort": true,
|
|
"ignoreMemberSort": false,
|
|
"memberSyntaxSortOrder": [
|
|
"none",
|
|
"all",
|
|
"multiple",
|
|
"single"
|
|
],
|
|
"allowSeparatedGroups": false
|
|
}
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"settings": {
|
|
"import/ignore:": [
|
|
"node_modules"
|
|
],
|
|
"import-x/resolver": {
|
|
"typescript": {
|
|
"alwaysTryTypes": false
|
|
},
|
|
"node": true
|
|
}
|
|
}
|
|
}
|