@ethang/eslint-config 17.6.2 → 18.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +10 -6
  2. package/eslint.config.js +543 -641
  3. package/package.json +1 -5
package/eslint.config.js CHANGED
@@ -3,8 +3,6 @@ import parser from "@typescript-eslint/parser";
3
3
  import a11y from "eslint-plugin-jsx-a11y/lib/index.js";
4
4
  import n from "eslint-plugin-n";
5
5
  import eslintPluginPrettier from "eslint-plugin-prettier/recommended";
6
- import react from "eslint-plugin-react";
7
- import reactHooks from "eslint-plugin-react-hooks";
8
6
  import unicorn from "eslint-plugin-unicorn";
9
7
  import tseslint from "typescript-eslint";
10
8
  import sonar from "eslint-plugin-sonarjs";
@@ -21,651 +19,555 @@ const languageOptions = {
21
19
 
22
20
  const ignores = ["eslint.config.js", "node_modules", "dist"];
23
21
 
24
- export default tseslint.config(
25
- eslintPluginPrettier,
26
- {
27
- files: ["**/*.{jsx,tsx}"],
28
- ignores,
29
- languageOptions,
30
- plugins: {
31
- react,
32
- "react-hooks": reactHooks,
33
- },
34
- rules: {
35
- "react/boolean-prop-naming": "error",
36
- "react/button-has-type": "error",
37
- "react/checked-requires-onchange-or-readonly": "error",
38
- "react/default-props-match-prop-types": "error",
39
- "react/destructuring-assignment": "error",
40
- "react/display-name": "error",
41
- "react/forbid-component-props": "error",
42
- "react/function-component-definition": "error",
43
- "react/hook-use-state": "error",
44
- "react/iframe-missing-sandbox": "error",
45
- "react/jsx-boolean-value": "error",
46
- "react/jsx-curly-brace-presence": "error",
47
- "react/jsx-filename-extension": [
48
- "error",
49
- { extensions: [".jsx", ".tsx"] },
50
- ],
51
- "react/jsx-fragments": "error",
52
- "react/jsx-handler-names": "error",
53
- "react/jsx-key": "error",
54
- "react/jsx-max-depth": "error",
55
- "react/jsx-no-bind": "error",
56
- "react/jsx-no-comment-textnodes": "error",
57
- "react/jsx-no-constructed-context-values": "error",
58
- "react/jsx-no-duplicate-props": "error",
59
- "react/jsx-no-leaked-render": "error",
60
- "react/jsx-no-script-url": "error",
61
- "react/jsx-no-target-blank": "error",
62
- "react/jsx-no-undef": "error",
63
- "react/jsx-no-useless-fragment": "error",
64
- "react/jsx-pascal-case": "error",
65
- "react/jsx-props-no-spread-multi": "error",
66
- "react/jsx-uses-react": "error",
67
- "react/jsx-uses-vars": "error",
68
- "react/no-access-state-in-setstate": "error",
69
- "react/no-adjacent-inline-elements": "error",
70
- "react/no-array-index-key": "error",
71
- "react/no-arrow-function-lifecycle": "error",
72
- "react/no-children-prop": "error",
73
- "react/no-danger-with-children": "error",
74
- "react/no-deprecated": "error",
75
- "react/no-did-mount-set-state": "error",
76
- "react/no-did-update-set-state": "error",
77
- "react/no-direct-mutation-state": "error",
78
- "react/no-find-dom-node": "error",
79
- "react/no-invalid-html-attribute": "error",
80
- "react/no-is-mounted": "error",
81
- "react/no-multi-comp": "error",
82
- "react/no-namespace": "error",
83
- "react/no-object-type-as-default-prop": "error",
84
- "react/no-redundant-should-component-update": "error",
85
- "react/no-render-return-value": "error",
86
- "react/no-set-state": "error",
87
- "react/no-string-refs": "error",
88
- "react/no-this-in-sfc": "error",
89
- "react/no-typos": "error",
90
- "react/no-unescaped-entities": "error",
91
- "react/no-unknown-property": "error",
92
- "react/no-unsafe": "error",
93
- "react/no-unstable-nested-components": "error",
94
- "react/no-unused-class-component-methods": "error",
95
- "react/no-unused-prop-types": "error",
96
- "react/no-unused-state": "error",
97
- "react/no-will-update-set-state": "error",
98
- "react/prefer-es6-class": "error",
99
- "react/prefer-exact-props": "error",
100
- "react/prefer-read-only-props": "error",
101
- "react/prefer-stateless-function": "error",
102
- "react/prop-types": "error",
103
- "react/require-optimization": "error",
104
- "react/require-render-return": "error",
105
- "react/self-closing-comp": "error",
106
- "react/sort-comp": "error",
107
- "react/sort-default-props": "error",
108
- "react/sort-prop-types": "error",
109
- "react/state-in-constructor": "error",
110
- "react/static-property-placement": "error",
111
- "react/style-prop-object": "error",
112
- "react/void-dom-elements-no-children": "error",
113
-
114
- "react-hooks/exhaustive-deps": "error",
115
- "react-hooks/rules-of-hooks": "error",
116
- },
22
+ export default tseslint.config(eslintPluginPrettier, {
23
+ files: ["**/*.{js,ts,mjs,jsx,tsx}"],
24
+ ignores,
25
+ languageOptions,
26
+ plugins: {
27
+ "@typescript-eslint": tseslint.plugin,
28
+ a11y,
29
+ n,
30
+ perfectionist,
31
+ sonar,
32
+ unicorn,
33
+ "@tanstack/query": tanstack,
117
34
  },
118
- {
119
- files: ["**/*.{js,ts,mjs,jsx,tsx}"],
120
- ignores,
121
- languageOptions,
122
- plugins: {
123
- "@typescript-eslint": tseslint.plugin,
124
- a11y,
125
- n,
126
- perfectionist,
127
- sonar,
128
- unicorn,
129
- "@tanstack/query": tanstack,
130
- },
131
- rules: {
132
- "accessor-pairs": "error",
133
- "array-callback-return": "error",
134
- "arrow-body-style": ["error", "always"],
135
- "block-scoped-var": "error",
136
- "constructor-super": "error",
137
- eqeqeq: "error",
138
- "for-direction": "error",
139
- "func-name-matching": "error",
140
- "func-style": [
141
- "error",
142
- "declaration",
143
- {
144
- allowArrowFunctions: true,
145
- },
146
- ],
147
- "getter-return": "error",
148
- "grouped-accessor-pairs": "error",
149
- "guard-for-in": "error",
150
- "logical-assignment-operators": "error",
151
- "max-classes-per-file": "error",
152
- "max-depth": "error",
153
- "max-lines": "error",
154
- "max-lines-per-function": "error",
155
- "max-nested-callbacks": "error",
156
- "max-statements": "error",
157
- "no-alert": "error",
158
- "no-async-promise-executor": "error",
159
- "no-await-in-loop": "error",
160
- "no-bitwise": "error",
161
- "no-caller": "error",
162
- "no-case-declarations": "error",
163
- "no-class-assign": "error",
164
- "no-compare-neg-zero": "error",
165
- "no-cond-assign": "error",
166
- "no-console": "error",
167
- "no-const-assign": "error",
168
- "no-constant-binary-expression": "error",
169
- "no-constant-condition": "error",
170
- "no-constructor-return": "error",
171
- "no-control-regex": "error",
172
- "no-debugger": "error",
173
- "no-delete-var": "error",
174
- "no-div-regex": "error",
175
- "no-dupe-args": "error",
176
- "no-dupe-else-if": "error",
177
- "no-dupe-keys": "error",
178
- "no-duplicate-case": "error",
179
- "no-else-return": "error",
180
- "no-empty": "error",
181
- "no-empty-character-class": "error",
182
- "no-empty-pattern": "error",
183
- "no-empty-static-block": "error",
184
- "no-eq-null": "error",
185
- "no-eval": "error",
186
- "no-ex-assign": "error",
187
- "no-extend-native": "error",
188
- "no-extra-bind": "error",
189
- "no-extra-boolean-cast": "error",
190
- "no-extra-label": "error",
191
- "no-fallthrough": "error",
192
- "no-func-assign": "error",
193
- "no-global-assign": "error",
194
- "no-implicit-coercion": "error",
195
- "no-import-assign": "error",
196
- "no-inner-declarations": "error",
197
- "no-invalid-regexp": "error",
198
- "no-irregular-whitespace": "error",
199
- "no-iterator": "error",
200
- "no-label-var": "error",
201
- "no-labels": "error",
202
- "no-lone-blocks": "error",
203
- "no-lonely-if": "error",
204
- "no-loss-of-precision": "error",
205
- "no-misleading-character-class": "error",
206
- "no-multi-assign": "error",
207
- "no-multi-str": "error",
208
- "no-negated-condition": "error",
209
- "no-nested-ternary": "error",
210
- "no-new": "error",
211
- "no-new-func": "error",
212
- "no-new-native-nonconstructor": "error",
213
- "no-new-wrappers": "error",
214
- "no-nonoctal-decimal-escape": "error",
215
- "no-obj-calls": "error",
216
- "no-object-constructor": "error",
217
- "no-octal": "error",
218
- "no-octal-escape": "error",
219
- "no-param-reassign": "error",
220
- "no-plusplus": "error",
221
- "no-promise-executor-return": "error",
222
- "no-proto": "error",
223
- "no-prototype-builtins": "error",
224
- "no-regex-spaces": "error",
225
- "no-return-assign": "error",
226
- "no-script-url": "error",
227
- "no-self-assign": "error",
228
- "no-self-compare": "error",
229
- "no-sequences": "error",
230
- "no-setter-return": "error",
231
- "no-shadow-restricted-names": "error",
232
- "no-sparse-arrays": "error",
233
- "no-this-before-super": "error",
234
- "no-undef-init": "error",
235
- "no-unmodified-loop-condition": "error",
236
- "no-unneeded-ternary": "error",
237
- "no-unreachable": "error",
238
- "no-unreachable-loop": "error",
239
- "no-unsafe-finally": "error",
240
- "no-unsafe-negation": "error",
241
- "no-unsafe-optional-chaining": "error",
242
- "no-unused-labels": "error",
243
- "no-unused-private-class-members": "error",
244
- "no-useless-backreference": "error",
245
- "no-useless-call": "error",
246
- "no-useless-catch": "error",
247
- "no-useless-computed-key": "error",
248
- "no-useless-concat": "error",
249
- "no-useless-escape": "error",
250
- "no-useless-rename": "error",
251
- "no-useless-return": "error",
252
- "no-var": "error",
253
- "no-void": "error",
254
- "no-with": "error",
255
- "object-shorthand": "error",
256
- "operator-assignment": "error",
257
- "prefer-arrow-callback": "error",
258
- "prefer-const": "error",
259
- "prefer-exponentiation-operator": "error",
260
- "prefer-named-capture-group": "error",
261
- "prefer-numeric-literals": "error",
262
- "prefer-object-has-own": "error",
263
- "prefer-object-spread": "error",
264
- "prefer-regex-literals": "error",
265
- "prefer-rest-params": "error",
266
- "prefer-spread": "error",
267
- "prefer-template": "error",
268
- radix: "error",
269
- "require-atomic-updates": "error",
270
- "require-unicode-regexp": "error",
271
- "require-yield": "error",
272
- "sort-vars": "error",
273
- strict: "error",
274
- "symbol-description": "error",
275
- "unicode-bom": "error",
276
- "use-isnan": "error",
277
- "valid-typeof": "error",
278
- "vars-on-top": "error",
279
- yoda: ["error", "always"],
35
+ rules: {
36
+ "accessor-pairs": "error",
37
+ "array-callback-return": "error",
38
+ "arrow-body-style": ["error", "always"],
39
+ "block-scoped-var": "error",
40
+ "constructor-super": "error",
41
+ eqeqeq: "error",
42
+ "for-direction": "error",
43
+ "func-name-matching": "error",
44
+ "func-style": [
45
+ "error",
46
+ "declaration",
47
+ {
48
+ allowArrowFunctions: true,
49
+ },
50
+ ],
51
+ "getter-return": "error",
52
+ "grouped-accessor-pairs": "error",
53
+ "guard-for-in": "error",
54
+ "logical-assignment-operators": "error",
55
+ "max-classes-per-file": "error",
56
+ "max-depth": "error",
57
+ "max-lines": "error",
58
+ "max-lines-per-function": "error",
59
+ "max-nested-callbacks": "error",
60
+ "max-statements": "error",
61
+ "no-alert": "error",
62
+ "no-async-promise-executor": "error",
63
+ "no-await-in-loop": "error",
64
+ "no-bitwise": "error",
65
+ "no-caller": "error",
66
+ "no-case-declarations": "error",
67
+ "no-class-assign": "error",
68
+ "no-compare-neg-zero": "error",
69
+ "no-cond-assign": "error",
70
+ "no-console": "error",
71
+ "no-const-assign": "error",
72
+ "no-constant-binary-expression": "error",
73
+ "no-constant-condition": "error",
74
+ "no-constructor-return": "error",
75
+ "no-control-regex": "error",
76
+ "no-debugger": "error",
77
+ "no-delete-var": "error",
78
+ "no-div-regex": "error",
79
+ "no-dupe-args": "error",
80
+ "no-dupe-else-if": "error",
81
+ "no-dupe-keys": "error",
82
+ "no-duplicate-case": "error",
83
+ "no-else-return": "error",
84
+ "no-empty": "error",
85
+ "no-empty-character-class": "error",
86
+ "no-empty-pattern": "error",
87
+ "no-empty-static-block": "error",
88
+ "no-eq-null": "error",
89
+ "no-eval": "error",
90
+ "no-ex-assign": "error",
91
+ "no-extend-native": "error",
92
+ "no-extra-bind": "error",
93
+ "no-extra-boolean-cast": "error",
94
+ "no-extra-label": "error",
95
+ "no-fallthrough": "error",
96
+ "no-func-assign": "error",
97
+ "no-global-assign": "error",
98
+ "no-implicit-coercion": "error",
99
+ "no-import-assign": "error",
100
+ "no-inner-declarations": "error",
101
+ "no-invalid-regexp": "error",
102
+ "no-irregular-whitespace": "error",
103
+ "no-iterator": "error",
104
+ "no-label-var": "error",
105
+ "no-labels": "error",
106
+ "no-lone-blocks": "error",
107
+ "no-lonely-if": "error",
108
+ "no-loss-of-precision": "error",
109
+ "no-misleading-character-class": "error",
110
+ "no-multi-assign": "error",
111
+ "no-multi-str": "error",
112
+ "no-negated-condition": "error",
113
+ "no-nested-ternary": "error",
114
+ "no-new": "error",
115
+ "no-new-func": "error",
116
+ "no-new-native-nonconstructor": "error",
117
+ "no-new-wrappers": "error",
118
+ "no-nonoctal-decimal-escape": "error",
119
+ "no-obj-calls": "error",
120
+ "no-object-constructor": "error",
121
+ "no-octal": "error",
122
+ "no-octal-escape": "error",
123
+ "no-param-reassign": "error",
124
+ "no-plusplus": "error",
125
+ "no-promise-executor-return": "error",
126
+ "no-proto": "error",
127
+ "no-prototype-builtins": "error",
128
+ "no-regex-spaces": "error",
129
+ "no-return-assign": "error",
130
+ "no-script-url": "error",
131
+ "no-self-assign": "error",
132
+ "no-self-compare": "error",
133
+ "no-sequences": "error",
134
+ "no-setter-return": "error",
135
+ "no-shadow-restricted-names": "error",
136
+ "no-sparse-arrays": "error",
137
+ "no-this-before-super": "error",
138
+ "no-undef-init": "error",
139
+ "no-unmodified-loop-condition": "error",
140
+ "no-unneeded-ternary": "error",
141
+ "no-unreachable": "error",
142
+ "no-unreachable-loop": "error",
143
+ "no-unsafe-finally": "error",
144
+ "no-unsafe-negation": "error",
145
+ "no-unsafe-optional-chaining": "error",
146
+ "no-unused-labels": "error",
147
+ "no-unused-private-class-members": "error",
148
+ "no-useless-backreference": "error",
149
+ "no-useless-call": "error",
150
+ "no-useless-catch": "error",
151
+ "no-useless-computed-key": "error",
152
+ "no-useless-concat": "error",
153
+ "no-useless-escape": "error",
154
+ "no-useless-rename": "error",
155
+ "no-useless-return": "error",
156
+ "no-var": "error",
157
+ "no-void": "error",
158
+ "no-with": "error",
159
+ "object-shorthand": "error",
160
+ "operator-assignment": "error",
161
+ "prefer-arrow-callback": "error",
162
+ "prefer-const": "error",
163
+ "prefer-exponentiation-operator": "error",
164
+ "prefer-named-capture-group": "error",
165
+ "prefer-numeric-literals": "error",
166
+ "prefer-object-has-own": "error",
167
+ "prefer-object-spread": "error",
168
+ "prefer-regex-literals": "error",
169
+ "prefer-rest-params": "error",
170
+ "prefer-spread": "error",
171
+ "prefer-template": "error",
172
+ radix: "error",
173
+ "require-atomic-updates": "error",
174
+ "require-unicode-regexp": "error",
175
+ "require-yield": "error",
176
+ "sort-vars": "error",
177
+ strict: "error",
178
+ "symbol-description": "error",
179
+ "unicode-bom": "error",
180
+ "use-isnan": "error",
181
+ "valid-typeof": "error",
182
+ "vars-on-top": "error",
183
+ yoda: ["error", "always"],
280
184
 
281
- "n/exports-style": ["error", "exports"],
282
- "n/handle-callback-err": "error",
283
- "n/no-deprecated-api": "error",
284
- "n/no-exports-assign": "error",
285
- "n/no-extraneous-import": "error",
286
- "n/no-extraneous-require": "error",
287
- "n/no-missing-require": "error",
288
- "n/no-path-concat": "error",
289
- "n/no-unpublished-bin": "error",
290
- "n/no-unsupported-features/es-builtins": "error",
291
- "n/no-unsupported-features/es-syntax": "error",
292
- "n/no-unsupported-features/node-builtins": "error",
293
- "n/prefer-global/buffer": "error",
294
- "n/prefer-global/console": "error",
295
- "n/prefer-global/process": "error",
296
- "n/prefer-global/text-decoder": "error",
297
- "n/prefer-global/text-encoder": "error",
298
- "n/prefer-global/url-search-params": "error",
299
- "n/prefer-global/url": "error",
300
- "n/prefer-node-protocol": "error",
185
+ "n/exports-style": ["error", "exports"],
186
+ "n/handle-callback-err": "error",
187
+ "n/no-deprecated-api": "error",
188
+ "n/no-exports-assign": "error",
189
+ "n/no-extraneous-import": "error",
190
+ "n/no-extraneous-require": "error",
191
+ "n/no-missing-require": "error",
192
+ "n/no-path-concat": "error",
193
+ "n/no-unpublished-bin": "error",
194
+ "n/no-unsupported-features/es-builtins": "error",
195
+ "n/no-unsupported-features/es-syntax": "error",
196
+ "n/no-unsupported-features/node-builtins": "error",
197
+ "n/prefer-global/buffer": "error",
198
+ "n/prefer-global/console": "error",
199
+ "n/prefer-global/process": "error",
200
+ "n/prefer-global/text-decoder": "error",
201
+ "n/prefer-global/text-encoder": "error",
202
+ "n/prefer-global/url-search-params": "error",
203
+ "n/prefer-global/url": "error",
204
+ "n/prefer-node-protocol": "error",
301
205
 
302
- "@typescript-eslint/array-type": "error",
303
- "@typescript-eslint/await-thenable": "error",
304
- "@typescript-eslint/ban-ts-comment": "error",
305
- "@typescript-eslint/ban-tslint-comment": "error",
306
- "@typescript-eslint/class-literal-property-style": "error",
307
- "@typescript-eslint/consistent-generic-constructors": "error",
308
- "@typescript-eslint/consistent-indexed-object-style": "error",
309
- "@typescript-eslint/consistent-type-assertions": "error",
310
- "@typescript-eslint/consistent-type-definitions": ["error", "type"],
311
- "@typescript-eslint/consistent-type-exports": "error",
312
- "@typescript-eslint/consistent-type-imports": "error",
313
- "@typescript-eslint/default-param-last": "error",
314
- "@typescript-eslint/dot-notation": "error",
315
- "@typescript-eslint/explicit-member-accessibility": "error",
316
- "@typescript-eslint/max-params": "error",
317
- "@typescript-eslint/method-signature-style": "error",
318
- "@typescript-eslint/no-array-constructor": "error",
319
- "@typescript-eslint/no-array-delete": "error",
320
- "@typescript-eslint/no-base-to-string": "error",
321
- "@typescript-eslint/no-confusing-non-null-assertion": "error",
322
- "@typescript-eslint/no-confusing-void-expression": "error",
323
- "@typescript-eslint/no-duplicate-enum-values": "error",
324
- "@typescript-eslint/no-duplicate-type-constituents": "error",
325
- "@typescript-eslint/no-dynamic-delete": "error",
326
- "@typescript-eslint/no-empty-function": "error",
327
- "@typescript-eslint/no-empty-object-type": "error",
328
- "@typescript-eslint/no-explicit-any": "error",
329
- "@typescript-eslint/no-extra-non-null-assertion": "error",
330
- "@typescript-eslint/no-extraneous-class": "error",
331
- "@typescript-eslint/no-floating-promises": "error",
332
- "@typescript-eslint/no-for-in-array": "error",
333
- "@typescript-eslint/no-implied-eval": "error",
334
- "@typescript-eslint/no-import-type-side-effects": "error",
335
- "@typescript-eslint/no-inferrable-types": "error",
336
- "@typescript-eslint/no-invalid-void-type": "error",
337
- "@typescript-eslint/no-loop-func": "error",
338
- "@typescript-eslint/no-meaningless-void-operator": "error",
339
- "@typescript-eslint/no-misused-new": "error",
340
- "@typescript-eslint/no-misused-promises": "error",
341
- "@typescript-eslint/no-mixed-enums": "error",
342
- "@typescript-eslint/no-namespace": "error",
343
- "@typescript-eslint/no-non-null-asserted-nullish-coalescing": "error",
344
- "@typescript-eslint/no-non-null-asserted-optional-chain": "error",
345
- "@typescript-eslint/no-non-null-assertion": "error",
346
- "@typescript-eslint/no-redundant-type-constituents": "error",
347
- "@typescript-eslint/no-require-imports": "error",
348
- "@typescript-eslint/no-restricted-imports": "error",
349
- "@typescript-eslint/no-restricted-types": "error",
350
- "@typescript-eslint/no-shadow": "error",
351
- "@typescript-eslint/no-this-alias": "error",
352
- "@typescript-eslint/no-unnecessary-boolean-literal-compare": "error",
353
- "@typescript-eslint/no-unnecessary-condition": "error",
354
- "@typescript-eslint/no-unnecessary-parameter-property-assignment":
355
- "error",
356
- "@typescript-eslint/no-unnecessary-qualifier": "error",
357
- "@typescript-eslint/no-unnecessary-type-arguments": "error",
358
- "@typescript-eslint/no-unnecessary-type-assertion": "error",
359
- "@typescript-eslint/no-unnecessary-type-constraint": "error",
360
- "@typescript-eslint/no-unnecessary-type-parameters": "error",
361
- "@typescript-eslint/no-unsafe-argument": "error",
362
- "@typescript-eslint/no-unsafe-assignment": "error",
363
- "@typescript-eslint/no-unsafe-call": "error",
364
- "@typescript-eslint/no-unsafe-declaration-merging": "error",
365
- "@typescript-eslint/no-unsafe-enum-comparison": "error",
366
- "@typescript-eslint/no-unsafe-function-type": "error",
367
- "@typescript-eslint/no-unsafe-member-access": "error",
368
- "@typescript-eslint/no-unsafe-return": "error",
369
- "@typescript-eslint/no-unsafe-unary-minus": "error",
370
- "@typescript-eslint/no-unused-expressions": "error",
371
- "@typescript-eslint/no-unused-vars": [
372
- "error",
373
- {
374
- args: "all",
375
- argsIgnorePattern: "^_",
376
- caughtErrors: "all",
377
- caughtErrorsIgnorePattern: "^_",
378
- destructuredArrayIgnorePattern: "^_",
379
- ignoreRestSiblings: true,
380
- varsIgnorePattern: "^_",
381
- },
382
- ],
383
- "@typescript-eslint/no-useless-constructor": "error",
384
- "@typescript-eslint/no-useless-empty-export": "error",
385
- "@typescript-eslint/no-unnecessary-template-expression": "error",
386
- "@typescript-eslint/no-wrapper-object-types": "error",
387
- "@typescript-eslint/non-nullable-type-assertion-style": "error",
388
- "@typescript-eslint/only-throw-error": "error",
389
- "@typescript-eslint/prefer-as-const": "error",
390
- "@typescript-eslint/prefer-destructuring": "error",
391
- "@typescript-eslint/prefer-enum-initializers": "error",
392
- "@typescript-eslint/prefer-find": "error",
393
- "@typescript-eslint/prefer-for-of": "error",
394
- "@typescript-eslint/prefer-function-type": "error",
395
- "@typescript-eslint/prefer-includes": "error",
396
- "@typescript-eslint/prefer-literal-enum-member": "error",
397
- "@typescript-eslint/prefer-namespace-keyword": "error",
398
- "@typescript-eslint/prefer-nullish-coalescing": "error",
399
- "@typescript-eslint/prefer-optional-chain": "error",
400
- "@typescript-eslint/prefer-promise-reject-errors": "error",
401
- "@typescript-eslint/prefer-readonly": "error",
402
- "@typescript-eslint/prefer-reduce-type-parameter": "error",
403
- "@typescript-eslint/prefer-regexp-exec": "error",
404
- "@typescript-eslint/prefer-return-this-type": "error",
405
- "@typescript-eslint/prefer-string-starts-ends-with": "error",
406
- "@typescript-eslint/promise-function-async": "error",
407
- "@typescript-eslint/require-array-sort-compare": "error",
408
- "@typescript-eslint/require-await": "error",
409
- "@typescript-eslint/restrict-plus-operands": "error",
410
- "@typescript-eslint/restrict-template-expressions": "error",
411
- "@typescript-eslint/return-await": "error",
412
- "@typescript-eslint/strict-boolean-expressions": "error",
413
- "@typescript-eslint/switch-exhaustiveness-check": "error",
414
- "@typescript-eslint/triple-slash-reference": "error",
415
- "@typescript-eslint/unbound-method": "error",
416
- "@typescript-eslint/unified-signatures": "error",
417
- "@typescript-eslint/use-unknown-in-catch-callback-variable": "error",
206
+ "@typescript-eslint/array-type": "error",
207
+ "@typescript-eslint/await-thenable": "error",
208
+ "@typescript-eslint/ban-ts-comment": "error",
209
+ "@typescript-eslint/ban-tslint-comment": "error",
210
+ "@typescript-eslint/class-literal-property-style": "error",
211
+ "@typescript-eslint/consistent-generic-constructors": "error",
212
+ "@typescript-eslint/consistent-indexed-object-style": "error",
213
+ "@typescript-eslint/consistent-type-assertions": "error",
214
+ "@typescript-eslint/consistent-type-definitions": ["error", "type"],
215
+ "@typescript-eslint/consistent-type-exports": "error",
216
+ "@typescript-eslint/consistent-type-imports": "error",
217
+ "@typescript-eslint/default-param-last": "error",
218
+ "@typescript-eslint/dot-notation": "error",
219
+ "@typescript-eslint/explicit-member-accessibility": "error",
220
+ "@typescript-eslint/max-params": "error",
221
+ "@typescript-eslint/method-signature-style": "error",
222
+ "@typescript-eslint/no-array-constructor": "error",
223
+ "@typescript-eslint/no-array-delete": "error",
224
+ "@typescript-eslint/no-base-to-string": "error",
225
+ "@typescript-eslint/no-confusing-non-null-assertion": "error",
226
+ "@typescript-eslint/no-confusing-void-expression": "error",
227
+ "@typescript-eslint/no-duplicate-enum-values": "error",
228
+ "@typescript-eslint/no-duplicate-type-constituents": "error",
229
+ "@typescript-eslint/no-dynamic-delete": "error",
230
+ "@typescript-eslint/no-empty-function": "error",
231
+ "@typescript-eslint/no-empty-object-type": "error",
232
+ "@typescript-eslint/no-explicit-any": "error",
233
+ "@typescript-eslint/no-extra-non-null-assertion": "error",
234
+ "@typescript-eslint/no-extraneous-class": "error",
235
+ "@typescript-eslint/no-floating-promises": "error",
236
+ "@typescript-eslint/no-for-in-array": "error",
237
+ "@typescript-eslint/no-implied-eval": "error",
238
+ "@typescript-eslint/no-import-type-side-effects": "error",
239
+ "@typescript-eslint/no-inferrable-types": "error",
240
+ "@typescript-eslint/no-invalid-void-type": "error",
241
+ "@typescript-eslint/no-loop-func": "error",
242
+ "@typescript-eslint/no-meaningless-void-operator": "error",
243
+ "@typescript-eslint/no-misused-new": "error",
244
+ "@typescript-eslint/no-misused-promises": "error",
245
+ "@typescript-eslint/no-mixed-enums": "error",
246
+ "@typescript-eslint/no-namespace": "error",
247
+ "@typescript-eslint/no-non-null-asserted-nullish-coalescing": "error",
248
+ "@typescript-eslint/no-non-null-asserted-optional-chain": "error",
249
+ "@typescript-eslint/no-non-null-assertion": "error",
250
+ "@typescript-eslint/no-redundant-type-constituents": "error",
251
+ "@typescript-eslint/no-require-imports": "error",
252
+ "@typescript-eslint/no-restricted-imports": "error",
253
+ "@typescript-eslint/no-restricted-types": "error",
254
+ "@typescript-eslint/no-shadow": "error",
255
+ "@typescript-eslint/no-this-alias": "error",
256
+ "@typescript-eslint/no-unnecessary-boolean-literal-compare": "error",
257
+ "@typescript-eslint/no-unnecessary-condition": "error",
258
+ "@typescript-eslint/no-unnecessary-parameter-property-assignment": "error",
259
+ "@typescript-eslint/no-unnecessary-qualifier": "error",
260
+ "@typescript-eslint/no-unnecessary-type-arguments": "error",
261
+ "@typescript-eslint/no-unnecessary-type-assertion": "error",
262
+ "@typescript-eslint/no-unnecessary-type-constraint": "error",
263
+ "@typescript-eslint/no-unnecessary-type-parameters": "error",
264
+ "@typescript-eslint/no-unsafe-argument": "error",
265
+ "@typescript-eslint/no-unsafe-assignment": "error",
266
+ "@typescript-eslint/no-unsafe-call": "error",
267
+ "@typescript-eslint/no-unsafe-declaration-merging": "error",
268
+ "@typescript-eslint/no-unsafe-enum-comparison": "error",
269
+ "@typescript-eslint/no-unsafe-function-type": "error",
270
+ "@typescript-eslint/no-unsafe-member-access": "error",
271
+ "@typescript-eslint/no-unsafe-return": "error",
272
+ "@typescript-eslint/no-unsafe-unary-minus": "error",
273
+ "@typescript-eslint/no-unused-expressions": "error",
274
+ "@typescript-eslint/no-unused-vars": [
275
+ "error",
276
+ {
277
+ args: "all",
278
+ argsIgnorePattern: "^_",
279
+ caughtErrors: "all",
280
+ caughtErrorsIgnorePattern: "^_",
281
+ destructuredArrayIgnorePattern: "^_",
282
+ ignoreRestSiblings: true,
283
+ varsIgnorePattern: "^_",
284
+ },
285
+ ],
286
+ "@typescript-eslint/no-useless-constructor": "error",
287
+ "@typescript-eslint/no-useless-empty-export": "error",
288
+ "@typescript-eslint/no-unnecessary-template-expression": "error",
289
+ "@typescript-eslint/no-wrapper-object-types": "error",
290
+ "@typescript-eslint/non-nullable-type-assertion-style": "error",
291
+ "@typescript-eslint/only-throw-error": "error",
292
+ "@typescript-eslint/prefer-as-const": "error",
293
+ "@typescript-eslint/prefer-destructuring": "error",
294
+ "@typescript-eslint/prefer-enum-initializers": "error",
295
+ "@typescript-eslint/prefer-find": "error",
296
+ "@typescript-eslint/prefer-for-of": "error",
297
+ "@typescript-eslint/prefer-function-type": "error",
298
+ "@typescript-eslint/prefer-includes": "error",
299
+ "@typescript-eslint/prefer-literal-enum-member": "error",
300
+ "@typescript-eslint/prefer-namespace-keyword": "error",
301
+ "@typescript-eslint/prefer-nullish-coalescing": "error",
302
+ "@typescript-eslint/prefer-optional-chain": "error",
303
+ "@typescript-eslint/prefer-promise-reject-errors": "error",
304
+ "@typescript-eslint/prefer-readonly": "error",
305
+ "@typescript-eslint/prefer-reduce-type-parameter": "error",
306
+ "@typescript-eslint/prefer-regexp-exec": "error",
307
+ "@typescript-eslint/prefer-return-this-type": "error",
308
+ "@typescript-eslint/prefer-string-starts-ends-with": "error",
309
+ "@typescript-eslint/promise-function-async": "error",
310
+ "@typescript-eslint/require-array-sort-compare": "error",
311
+ "@typescript-eslint/require-await": "error",
312
+ "@typescript-eslint/restrict-plus-operands": "error",
313
+ "@typescript-eslint/restrict-template-expressions": "error",
314
+ "@typescript-eslint/return-await": "error",
315
+ "@typescript-eslint/strict-boolean-expressions": "error",
316
+ "@typescript-eslint/switch-exhaustiveness-check": "error",
317
+ "@typescript-eslint/triple-slash-reference": "error",
318
+ "@typescript-eslint/unbound-method": "error",
319
+ "@typescript-eslint/unified-signatures": "error",
320
+ "@typescript-eslint/use-unknown-in-catch-callback-variable": "error",
418
321
 
419
- "unicorn/better-regex": "error",
420
- "unicorn/catch-error-name": "error",
421
- "unicorn/consistent-destructuring": "error",
422
- "unicorn/consistent-empty-array-spread": "error",
423
- "unicorn/consistent-function-scoping": "error",
424
- "unicorn/custom-error-definition": "error",
425
- "unicorn/no-length-as-slice-end": "error",
426
- "unicorn/error-message": "error",
427
- "unicorn/escape-case": "error",
428
- "unicorn/expiring-todo-comments": "error",
429
- "unicorn/filename-case": "error",
430
- "unicorn/import-style": "error",
431
- "unicorn/new-for-builtins": "error",
432
- "unicorn/no-abusive-eslint-disable": "error",
433
- "unicorn/no-anonymous-default-export": "error",
434
- "unicorn/no-array-callback-reference": "error",
435
- "unicorn/no-array-for-each": "error",
436
- "unicorn/no-array-method-this-argument": "error",
437
- "unicorn/no-array-push-push": "error",
438
- "unicorn/no-array-reduce": "error",
439
- "unicorn/no-await-expression-member": "error",
440
- "unicorn/no-await-in-promise-methods": "error",
441
- "unicorn/no-console-spaces": "error",
442
- "unicorn/no-document-cookie": "error",
443
- "unicorn/no-empty-file": "error",
444
- "unicorn/no-for-loop": "error",
445
- "unicorn/no-hex-escape": "error",
446
- "unicorn/no-instanceof-array": "error",
447
- "unicorn/no-invalid-fetch-options": "error",
448
- "unicorn/no-invalid-remove-event-listener": "error",
449
- "unicorn/no-lonely-if": "error",
450
- "unicorn/no-magic-array-flat-depth": "error",
451
- "unicorn/no-negated-condition": "error",
452
- "unicorn/no-negation-in-equality-check": "error",
453
- "unicorn/no-new-array": "error",
454
- "unicorn/no-new-buffer": "error",
455
- "unicorn/no-object-as-default-parameter": "error",
456
- "unicorn/no-process-exit": "error",
457
- "unicorn/no-single-promise-in-promise-methods": "error",
458
- "unicorn/no-static-only-class": "error",
459
- "unicorn/no-thenable": "error",
460
- "unicorn/no-this-assignment": "error",
461
- "unicorn/no-typeof-undefined": "error",
462
- "unicorn/no-unnecessary-await": "error",
463
- "unicorn/no-unnecessary-polyfills": "error",
464
- "unicorn/no-unreadable-array-destructuring": "error",
465
- "unicorn/no-unreadable-iife": "error",
466
- "unicorn/no-unused-properties": "error",
467
- "unicorn/no-useless-fallback-in-spread": "error",
468
- "unicorn/no-useless-length-check": "error",
469
- "unicorn/no-useless-promise-resolve-reject": "error",
470
- "unicorn/no-useless-spread": "error",
471
- "unicorn/no-useless-switch-case": "error",
472
- "unicorn/no-useless-undefined": "error",
473
- "unicorn/no-zero-fractions": "error",
474
- "unicorn/numeric-separators-style": "error",
475
- "unicorn/prefer-add-event-listener": "error",
476
- "unicorn/prefer-array-find": "error",
477
- "unicorn/prefer-array-flat": "error",
478
- "unicorn/prefer-array-flat-map": "error",
479
- "unicorn/prefer-array-index-of": "error",
480
- "unicorn/prefer-array-some": "error",
481
- "unicorn/prefer-at": "error",
482
- "unicorn/prefer-blob-reading-methods": "error",
483
- "unicorn/prefer-code-point": "error",
484
- "unicorn/prefer-date-now": "error",
485
- "unicorn/prefer-default-parameters": "error",
486
- "unicorn/prefer-dom-node-append": "error",
487
- "unicorn/prefer-dom-node-dataset": "error",
488
- "unicorn/prefer-dom-node-remove": "error",
489
- "unicorn/prefer-dom-node-text-content": "error",
490
- "unicorn/prefer-event-target": "error",
491
- "unicorn/prefer-export-from": "error",
492
- "unicorn/prefer-includes": "error",
493
- "unicorn/prefer-json-parse-buffer": "error",
494
- "unicorn/prefer-keyboard-event-key": "error",
495
- "unicorn/prefer-logical-operator-over-ternary": "error",
496
- "unicorn/prefer-math-trunc": "error",
497
- "unicorn/prefer-modern-dom-apis": "error",
498
- "unicorn/prefer-modern-math-apis": "error",
499
- "unicorn/prefer-module": "error",
500
- "unicorn/prefer-native-coercion-functions": "error",
501
- "unicorn/prefer-negative-index": "error",
502
- "unicorn/prefer-node-protocol": "error",
503
- "unicorn/prefer-number-properties": "error",
504
- "unicorn/prefer-object-from-entries": "error",
505
- "unicorn/prefer-optional-catch-binding": "error",
506
- "unicorn/prefer-prototype-methods": "error",
507
- "unicorn/prefer-query-selector": "error",
508
- "unicorn/prefer-reflect-apply": "error",
509
- "unicorn/prefer-regexp-test": "error",
510
- "unicorn/prefer-set-has": "error",
511
- "unicorn/prefer-set-size": "error",
512
- "unicorn/prefer-spread": "error",
513
- "unicorn/prefer-string-raw": "error",
514
- "unicorn/prefer-string-replace-all": "error",
515
- "unicorn/prefer-string-slice": "error",
516
- "unicorn/prefer-string-starts-ends-with": "error",
517
- "unicorn/prefer-string-trim-start-end": "error",
518
- "unicorn/prefer-structured-clone": "error",
519
- "unicorn/prefer-switch": "error",
520
- "unicorn/prefer-ternary": "error",
521
- "unicorn/prefer-top-level-await": "error",
522
- "unicorn/prefer-type-error": "error",
523
- "unicorn/prevent-abbreviations": "error",
524
- "unicorn/relative-url-style": "error",
525
- "unicorn/require-array-join-separator": "error",
526
- "unicorn/require-number-to-fixed-digits-argument": "error",
527
- "unicorn/require-post-message-target-origin": "error",
528
- "unicorn/string-content": "error",
529
- "unicorn/switch-case-braces": "error",
530
- "unicorn/text-encoding-identifier-case": "error",
531
- "unicorn/throw-new-error": "error",
322
+ "unicorn/better-regex": "error",
323
+ "unicorn/catch-error-name": "error",
324
+ "unicorn/consistent-destructuring": "error",
325
+ "unicorn/consistent-empty-array-spread": "error",
326
+ "unicorn/consistent-function-scoping": "error",
327
+ "unicorn/custom-error-definition": "error",
328
+ "unicorn/no-length-as-slice-end": "error",
329
+ "unicorn/error-message": "error",
330
+ "unicorn/escape-case": "error",
331
+ "unicorn/expiring-todo-comments": "error",
332
+ "unicorn/filename-case": "error",
333
+ "unicorn/import-style": "error",
334
+ "unicorn/new-for-builtins": "error",
335
+ "unicorn/no-abusive-eslint-disable": "error",
336
+ "unicorn/no-anonymous-default-export": "error",
337
+ "unicorn/no-array-callback-reference": "error",
338
+ "unicorn/no-array-for-each": "error",
339
+ "unicorn/no-array-method-this-argument": "error",
340
+ "unicorn/no-array-push-push": "error",
341
+ "unicorn/no-array-reduce": "error",
342
+ "unicorn/no-await-expression-member": "error",
343
+ "unicorn/no-await-in-promise-methods": "error",
344
+ "unicorn/no-console-spaces": "error",
345
+ "unicorn/no-document-cookie": "error",
346
+ "unicorn/no-empty-file": "error",
347
+ "unicorn/no-for-loop": "error",
348
+ "unicorn/no-hex-escape": "error",
349
+ "unicorn/no-instanceof-array": "error",
350
+ "unicorn/no-invalid-fetch-options": "error",
351
+ "unicorn/no-invalid-remove-event-listener": "error",
352
+ "unicorn/no-lonely-if": "error",
353
+ "unicorn/no-magic-array-flat-depth": "error",
354
+ "unicorn/no-negated-condition": "error",
355
+ "unicorn/no-negation-in-equality-check": "error",
356
+ "unicorn/no-new-array": "error",
357
+ "unicorn/no-new-buffer": "error",
358
+ "unicorn/no-object-as-default-parameter": "error",
359
+ "unicorn/no-process-exit": "error",
360
+ "unicorn/no-single-promise-in-promise-methods": "error",
361
+ "unicorn/no-static-only-class": "error",
362
+ "unicorn/no-thenable": "error",
363
+ "unicorn/no-this-assignment": "error",
364
+ "unicorn/no-typeof-undefined": "error",
365
+ "unicorn/no-unnecessary-await": "error",
366
+ "unicorn/no-unnecessary-polyfills": "error",
367
+ "unicorn/no-unreadable-array-destructuring": "error",
368
+ "unicorn/no-unreadable-iife": "error",
369
+ "unicorn/no-unused-properties": "error",
370
+ "unicorn/no-useless-fallback-in-spread": "error",
371
+ "unicorn/no-useless-length-check": "error",
372
+ "unicorn/no-useless-promise-resolve-reject": "error",
373
+ "unicorn/no-useless-spread": "error",
374
+ "unicorn/no-useless-switch-case": "error",
375
+ "unicorn/no-useless-undefined": "error",
376
+ "unicorn/no-zero-fractions": "error",
377
+ "unicorn/numeric-separators-style": "error",
378
+ "unicorn/prefer-add-event-listener": "error",
379
+ "unicorn/prefer-array-find": "error",
380
+ "unicorn/prefer-array-flat": "error",
381
+ "unicorn/prefer-array-flat-map": "error",
382
+ "unicorn/prefer-array-index-of": "error",
383
+ "unicorn/prefer-array-some": "error",
384
+ "unicorn/prefer-at": "error",
385
+ "unicorn/prefer-blob-reading-methods": "error",
386
+ "unicorn/prefer-code-point": "error",
387
+ "unicorn/prefer-date-now": "error",
388
+ "unicorn/prefer-default-parameters": "error",
389
+ "unicorn/prefer-dom-node-append": "error",
390
+ "unicorn/prefer-dom-node-dataset": "error",
391
+ "unicorn/prefer-dom-node-remove": "error",
392
+ "unicorn/prefer-dom-node-text-content": "error",
393
+ "unicorn/prefer-event-target": "error",
394
+ "unicorn/prefer-export-from": "error",
395
+ "unicorn/prefer-includes": "error",
396
+ "unicorn/prefer-json-parse-buffer": "error",
397
+ "unicorn/prefer-keyboard-event-key": "error",
398
+ "unicorn/prefer-logical-operator-over-ternary": "error",
399
+ "unicorn/prefer-math-trunc": "error",
400
+ "unicorn/prefer-modern-dom-apis": "error",
401
+ "unicorn/prefer-modern-math-apis": "error",
402
+ "unicorn/prefer-module": "error",
403
+ "unicorn/prefer-native-coercion-functions": "error",
404
+ "unicorn/prefer-negative-index": "error",
405
+ "unicorn/prefer-node-protocol": "error",
406
+ "unicorn/prefer-number-properties": "error",
407
+ "unicorn/prefer-object-from-entries": "error",
408
+ "unicorn/prefer-optional-catch-binding": "error",
409
+ "unicorn/prefer-prototype-methods": "error",
410
+ "unicorn/prefer-query-selector": "error",
411
+ "unicorn/prefer-reflect-apply": "error",
412
+ "unicorn/prefer-regexp-test": "error",
413
+ "unicorn/prefer-set-has": "error",
414
+ "unicorn/prefer-set-size": "error",
415
+ "unicorn/prefer-spread": "error",
416
+ "unicorn/prefer-string-raw": "error",
417
+ "unicorn/prefer-string-replace-all": "error",
418
+ "unicorn/prefer-string-slice": "error",
419
+ "unicorn/prefer-string-starts-ends-with": "error",
420
+ "unicorn/prefer-string-trim-start-end": "error",
421
+ "unicorn/prefer-structured-clone": "error",
422
+ "unicorn/prefer-switch": "error",
423
+ "unicorn/prefer-ternary": "error",
424
+ "unicorn/prefer-top-level-await": "error",
425
+ "unicorn/prefer-type-error": "error",
426
+ "unicorn/prevent-abbreviations": "error",
427
+ "unicorn/relative-url-style": "error",
428
+ "unicorn/require-array-join-separator": "error",
429
+ "unicorn/require-number-to-fixed-digits-argument": "error",
430
+ "unicorn/require-post-message-target-origin": "error",
431
+ "unicorn/string-content": "error",
432
+ "unicorn/switch-case-braces": "error",
433
+ "unicorn/text-encoding-identifier-case": "error",
434
+ "unicorn/throw-new-error": "error",
532
435
 
533
- "sonar/cognitive-complexity": "error",
534
- "sonar/elseif-without-else": "error",
535
- "sonar/max-switch-cases": "error",
536
- "sonar/no-all-duplicated-branches": "error",
537
- "sonar/no-collapsible-if": "error",
538
- "sonar/no-collection-size-mischeck": "error",
539
- "sonar/no-duplicate-string": "error",
540
- "sonar/no-duplicated-branches": "error",
541
- "sonar/no-element-overwrite": "error",
542
- "sonar/no-empty-collection": "error",
543
- "sonar/no-extra-arguments": "error",
544
- "sonar/no-gratuitous-expressions": "error",
545
- "sonar/no-identical-conditions": "error",
546
- "sonar/no-identical-expressions": "error",
547
- "sonar/no-identical-functions": "error",
548
- "sonar/no-ignored-return": "error",
549
- "sonar/no-inverted-boolean-check": "error",
550
- "sonar/no-nested-switch": "error",
551
- "sonar/no-nested-template-literals": "error",
552
- "sonar/no-one-iteration-loop": "error",
553
- "sonar/no-redundant-boolean": "error",
554
- "sonar/no-redundant-jump": "error",
555
- "sonar/no-same-line-conditional": "error",
556
- "sonar/no-small-switch": "error",
557
- "sonar/no-unused-collection": "error",
558
- "sonar/no-use-of-empty-return-value": "error",
559
- "sonar/no-useless-catch": "error",
560
- "sonar/non-existent-operator": "error",
561
- "sonar/prefer-immediate-return": "error",
562
- "sonar/prefer-object-literal": "error",
563
- "sonar/prefer-single-boolean-return": "error",
564
- "sonar/prefer-while": "error",
436
+ "sonar/cognitive-complexity": "error",
437
+ "sonar/elseif-without-else": "error",
438
+ "sonar/max-switch-cases": "error",
439
+ "sonar/no-all-duplicated-branches": "error",
440
+ "sonar/no-collapsible-if": "error",
441
+ "sonar/no-collection-size-mischeck": "error",
442
+ "sonar/no-duplicate-string": "error",
443
+ "sonar/no-duplicated-branches": "error",
444
+ "sonar/no-element-overwrite": "error",
445
+ "sonar/no-empty-collection": "error",
446
+ "sonar/no-extra-arguments": "error",
447
+ "sonar/no-gratuitous-expressions": "error",
448
+ "sonar/no-identical-conditions": "error",
449
+ "sonar/no-identical-expressions": "error",
450
+ "sonar/no-identical-functions": "error",
451
+ "sonar/no-ignored-return": "error",
452
+ "sonar/no-inverted-boolean-check": "error",
453
+ "sonar/no-nested-switch": "error",
454
+ "sonar/no-nested-template-literals": "error",
455
+ "sonar/no-one-iteration-loop": "error",
456
+ "sonar/no-redundant-boolean": "error",
457
+ "sonar/no-redundant-jump": "error",
458
+ "sonar/no-same-line-conditional": "error",
459
+ "sonar/no-small-switch": "error",
460
+ "sonar/no-unused-collection": "error",
461
+ "sonar/no-use-of-empty-return-value": "error",
462
+ "sonar/no-useless-catch": "error",
463
+ "sonar/non-existent-operator": "error",
464
+ "sonar/prefer-immediate-return": "error",
465
+ "sonar/prefer-object-literal": "error",
466
+ "sonar/prefer-single-boolean-return": "error",
467
+ "sonar/prefer-while": "error",
565
468
 
566
- "@tanstack/query/exhaustive-deps": "error",
567
- // "@tanstack/query/no-deprecated-options": "error", // not yet implemented
568
- "@tanstack/query/no-rest-destructuring": "error",
569
- "@tanstack/query/stable-query-client": "error",
469
+ "@tanstack/query/exhaustive-deps": "error",
470
+ // "@tanstack/query/no-deprecated-options": "error", // not yet implemented
471
+ "@tanstack/query/no-rest-destructuring": "error",
472
+ "@tanstack/query/stable-query-client": "error",
570
473
 
571
- "perfectionist/sort-array-includes": "error",
572
- "perfectionist/sort-astro-attributes": [
573
- "error",
574
- {
575
- groups: ["astro-shorthand", "shorthand", "multiline"],
576
- },
577
- ],
578
- "perfectionist/sort-classes": "error",
579
- "perfectionist/sort-enums": "error",
580
- "perfectionist/sort-exports": "error",
581
- "perfectionist/sort-imports": [
582
- "error",
583
- {
584
- groups: [
585
- "type",
586
- ["builtin", "external"],
587
- "internal-type",
588
- "internal",
589
- ["parent-type", "sibling-type", "index-type"],
590
- ["parent", "sibling", "index"],
591
- "object",
592
- "unknown",
593
- ],
594
- newlinesBetween: "always",
595
- },
596
- ],
597
- "perfectionist/sort-interfaces": "error",
598
- "perfectionist/sort-jsx-props": [
599
- "error",
600
- { groups: ["shorthand", "multiline"] },
601
- ],
602
- "perfectionist/sort-maps": "error",
603
- "perfectionist/sort-named-exports": "error",
604
- "perfectionist/sort-named-imports": "error",
605
- "perfectionist/sort-object-types": "error",
606
- "perfectionist/sort-objects": "error",
607
- "perfectionist/sort-svelte-attributes": [
608
- "error",
609
- {
610
- groups: ["svelte-shorthand", "shorthand", "multiline"],
611
- },
612
- ],
613
- "perfectionist/sort-intersection-types": "error",
614
- "perfectionist/sort-switch-case": [
615
- "error",
616
- {
617
- type: "alphabetical",
618
- order: "asc",
619
- },
620
- ],
621
- "perfectionist/sort-union-types": "error",
622
- "perfectionist/sort-variable-declarations": [
623
- "error",
624
- {
625
- type: "alphabetical",
626
- order: "asc",
627
- },
628
- ],
629
- "perfectionist/sort-vue-attributes": [
630
- "error",
631
- { groups: ["shorthand", "multiline"] },
632
- ],
474
+ "perfectionist/sort-array-includes": "error",
475
+ "perfectionist/sort-astro-attributes": [
476
+ "error",
477
+ {
478
+ groups: ["astro-shorthand", "shorthand", "multiline"],
479
+ },
480
+ ],
481
+ "perfectionist/sort-classes": "error",
482
+ "perfectionist/sort-enums": "error",
483
+ "perfectionist/sort-exports": "error",
484
+ "perfectionist/sort-imports": [
485
+ "error",
486
+ {
487
+ groups: [
488
+ "type",
489
+ ["builtin", "external"],
490
+ "internal-type",
491
+ "internal",
492
+ ["parent-type", "sibling-type", "index-type"],
493
+ ["parent", "sibling", "index"],
494
+ "object",
495
+ "unknown",
496
+ ],
497
+ newlinesBetween: "always",
498
+ },
499
+ ],
500
+ "perfectionist/sort-interfaces": "error",
501
+ "perfectionist/sort-jsx-props": [
502
+ "error",
503
+ { groups: ["shorthand", "multiline"] },
504
+ ],
505
+ "perfectionist/sort-maps": "error",
506
+ "perfectionist/sort-named-exports": "error",
507
+ "perfectionist/sort-named-imports": "error",
508
+ "perfectionist/sort-object-types": "error",
509
+ "perfectionist/sort-objects": "error",
510
+ "perfectionist/sort-svelte-attributes": [
511
+ "error",
512
+ {
513
+ groups: ["svelte-shorthand", "shorthand", "multiline"],
514
+ },
515
+ ],
516
+ "perfectionist/sort-intersection-types": "error",
517
+ "perfectionist/sort-switch-case": [
518
+ "error",
519
+ {
520
+ type: "alphabetical",
521
+ order: "asc",
522
+ },
523
+ ],
524
+ "perfectionist/sort-union-types": "error",
525
+ "perfectionist/sort-variable-declarations": [
526
+ "error",
527
+ {
528
+ type: "alphabetical",
529
+ order: "asc",
530
+ },
531
+ ],
532
+ "perfectionist/sort-vue-attributes": [
533
+ "error",
534
+ { groups: ["shorthand", "multiline"] },
535
+ ],
633
536
 
634
- "a11y/alt-text": "error",
635
- "a11y/anchor-ambiguous-text": "error",
636
- "a11y/anchor-has-content": "error",
637
- "a11y/anchor-is-valid": "error",
638
- "a11y/aria-activedescendant-has-tabindex": "error",
639
- "a11y/aria-props": "error",
640
- "a11y/aria-proptypes": "error",
641
- "a11y/aria-role": "error",
642
- "a11y/aria-unsupported-elements": "error",
643
- "a11y/autocomplete-valid": "error",
644
- "a11y/click-events-have-key-events": "error",
645
- "a11y/control-has-associated-label": "error",
646
- "a11y/heading-has-content": "error",
647
- "a11y/html-has-lang": "error",
648
- "a11y/iframe-has-title": "error",
649
- "a11y/img-redundant-alt": "error",
650
- "a11y/interactive-supports-focus": "error",
651
- "a11y/label-has-associated-control": "error",
652
- "a11y/lang": "error",
653
- "a11y/mouse-events-have-key-events": "error",
654
- "a11y/no-access-key": "error",
655
- "a11y/no-aria-hidden-on-focusable": "error",
656
- "a11y/no-autofocus": "error",
657
- "a11y/no-distracting-elements": "error",
658
- "a11y/no-interactive-element-to-noninteractive-role": "error",
659
- "a11y/no-noninteractive-element-interactions": "error",
660
- "a11y/no-noninteractive-element-to-interactive-role": "error",
661
- "a11y/no-noninteractive-tabindex": "error",
662
- "a11y/no-redundant-roles": "error",
663
- "a11y/no-static-element-interactions": "error",
664
- "a11y/prefer-tag-over-role": "error",
665
- "a11y/role-has-required-aria-props": "error",
666
- "a11y/role-supports-aria-props": "error",
667
- "a11y/scope": "error",
668
- "a11y/tabindex-no-positive": "error",
669
- },
537
+ "a11y/alt-text": "error",
538
+ "a11y/anchor-ambiguous-text": "error",
539
+ "a11y/anchor-has-content": "error",
540
+ "a11y/anchor-is-valid": "error",
541
+ "a11y/aria-activedescendant-has-tabindex": "error",
542
+ "a11y/aria-props": "error",
543
+ "a11y/aria-proptypes": "error",
544
+ "a11y/aria-role": "error",
545
+ "a11y/aria-unsupported-elements": "error",
546
+ "a11y/autocomplete-valid": "error",
547
+ "a11y/click-events-have-key-events": "error",
548
+ "a11y/control-has-associated-label": "error",
549
+ "a11y/heading-has-content": "error",
550
+ "a11y/html-has-lang": "error",
551
+ "a11y/iframe-has-title": "error",
552
+ "a11y/img-redundant-alt": "error",
553
+ "a11y/interactive-supports-focus": "error",
554
+ "a11y/label-has-associated-control": "error",
555
+ "a11y/lang": "error",
556
+ "a11y/mouse-events-have-key-events": "error",
557
+ "a11y/no-access-key": "error",
558
+ "a11y/no-aria-hidden-on-focusable": "error",
559
+ "a11y/no-autofocus": "error",
560
+ "a11y/no-distracting-elements": "error",
561
+ "a11y/no-interactive-element-to-noninteractive-role": "error",
562
+ "a11y/no-noninteractive-element-interactions": "error",
563
+ "a11y/no-noninteractive-element-to-interactive-role": "error",
564
+ "a11y/no-noninteractive-tabindex": "error",
565
+ "a11y/no-redundant-roles": "error",
566
+ "a11y/no-static-element-interactions": "error",
567
+ "a11y/prefer-tag-over-role": "error",
568
+ "a11y/role-has-required-aria-props": "error",
569
+ "a11y/role-supports-aria-props": "error",
570
+ "a11y/scope": "error",
571
+ "a11y/tabindex-no-positive": "error",
670
572
  },
671
- );
573
+ });