{ "root": true, "ignorePatterns": ["**/*"], "overrides": [ { "files": ["*.ts"], "extends": [ "eslint:recommended", "plugin:@angular-eslint/recommended", "plugin:@angular-eslint/template/process-inline-templates", "plugin:prettier/recommended", "plugin:rxjs/recommended" ], "parserOptions": { "project": "./tsconfig.json" }, "rules": { "rxjs/no-ignored-subscription": "warn", "@angular-eslint/prefer-standalone": "off", "@angular-eslint/no-conflicting-lifecycle": "error", "@angular-eslint/no-host-metadata-property": "error", "@angular-eslint/no-input-rename": "error", "@angular-eslint/no-inputs-metadata-property": "error", "@angular-eslint/no-output-native": "error", "@angular-eslint/no-output-on-prefix": "error", "@angular-eslint/no-output-rename": "error", "@angular-eslint/no-outputs-metadata-property": "error", "@angular-eslint/use-lifecycle-interface": "error", "@angular-eslint/use-pipe-transform-interface": "error", "@typescript-eslint/consistent-type-definitions": "error", "@typescript-eslint/dot-notation": "off", "@typescript-eslint/no-unsafe-call": "off", "@typescript-eslint/no-unsafe-assignment": "off", "@typescript-eslint/no-unsafe-return": "off", "@typescript-eslint/no-unsafe-member-access": "off", "@typescript-eslint/no-misused-promises": "off", "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/indent": "off", "@typescript-eslint/lines-between-class-members": "off", "@typescript-eslint/ban-types": "off", "@typescript-eslint/no-unsafe-argument": "off", "@typescript-eslint/explicit-member-accessibility": [ "error", { "accessibility": "no-public" } ], "@typescript-eslint/naming-convention": [ "error", { "selector": "memberLike", "modifiers": ["readonly"], "format": ["UPPER_CASE", "camelCase"] }, { "selector": "enumMember", "format": ["UPPER_CASE"] }, { "selector": "memberLike", "modifiers": ["private"], "format": ["camelCase"], "leadingUnderscore": "require" }, { "selector": "memberLike", "modifiers": ["protected"], "format": ["camelCase"], "leadingUnderscore": "allow" }, { "selector": "memberLike", "modifiers": ["private", "readonly"], "format": ["UPPER_CASE", "camelCase"], "leadingUnderscore": "require" } ], "@typescript-eslint/no-empty-function": "off", "@typescript-eslint/no-empty-interface": "error", "@typescript-eslint/no-inferrable-types": [ "error", { "ignoreParameters": true } ], "@typescript-eslint/no-misused-new": "error", "@typescript-eslint/no-non-null-assertion": "error", "@typescript-eslint/no-shadow": [ "error", { "hoist": "all" } ], "@typescript-eslint/no-unused-expressions": "error", "@typescript-eslint/prefer-function-type": "error", "@typescript-eslint/unified-signatures": "error", "@typescript-eslint/explicit-module-boundary-types": "off", "@typescript-eslint/no-floating-promises": "off", "@typescript-eslint/unbound-method": "off", "@typescript-eslint/restrict-template-expressions": "off", "@typescript-eslint/member-ordering": [ "warn", { "default": [ "signature", "call-signature", "#private-static-field", "private-static-field", "protected-static-field", "public-static-field", "#private-instance-field", "private-instance-field", "protected-instance-field", "public-instance-field", "private-decorated-field", "protected-decorated-field", "public-decorated-field", "protected-abstract-field", "public-abstract-field", "#private-field", "private-field", "protected-field", "public-field", "static-field", "instance-field", "abstract-field", "decorated-field", "field", "static-initialization", "public-constructor", "protected-constructor", "private-constructor", "constructor", "public-static-get", "protected-static-get", "private-static-get", "#private-static-get", "public-decorated-get", "protected-decorated-get", "private-decorated-get", "public-instance-get", "protected-instance-get", "private-instance-get", "#private-instance-get", "public-abstract-get", "protected-abstract-get", "public-get", "protected-get", "private-get", "#private-get", "static-get", "instance-get", "abstract-get", "decorated-get", "get", "public-static-set", "protected-static-set", "private-static-set", "#private-static-set", "public-decorated-set", "protected-decorated-set", "private-decorated-set", "public-instance-set", "protected-instance-set", "private-instance-set", "#private-instance-set", "public-abstract-set", "protected-abstract-set", "public-set", "protected-set", "private-set", "#private-set", "static-set", "instance-set", "abstract-set", "decorated-set", "set", "public-static-method", "protected-static-method", "private-static-method", "#private-static-method", "public-decorated-method", "protected-decorated-method", "private-decorated-method", "public-instance-method", "protected-instance-method", "private-instance-method", "#private-instance-method", "public-abstract-method", "protected-abstract-method", "public-method", "protected-method", "private-method", "#private-method", "static-method", "instance-method", "abstract-method", "decorated-method", "method" ] } ], "arrow-body-style": "error", "arrow-parens": ["error", "as-needed"], "constructor-super": "error", "eqeqeq": ["error", "smart"], "guard-for-in": "error", "id-blacklist": "off", "id-match": "off", "no-bitwise": "error", "no-caller": "error", "no-console": "off", "no-debugger": "error", "no-empty": "off", "no-eval": "error", "no-fallthrough": "error", "no-new-wrappers": "error", "no-restricted-imports": ["error", "rxjs/Rx"], "no-throw-literal": "error", "no-undef-init": "error", "no-underscore-dangle": "off", "no-var": "error", "no-else-return": "error", "prefer-const": "error", "radix": "error", "curly": "error", "class-methods-use-this": "off", "quotes": ["error", "single"], "comma-dangle": [ "error", { "arrays": "always-multiline", "objects": "always-multiline", "imports": "always-multiline", "exports": "always-multiline", "functions": "always-multiline" } ], "max-len": [ "error", { "code": 140, "tabWidth": 4, "ignoreComments": true, "ignorePattern": "^import .*" } ] } }, { "files": ["*.html"], "extends": ["plugin:@angular-eslint/template/recommended"] }, { "files": ["*.html"], "excludedFiles": ["*inline-template-*.component.html"], "extends": ["plugin:prettier/recommended"], "rules": { "prettier/prettier": [ "error", { "parser": "angular" } ] } } ] }