@@ -19,6 +19,7 @@ module.exports = defineConfig({
19
19
'plugin:@typescript-eslint/recommended-type-checked' ,
20
20
'plugin:prettier/recommended' ,
21
21
'plugin:jsdoc/recommended-typescript-error' ,
22
+ 'plugin:unicorn/recommended' ,
22
23
] ,
23
24
parser : '@typescript-eslint/parser' ,
24
25
parserOptions : {
@@ -37,6 +38,64 @@ module.exports = defineConfig({
37
38
38
39
'deprecation/deprecation' : 'error' ,
39
40
41
+ 'unicorn/no-nested-ternary' : 'off' , // incompatible with prettier
42
+ 'unicorn/no-null' : 'off' , // incompatible with TypeScript
43
+ 'unicorn/number-literal-case' : 'off' , // incompatible with prettier
44
+
45
+ // TODO @Shinigami 92 2023-09-23: prefer-at should be turned on when we drop support for Node 14.
46
+ 'unicorn/prefer-at' : 'off' ,
47
+ // TODO @Shinigami 92 2023-09-23: prefer-string-replace-all should be turned on when we drop support for Node 14.
48
+ 'unicorn/prefer-string-replace-all' : 'off' ,
49
+
50
+ // TODO @Shinigami 92 2023-09-23: The following rules currently conflict with our code.
51
+ // Each rule should be checked whether it should be enabled/configured and the problems fixed, or stay disabled permanently.
52
+ 'unicorn/better-regex' : 'off' ,
53
+ 'unicorn/catch-error-name' : 'off' ,
54
+ 'unicorn/consistent-destructuring' : 'off' ,
55
+ 'unicorn/consistent-function-scoping' : 'off' ,
56
+ 'unicorn/escape-case' : 'off' ,
57
+ 'unicorn/explicit-length-check' : 'off' ,
58
+ 'unicorn/filename-case' : 'off' ,
59
+ 'unicorn/import-style' : 'off' ,
60
+ 'unicorn/no-array-callback-reference' : 'off' ,
61
+ 'unicorn/no-array-for-each' : 'off' ,
62
+ 'unicorn/no-array-push-push' : 'off' ,
63
+ 'unicorn/no-array-reduce' : 'off' ,
64
+ 'unicorn/no-await-expression-member' : 'off' ,
65
+ 'unicorn/no-console-spaces' : 'off' ,
66
+ 'unicorn/no-for-loop' : 'off' ,
67
+ 'unicorn/no-hex-escape' : 'off' ,
68
+ 'unicorn/no-instanceof-array' : 'off' ,
69
+ 'unicorn/no-negated-condition' : 'off' ,
70
+ 'unicorn/no-new-array' : 'off' ,
71
+ 'unicorn/no-object-as-default-parameter' : 'off' ,
72
+ 'unicorn/no-process-exit' : 'off' ,
73
+ 'unicorn/no-useless-switch-case' : 'off' ,
74
+ 'unicorn/no-zero-fractions' : 'off' ,
75
+ 'unicorn/numeric-separators-style' : 'off' ,
76
+ 'unicorn/prefer-array-flat-map' : 'off' ,
77
+ 'unicorn/prefer-array-some' : 'off' ,
78
+ 'unicorn/prefer-code-point' : 'off' ,
79
+ 'unicorn/prefer-date-now' : 'off' ,
80
+ 'unicorn/prefer-export-from' : 'off' ,
81
+ 'unicorn/prefer-includes' : 'off' ,
82
+ 'unicorn/prefer-module' : 'off' ,
83
+ 'unicorn/prefer-native-coercion-functions' : 'off' ,
84
+ 'unicorn/prefer-negative-index' : 'off' ,
85
+ 'unicorn/prefer-node-protocol' : 'off' ,
86
+ 'unicorn/prefer-number-properties' : 'off' ,
87
+ 'unicorn/prefer-object-from-entries' : 'off' ,
88
+ 'unicorn/prefer-optional-catch-binding' : 'off' ,
89
+ 'unicorn/prefer-spread' : 'off' ,
90
+ 'unicorn/prefer-string-slice' : 'off' ,
91
+ 'unicorn/prefer-string-starts-ends-with' : 'off' ,
92
+ 'unicorn/prefer-ternary' : 'off' ,
93
+ 'unicorn/prefer-top-level-await' : 'off' ,
94
+ 'unicorn/prevent-abbreviations' : 'off' ,
95
+ 'unicorn/require-array-join-separator' : 'off' ,
96
+ 'unicorn/switch-case-braces' : 'off' ,
97
+ 'unicorn/text-encoding-identifier-case' : 'off' ,
98
+
40
99
'@typescript-eslint/array-type' : [
41
100
'error' ,
42
101
{ default : 'array-simple' , readonly : 'generic' } ,
0 commit comments