added linter

This commit is contained in:
Igor Hrenowitsch Propisnov 2024-05-17 21:40:33 +02:00
parent 4f34f32c60
commit 93c5710787
3 changed files with 32 additions and 3 deletions

View File

@ -1,7 +1,7 @@
{ {
"root": true, "root": true,
"ignorePatterns": ["projects/**/*"], "ignorePatterns": ["projects/**/*"],
"plugins": ["import", "prettier", "@stylistic/eslint-plugin-ts"], "plugins": ["import", "prettier", "@stylistic/eslint-plugin-ts", "sort-class-members"],
"overrides": [ "overrides": [
{ {
"files": ["*.ts"], "files": ["*.ts"],
@ -24,7 +24,6 @@
] ]
} }
], ],
// Docs for line padding => https://eslint.style/rules/js/padding-line-between-statements
"@stylistic/ts/block-spacing": ["error"], "@stylistic/ts/block-spacing": ["error"],
"@stylistic/ts/brace-style": "off", "@stylistic/ts/brace-style": "off",
"@stylistic/ts/key-spacing": ["error", { "afterColon": true }], "@stylistic/ts/key-spacing": ["error", { "afterColon": true }],
@ -122,6 +121,23 @@
] ]
} }
], ],
// https://github.com/bryanrsmith/eslint-plugin-sort-class-members -> Read Docs and replace @typescript-eslint/member-ordering
// "sort-class-members/sort-class-members": [
// 2,
// {
// "order": [
// "[public-properties]",
// "[protected-properties]",
// "[private-properties]",
// "everything-else"
// ],
// "groups": {
// "public-properties": [{ "type": "property", "accessibility": "public" }],
// "protected-properties": [{ "type": "property", "accessibility": "protected" }],
// "private-properties": [{ "type": "property", "accessibility": "private" }]
// }
// }
// ],
"padding-line-between-statements": [ "padding-line-between-statements": [
"error", "error",
{ "blankLine": "always", "prev": "const", "next": "*" }, { "blankLine": "always", "prev": "const", "next": "*" },
@ -141,7 +157,7 @@
"error", "error",
{ {
"arrayDestructuring": true, "arrayDestructuring": true,
"arrowParameter": true, "arrowParameter": false,
"memberVariableDeclaration": true, "memberVariableDeclaration": true,
"objectDestructuring": true, "objectDestructuring": true,
"parameter": true, "parameter": true,

View File

@ -53,6 +53,7 @@
"eslint-config-prettier": "^9.1.0", "eslint-config-prettier": "^9.1.0",
"eslint-plugin-import": "^2.29.1", "eslint-plugin-import": "^2.29.1",
"eslint-plugin-prettier": "^5.1.3", "eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-sort-class-members": "^1.20.0",
"jest": "^29.7.0", "jest": "^29.7.0",
"jest-preset-angular": "^14.0.3", "jest-preset-angular": "^14.0.3",
"prettier": "3.2.5", "prettier": "3.2.5",

View File

@ -100,6 +100,9 @@ devDependencies:
eslint-plugin-prettier: eslint-plugin-prettier:
specifier: ^5.1.3 specifier: ^5.1.3
version: 5.1.3(eslint-config-prettier@9.1.0)(eslint@8.57.0)(prettier@3.2.5) version: 5.1.3(eslint-config-prettier@9.1.0)(eslint@8.57.0)(prettier@3.2.5)
eslint-plugin-sort-class-members:
specifier: ^1.20.0
version: 1.20.0(eslint@8.57.0)
jest: jest:
specifier: ^29.7.0 specifier: ^29.7.0
version: 29.7.0 version: 29.7.0
@ -5422,6 +5425,15 @@ packages:
synckit: 0.8.8 synckit: 0.8.8
dev: true dev: true
/eslint-plugin-sort-class-members@1.20.0(eslint@8.57.0):
resolution: {integrity: sha512-xNaik4GQ/pRwd1soIVI28HEXZbrWoLR5krau2+E8YcHj7N09UviPg5mYhf/rELG29bIFJdXDOFJazN90+luMOw==}
engines: {node: '>=4.0.0'}
peerDependencies:
eslint: '>=0.8.0'
dependencies:
eslint: 8.57.0
dev: true
/eslint-scope@5.1.1: /eslint-scope@5.1.1:
resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
engines: {node: '>=8.0.0'} engines: {node: '>=8.0.0'}