Skip to content

Instantly share code, notes, and snippets.

@rexar1988
Created October 20, 2021 08:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rexar1988/723ed41637915ebd534566dd99ca9d38 to your computer and use it in GitHub Desktop.
Save rexar1988/723ed41637915ebd534566dd99ca9d38 to your computer and use it in GitHub Desktop.
Angular ESLint with NgRx
{
"root": true,
"ignorePatterns": [
"projects/**/*"
],
"overrides": [
{
"files": [
"*.ts"
],
"parserOptions": {
"project": [
"tsconfig.json",
"e2e/tsconfig.json"
],
"createDefaultProgram": true
},
"extends": [
"plugin:@angular-eslint/recommended",
"plugin:@angular-eslint/template/process-inline-templates"
],
"rules": {
"@angular-eslint/component-selector": [
"error",
{
"type": "element",
"prefix": "app",
"style": "kebab-case"
}
],
"@angular-eslint/directive-selector": [
"error",
{
"type": "attribute",
"prefix": "app",
"style": "camelCase"
}
],
"@angular-eslint/component-class-suffix": [
"error",
{
"suffixes": ["Component"]
}
],
"@typescript-eslint/comma-dangle": ["error", "always-multiline"],
"@typescript-eslint/member-ordering": [
"error",
{
"default": [
"signature",
"public-static-field",
"protected-static-field",
"private-static-field",
"public-decorated-field",
"protected-decorated-field",
"private-decorated-field",
"private-instance-field",
"protected-instance-field",
"public-instance-field",
"public-abstract-field",
"protected-abstract-field",
"private-abstract-field",
"public-constructor",
"protected-constructor",
"private-constructor",
"public-static-method",
"protected-static-method",
"private-static-method",
"public-decorated-method",
"private-decorated-method",
"protected-decorated-method",
"public-instance-method",
"protected-instance-method",
"private-instance-method",
"public-abstract-method",
"protected-abstract-method",
"private-abstract-method"
]
}
],
"@typescript-eslint/naming-convention": [
"error",
{
"selector": [
"enum"
],
"format": ["StrictPascalCase"],
"suffix": ["Enum"]
},
{
"selector": ["enumMember"],
"format": ["StrictPascalCase"]
},
{
"selector": ["interface"],
"format": ["StrictPascalCase"],
"suffix": ["Interface"]
}
],
"@typescript-eslint/no-shadow": ["error"],
"array-callback-return": "error",
"camelcase": "error",
"comma-spacing": [
"error",
{
"before": false,
"after": true
}
],
"eqeqeq": "error",
"for-direction": "error",
"quotes": [
"error",
"single"
],
"max-len": [
"error",
{
"ignoreStrings": true,
"ignoreComments": true,
"ignoreTemplateLiterals": true,
"ignoreRegExpLiterals": true,
"code": 120
}
],
"no-async-promise-executor": "error",
"no-await-in-loop": "error",
"no-compare-neg-zero": "error",
"no-cond-assign": "error",
"no-console": "warn",
"no-debugger": "warn",
"no-dupe-else-if": "error",
"no-ex-assign": "error",
"no-lonely-if": "error",
"no-param-reassign": "error",
"no-shadow": "off",
"no-unneeded-ternary": "error",
"no-underscore-dangle": ["error", {
"allowAfterThis": true
}],
"no-unsafe-negation": "error",
"no-var": "error",
"prefer-const": "error",
"prefer-destructuring": [
"error",
{
"object": true,
"array": false
}
],
"semi": "error",
"space-before-blocks": "error",
"space-infix-ops": "error",
"space-unary-ops": "error"
}
},
{
"files": [
"*.html"
],
"extends": [
"plugin:@angular-eslint/template/recommended"
],
"rules": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment