150 lines
3.0 KiB
JSON
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"]
|
|
}
|
|
}
|
|
}
|