RED-3800: change eslintrc file type

This commit is contained in:
Dan Percic 2023-05-17 13:56:46 +03:00
parent 2868ebe506
commit dbfde290c8
2 changed files with 121 additions and 121 deletions

121
.eslintrc.js Normal file
View File

@ -0,0 +1,121 @@
module.exports = {
root: true,
env: {
browser: true,
},
ignorePatterns: ['!**/*'],
overrides: [
{
files: ['*.ts'],
extends: ['plugin:@typescript-eslint/recommended'],
parser: '@typescript-eslint/parser',
parserOptions: {
project: './tsconfig.json',
tsconfigRootDir: __dirname,
},
rules: {
'@typescript-eslint/no-explicit-any': 'error',
'@typescript-eslint/explicit-member-accessibility': [
'error',
{
accessibility: 'no-public',
},
],
'@typescript-eslint/unbound-method': 'error',
'@typescript-eslint/no-floating-promises': 'off',
'@typescript-eslint/naming-convention': [
'error',
{
selector: 'memberLike',
modifiers: ['private'],
format: ['camelCase'],
leadingUnderscore: 'allow',
},
{
selector: 'memberLike',
modifiers: ['protected'],
format: ['camelCase'],
leadingUnderscore: 'allow',
},
{
selector: 'memberLike',
modifiers: ['private'],
format: ['UPPER_CASE', 'camelCase'],
leadingUnderscore: 'allow',
},
],
'@typescript-eslint/restrict-template-expressions': 'off',
'@typescript-eslint/lines-between-class-members': 'off',
},
},
{
files: ['*.ts'],
extends: [
'eslint:recommended',
'plugin:@angular-eslint/recommended',
'plugin:@angular-eslint/template/process-inline-templates',
'plugin:prettier/recommended',
'plugin:rxjs/recommended',
],
rules: {
'rxjs/no-ignored-subscription': 'error',
'@angular-eslint/directive-selector': [
'error',
{
type: 'attribute',
prefix: 'iqser',
style: 'camelCase',
},
],
'@angular-eslint/component-selector': [
'error',
{
type: 'element',
prefix: 'iqser',
style: 'kebab-case',
},
],
'@angular-eslint/prefer-on-push-component-change-detection': 'error',
'@angular-eslint/use-lifecycle-interface': 'error',
'@angular-eslint/no-input-prefix': 'error',
'@angular-eslint/no-input-rename': 'error',
'@angular-eslint/no-output-on-prefix': 'error',
'@angular-eslint/no-output-rename': 'error',
'@angular-eslint/prefer-output-readonly': 'error',
'no-underscore-dangle': 'off',
'no-param-reassign': 'error',
'no-dupe-class-members': 'off',
'no-redeclare': 'off',
'no-unused-vars': 'off',
'consistent-return': 'off',
},
},
{
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',
},
],
},
},
{
files: ['**/*.spec.ts'],
env: {
node: true,
jest: true,
},
rules: {
'@angular-eslint/prefer-on-push-component-change-detection': 'off',
},
},
],
};

View File

@ -1,121 +0,0 @@
{
"root": true,
"env": {
"browser": true
},
"ignorePatterns": ["!**/*"],
"overrides": [
{
"files": ["*.ts"],
"extends": ["plugin:@typescript-eslint/recommended"],
"parser": "@typescript-eslint/parser",
"parserOptions": {
"project": "./tsconfig.json"
},
"rules": {
"@typescript-eslint/no-explicit-any": "error",
"@typescript-eslint/explicit-member-accessibility": [
"error",
{
"accessibility": "no-public"
}
],
"@typescript-eslint/unbound-method": "error",
"@typescript-eslint/no-floating-promises": "off",
"@typescript-eslint/naming-convention": [
"error",
{
"selector": "memberLike",
"modifiers": ["private"],
"format": ["camelCase"],
"leadingUnderscore": "allow"
},
{
"selector": "memberLike",
"modifiers": ["protected"],
"format": ["camelCase"],
"leadingUnderscore": "allow"
},
{
"selector": "memberLike",
"modifiers": ["private"],
"format": ["UPPER_CASE", "camelCase"],
"leadingUnderscore": "allow"
}
],
"@typescript-eslint/restrict-template-expressions": "off",
"@typescript-eslint/lines-between-class-members": "off"
}
},
{
"files": ["*.ts"],
"extends": [
"eslint:recommended",
"plugin:@angular-eslint/recommended",
"plugin:@angular-eslint/template/process-inline-templates",
"plugin:prettier/recommended",
"plugin:rxjs/recommended"
],
"rules": {
"rxjs/no-ignored-subscription": "error",
"@angular-eslint/directive-selector": [
"error",
{
"type": "attribute",
"prefix": "iqser",
"style": "camelCase"
}
],
"@angular-eslint/component-selector": [
"error",
{
"type": "element",
"prefix": "iqser",
"style": "kebab-case"
}
],
"@angular-eslint/prefer-on-push-component-change-detection": "error",
"@angular-eslint/use-lifecycle-interface": "error",
"@angular-eslint/no-input-prefix": "error",
"@angular-eslint/no-input-rename": "error",
"@angular-eslint/no-output-on-prefix": "error",
"@angular-eslint/no-output-rename": "error",
"@angular-eslint/prefer-output-readonly": "error",
"no-underscore-dangle": "off",
"no-param-reassign": "error",
"no-dupe-class-members": "off",
"no-redeclare": "off",
"no-unused-vars": "off",
"consistent-return": "off"
}
},
{
"files": ["*.html"],
"extends": ["plugin:@angular-eslint/template/recommended"]
},
{
// https://github.com/angular-eslint/angular-eslint#notes-for-eslint-plugin-prettier-users
"files": ["*.html"],
"excludedFiles": ["*inline-template-*.component.html"],
"extends": ["plugin:prettier/recommended"],
"rules": {
"prettier/prettier": [
"error",
{
"parser": "angular"
}
]
}
},
{
"files": ["**/*.spec.ts"],
"env": {
"node": true,
"jest": true
},
"rules": {
"@angular-eslint/prefer-on-push-component-change-detection": "off"
}
}
]
}