@@ -40,7 +40,7 @@ const modernAngularRules = {
40
40
} ;
41
41
42
42
try {
43
- const major = require ( '@angular/cli' ) . VERSION . major ;
43
+ const { major} = require ( '@angular/cli' ) . VERSION ;
44
44
45
45
angularVersion = parseInt ( major , 10 ) ;
46
46
} catch { }
@@ -94,7 +94,7 @@ export default tseslint.config(
94
94
] ,
95
95
} ,
96
96
eslint . configs . recommended ,
97
- tseslint . configs . recommended ,
97
+ tseslint . configs . all ,
98
98
require ( 'eslint-config-prettier' ) ,
99
99
{
100
100
files : [ '**/*.ts' , '**/*.js' ] ,
@@ -112,8 +112,7 @@ export default tseslint.config(
112
112
} ,
113
113
extends : [
114
114
eslint . configs . recommended ,
115
- ...tseslint . configs . recommended ,
116
- ...tseslint . configs . stylistic ,
115
+ ...tseslint . configs . all ,
117
116
...angular . configs . tsRecommended ,
118
117
] ,
119
118
languageOptions : {
@@ -546,6 +545,12 @@ export default tseslint.config(
546
545
'@typescript-eslint/no-useless-constructor' : 'error' ,
547
546
'@typescript-eslint/no-var-requires' : 'error' ,
548
547
'@typescript-eslint/only-throw-error' : 'error' ,
548
+ '@typescript-eslint/parameter-properties' : [
549
+ 'error' ,
550
+ {
551
+ allow : [ 'public readonly' , 'protected readonly' , 'private readonly' ] ,
552
+ } ,
553
+ ] ,
549
554
'@typescript-eslint/prefer-as-const' : 'error' ,
550
555
'@typescript-eslint/prefer-find' : 'error' ,
551
556
'@typescript-eslint/prefer-for-of' : 'error' ,
@@ -886,6 +891,8 @@ export default tseslint.config(
886
891
...angular . configs . templateAccessibility ,
887
892
] ,
888
893
rules : {
894
+ '@typescript-eslint/no-confusing-void-expression' : 'off' ,
895
+ '@typescript-eslint/no-meaningless-void-operator' : 'off' ,
889
896
'@angular-eslint/template/interactive-supports-focus' : 'off' ,
890
897
'@angular-eslint/template/label-has-associated-control' : 'off' ,
891
898
'@angular-eslint/template/no-distracting-elements' : 'error' ,
@@ -894,7 +901,51 @@ export default tseslint.config(
894
901
'@angular-eslint/template/prefer-control-flow' :
895
902
angularVersion >= modernAngularRules . preferControlFlow ? 'error' : 'off' ,
896
903
'@angular-eslint/template/prefer-self-closing-tags' : 'error' ,
904
+ '@typescript-eslint/await-thenable' : 'off' ,
897
905
'@typescript-eslint/ban-ts-comment' : 'off' ,
906
+ '@typescript-eslint/consistent-type-exports' : 'off' ,
907
+ '@typescript-eslint/consistent-type-imports' : 'off' ,
908
+ '@typescript-eslint/dot-notation' : 'off' ,
909
+ '@typescript-eslint/naming-convention' : 'off' ,
910
+ '@typescript-eslint/no-array-delete' : 'off' ,
911
+ '@typescript-eslint/no-duplicate-type-constituents' : 'off' ,
912
+ '@typescript-eslint/no-implied-eval' : 'off' ,
913
+ '@typescript-eslint/no-misused-promises' : 'off' ,
914
+ '@typescript-eslint/no-mixed-enums' : 'off' ,
915
+ '@typescript-eslint/no-redundant-type-constituents' : 'off' ,
916
+ '@typescript-eslint/no-unnecessary-boolean-literal-compare' : 'off' ,
917
+ '@typescript-eslint/no-unnecessary-qualifier' : 'off' ,
918
+ '@typescript-eslint/no-unnecessary-template-expression' : 'off' ,
919
+ '@typescript-eslint/no-unnecessary-type-arguments' : 'off' ,
920
+ '@typescript-eslint/no-unnecessary-type-assertion' : 'off' ,
921
+ '@typescript-eslint/no-unnecessary-type-parameters' : 'off' ,
922
+ '@typescript-eslint/no-unsafe-argument' : 'off' ,
923
+ '@typescript-eslint/no-unsafe-assignment' : 'off' ,
924
+ '@typescript-eslint/no-unsafe-call' : 'off' ,
925
+ '@typescript-eslint/no-unsafe-enum-comparison' : 'off' ,
926
+ '@typescript-eslint/no-unsafe-type-assertion' : 'off' ,
927
+ '@typescript-eslint/non-nullable-type-assertion-style' : 'off' ,
928
+ '@typescript-eslint/only-throw-error' : 'off' ,
929
+ '@typescript-eslint/prefer-destructuring' : 'off' ,
930
+ '@typescript-eslint/prefer-find' : 'off' ,
931
+ '@typescript-eslint/prefer-includes' : 'off' ,
932
+ '@typescript-eslint/prefer-optional-chain' : 'off' ,
933
+ '@typescript-eslint/prefer-promise-reject-errors' : 'off' ,
934
+ '@typescript-eslint/prefer-readonly' : 'off' ,
935
+ '@typescript-eslint/prefer-reduce-type-parameter' : 'off' ,
936
+ '@typescript-eslint/prefer-regexp-exec' : 'off' ,
937
+ '@typescript-eslint/prefer-return-this-type' : 'off' ,
938
+ '@typescript-eslint/prefer-string-starts-ends-with' : 'off' ,
939
+ '@typescript-eslint/promise-function-async' : 'off' ,
940
+ '@typescript-eslint/related-getter-setter-pairs' : 'off' ,
941
+ '@typescript-eslint/require-array-sort-compare' : 'off' ,
942
+ '@typescript-eslint/require-await' : 'off' ,
943
+ '@typescript-eslint/restrict-plus-operands' : 'off' ,
944
+ '@typescript-eslint/restrict-template-expressions' : 'off' ,
945
+ '@typescript-eslint/return-await' : 'off' ,
946
+ '@typescript-eslint/switch-exhaustiveness-check' : 'off' ,
947
+ '@typescript-eslint/unbound-method' : 'off' ,
948
+ '@typescript-eslint/use-unknown-in-catch-callback-variable' : 'off' ,
898
949
'import/namespace' : 'off' ,
899
950
} ,
900
951
} ,
@@ -997,6 +1048,9 @@ export default tseslint.config(
997
1048
files : [ '**/*' ] ,
998
1049
rules : {
999
1050
'@angular-eslint/use-injectable-provided-in' : 'off' ,
1051
+ '@typescript-eslint/no-confusing-void-expression' : 'off' ,
1052
+ '@typescript-eslint/no-invalid-this' : 'off' ,
1053
+ '@typescript-eslint/no-invalid-void-type' : 'off' ,
1000
1054
'sonarjs/no-invalid-await' : 'off' ,
1001
1055
'@angular-eslint/component-class-suffix' : 'off' ,
1002
1056
'@angular-eslint/component-max-inline-declarations' : 'off' ,
@@ -1018,21 +1072,36 @@ export default tseslint.config(
1018
1072
'@typescript-eslint/adjacent-overload-signatures' : 'off' ,
1019
1073
'@typescript-eslint/ban-ts-comment' : 'off' ,
1020
1074
'@typescript-eslint/class-literal-property-style' : 'off' ,
1075
+ '@typescript-eslint/class-methods-use-this' : 'off' ,
1021
1076
'@typescript-eslint/consistent-return' : 'off' ,
1022
1077
'@typescript-eslint/explicit-module-boundary-types' : 'off' ,
1078
+ '@typescript-eslint/init-declarations' : 'off' ,
1079
+ '@typescript-eslint/method-signature-style' : 'off' ,
1023
1080
'@typescript-eslint/no-base-to-string' : 'off' ,
1081
+ '@typescript-eslint/no-deprecated' : 'off' ,
1024
1082
'@typescript-eslint/no-explicit-any' : 'off' ,
1025
1083
'@typescript-eslint/no-floating-promises' : 'off' ,
1084
+ '@typescript-eslint/no-magic-numbers' : 'off' ,
1085
+ '@typescript-eslint/no-misused-promises' : 'off' ,
1086
+ '@typescript-eslint/no-misused-spread' : 'off' ,
1026
1087
'@typescript-eslint/no-non-null-assertion' : 'off' ,
1027
1088
'@typescript-eslint/no-require-imports' : 'off' ,
1028
1089
'@typescript-eslint/no-shadow' : 'off' ,
1029
1090
'@typescript-eslint/no-unnecessary-condition' : 'off' ,
1091
+ '@typescript-eslint/no-unnecessary-template-expression' : 'off' ,
1092
+ '@typescript-eslint/no-unnecessary-type-parameters' : 'off' ,
1093
+ '@typescript-eslint/no-unsafe-argument' : 'off' ,
1094
+ '@typescript-eslint/no-unsafe-assignment' : 'off' ,
1095
+ '@typescript-eslint/no-unsafe-call' : 'off' ,
1030
1096
'@typescript-eslint/no-unsafe-member-access' : 'off' ,
1031
1097
'@typescript-eslint/no-unsafe-return' : 'off' ,
1098
+ '@typescript-eslint/no-unsafe-type-assertion' : 'off' ,
1032
1099
'@typescript-eslint/no-var-requires' : 'off' ,
1100
+ '@typescript-eslint/prefer-destructuring' : 'off' ,
1033
1101
'@typescript-eslint/prefer-nullish-coalescing' : 'off' ,
1034
1102
'@typescript-eslint/prefer-readonly-parameter-types' : 'off' ,
1035
1103
'@typescript-eslint/strict-boolean-expressions' : 'off' ,
1104
+ '@typescript-eslint/unbound-method' : 'off' ,
1036
1105
camelcase : 'off' ,
1037
1106
'class-methods-use-this' : 'off' ,
1038
1107
complexity : 'off' ,
0 commit comments