arkids-main-app-backend/.eslintrc.json
2023-05-18 07:20:07 +03:00

150 lines
3.0 KiB
JSON

{
"extends": [
"airbnb-base",
"airbnb-typescript/base",
"plugin:import/recommended",
"plugin:typescript-sort-keys/recommended"
],
"plugins": [
"@typescript-eslint",
"typescript-sort-keys",
"sort-destructure-keys",
"sort-keys-fix",
"import"
],
"rules": {
"@typescript-eslint/naming-convention": ["error", {
"selector": "enum",
"format": ["PascalCase", "UPPER_CASE"],
"leadingUnderscore": "allow",
"trailingUnderscore": "allow"
}],
"@typescript-eslint/member-delimiter-style": [
"error",
{
"multiline": {
"delimiter": "semi",
"requireLast": true
},
"singleline": {
"delimiter": "semi",
"requireLast": false
},
"multilineDetection": "brackets"
}
],
"@typescript-eslint/sort-type-constituents": [
"error",
{
"checkIntersections": true,
"checkUnions": true,
"groupOrder": [
"named",
"keyword",
"operator",
"literal",
"function",
"import",
"conditional",
"object",
"tuple",
"intersection",
"union",
"nullish"
]
}
],
"@typescript-eslint/type-annotation-spacing": [
"error",
{
"before": false,
"after": true,
"overrides": {
"arrow": {
"before": true
}
}
}
],
"import/no-extraneous-dependencies": [
"error",
{
"devDependencies": true
}
],
"import/order": [
"error",
{
"alphabetize": {
"order": "asc"
},
"groups": [
"builtin",
"external",
"internal",
"parent",
[
"index",
"sibling"
],
"object"
],
"newlines-between": "always",
"pathGroups": [
{
"pattern": ".*/**/*.scss",
"group": "sibling",
"position": "after"
},
{
"pattern": "@/**/*",
"group": "parent",
"position": "after"
}
],
"pathGroupsExcludedImportTypes": []
}
],
"import/prefer-default-export": "off",
"max-len": [
"error",
140
],
"no-console": [
"error",
{
"allow": [
"warn",
"error"
]
}
],
"sort-destructure-keys/sort-destructure-keys": [
"error",
{
"caseSensitive": false
}
],
"sort-keys": [
"error",
"asc",
{
"caseSensitive": true,
"natural": false,
"minKeys": 2
}
],
"sort-keys-fix/sort-keys-fix": "error"
},
"parser": "@typescript-eslint/parser",
"parserOptions": {
"project": "./tsconfig.json"
},
"root": true,
"settings": {
"import/parsers": {
"@typescript-eslint/parser": [ ".ts"]
}
}
}