131 lines
4.1 KiB
JSON
131 lines
4.1 KiB
JSON
{
|
|
"root": true,
|
|
"ignorePatterns": ["app-builds/**/*", "dist/**", "node_modules/**/*"],
|
|
"overrides": [
|
|
{
|
|
"files": ["*.ts"],
|
|
"parser": "@typescript-eslint/parser",
|
|
"parserOptions": {
|
|
"project": ["tsconfig.json", "e2e/tsconfig.e2e.json"],
|
|
"ecmaVersion": 2020,
|
|
"sourceType": "module",
|
|
"createDefaultProgram": true
|
|
},
|
|
"extends": [
|
|
"plugin:@typescript-eslint/recommended",
|
|
"plugin:@angular-eslint/recommended",
|
|
"plugin:prettier/recommended"
|
|
],
|
|
"plugins": ["@typescript-eslint", "prettier", "unused-imports", "prefer-arrow"],
|
|
"rules": {
|
|
"@typescript-eslint/no-explicit-any": 0,
|
|
"@typescript-eslint/ban-ts-comment": 0,
|
|
"@typescript-eslint/no-empty-function": 0,
|
|
"@typescript-eslint/explicit-module-boundary-types": 0,
|
|
"prettier/prettier": "error",
|
|
"@angular-eslint/component-selector": ["off"],
|
|
"@typescript-eslint/no-unused-vars": [
|
|
"error",
|
|
{
|
|
"args": "none"
|
|
}
|
|
],
|
|
"unused-imports/no-unused-imports": "error",
|
|
"@typescript-eslint/explicit-function-return-type": [
|
|
"error",
|
|
{
|
|
"allowExpressions": true,
|
|
"allowTypedFunctionExpressions": true,
|
|
"allowHigherOrderFunctions": true,
|
|
"allowDirectConstAssertionInArrowFunctions": true,
|
|
"allowConciseArrowFunctionExpressionsStartingWithVoid": true
|
|
}
|
|
],
|
|
"@typescript-eslint/explicit-member-accessibility": [
|
|
"off",
|
|
{
|
|
"accessibility": "explicit"
|
|
}
|
|
],
|
|
"arrow-parens": ["off", "always"],
|
|
"import/order": "off",
|
|
"@typescript-eslint/member-ordering": "off",
|
|
"@typescript-eslint/no-inferrable-types": "off",
|
|
"no-underscore-dangle": "off",
|
|
"arrow-body-style": "off",
|
|
"@angular-eslint/no-input-rename": "off",
|
|
"@typescript-eslint/naming-convention": [
|
|
"error",
|
|
{
|
|
"selector": "default",
|
|
"format": ["camelCase", "snake_case", "UPPER_CASE", "PascalCase"],
|
|
"leadingUnderscore": "allowSingleOrDouble",
|
|
"trailingUnderscore": "allow"
|
|
},
|
|
{
|
|
"selector": "variable",
|
|
"format": ["camelCase", "snake_case", "UPPER_CASE", "PascalCase"],
|
|
"leadingUnderscore": "allowSingleOrDouble",
|
|
"trailingUnderscore": "allow"
|
|
},
|
|
{
|
|
"selector": "enum",
|
|
"format": ["PascalCase", "UPPER_CASE"]
|
|
},
|
|
{
|
|
"selector": "typeLike",
|
|
"format": ["PascalCase"]
|
|
}
|
|
],
|
|
"prefer-const": "error",
|
|
"@typescript-eslint/no-unused-expressions": "error",
|
|
"@typescript-eslint/no-empty-interface": "error",
|
|
"max-len": [
|
|
"error",
|
|
{
|
|
"ignorePattern": "^import \\{.+;$",
|
|
"ignoreRegExpLiterals": true,
|
|
"ignoreStrings": true,
|
|
"ignoreUrls": true,
|
|
"code": 150
|
|
}
|
|
],
|
|
"id-blacklist": "error",
|
|
"@typescript-eslint/member-delimiter-style": "error",
|
|
"no-shadow": "off",
|
|
"@typescript-eslint/no-shadow": ["error"],
|
|
"comma-dangle": ["error", "always-multiline"],
|
|
"no-mixed-operators": "error",
|
|
"prefer-arrow/prefer-arrow-functions": "error",
|
|
"@angular-eslint/directive-selector": [
|
|
"error",
|
|
{
|
|
"type": "attribute",
|
|
"prefix": "",
|
|
"style": "camelCase"
|
|
}
|
|
],
|
|
"@typescript-eslint/ban-types": "error"
|
|
}
|
|
},
|
|
{
|
|
"files": ["*.html"],
|
|
"extends": [
|
|
"plugin:@typescript-eslint/recommended",
|
|
"plugin:@angular-eslint/template/recommended",
|
|
"prettier"
|
|
],
|
|
"parserOptions": {
|
|
"ecmaVersion": 2020,
|
|
"sourceType": "module"
|
|
},
|
|
"processor": "@angular-eslint/template/extract-inline-html",
|
|
"plugins": ["prettier"],
|
|
"rules": {
|
|
"@angular-eslint/template/no-negated-async": "off",
|
|
"prettier/prettier": "error"
|
|
}
|
|
}
|
|
]
|
|
}
|