@softwareventures/eslint-config 9.5.0 → 10.0.0-alpha.2

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.
package/index.d.ts CHANGED
@@ -1,3 +1,2 @@
1
- import type { Linter } from "eslint";
2
- declare const config: Linter.Config;
3
- export = config;
1
+ declare const _default: import("eslint/config").Config[];
2
+ export default _default;
package/index.js CHANGED
@@ -1,276 +1,37 @@
1
- "use strict";
2
- const config = {
3
- env: {
4
- es6: true,
5
- node: true
6
- },
7
- extends: ["eslint:recommended", "prettier"],
8
- plugins: ["@typescript-eslint", "import", "jsdoc", "prefer-arrow", "sonarjs"],
9
- parserOptions: {
10
- ecmaVersion: 2018
11
- },
12
- overrides: [
13
- {
14
- files: ["*.{,c,m}ts{,x}"],
15
- extends: [
16
- "plugin:@typescript-eslint/eslint-recommended",
17
- "plugin:@typescript-eslint/recommended",
18
- "plugin:@typescript-eslint/recommended-requiring-type-checking"
19
- ],
20
- parser: "@typescript-eslint/parser",
21
- parserOptions: {
22
- project: "tsconfig.json"
23
- },
24
- rules: {
25
- "array-callback-return": "off",
26
- "consistent-return": "off",
27
- "dot-notation": "off",
28
- "no-invalid-this": "off",
29
- "no-unsafe-optional-chaining": "off",
30
- "no-unused-expressions": "off",
31
- "sonarjs/no-extra-arguments": "off",
32
- "sonarjs/no-ignored-return": "error",
33
- "@typescript-eslint/array-type": [
34
- "error",
35
- {
36
- default: "array-simple"
37
- }
38
- ],
39
- "@typescript-eslint/ban-tslint-comment": "error",
40
- "@typescript-eslint/ban-ts-comment": "error",
41
- "@typescript-eslint/class-literal-property-style": "error",
42
- "@typescript-eslint/consistent-type-assertions": [
43
- "error",
44
- { assertionStyle: "as", objectLiteralTypeAssertions: "never" }
45
- ],
46
- "@typescript-eslint/consistent-type-definitions": ["error", "interface"],
47
- "@typescript-eslint/consistent-type-imports": "error",
48
- "@typescript-eslint/dot-notation": "error",
49
- "@typescript-eslint/explicit-function-return-type": [
50
- "error",
51
- {
52
- allowExpressions: true,
53
- allowTypedFunctionExpressions: true
54
- }
55
- ],
56
- "@typescript-eslint/explicit-member-accessibility": [
57
- "error",
58
- {
59
- accessibility: "explicit"
60
- }
61
- ],
62
- "@typescript-eslint/explicit-module-boundary-types": [
63
- "error",
64
- {
65
- allowDirectConstAssertionInArrowFunctions: false,
66
- allowHigherOrderFunctions: false
67
- }
68
- ],
69
- "@typescript-eslint/interface-name-prefix": "off",
70
- "@typescript-eslint/member-ordering": "error",
71
- "@typescript-eslint/method-signature-style": "error",
72
- "@typescript-eslint/naming-convention": [
73
- "error",
74
- {
75
- selector: ["parameter"],
76
- modifiers: ["unused"],
77
- filter: "..",
78
- format: ["strictCamelCase"],
79
- leadingUnderscore: "allow",
80
- trailingUnderscore: "forbid"
81
- },
82
- {
83
- selector: ["parameter"],
84
- modifiers: ["unused"],
85
- filter: "^.$",
86
- format: null,
87
- custom: {
88
- regex: "^_$",
89
- match: true
90
- }
91
- },
92
- {
93
- selector: ["variableLike", "enumMember"],
94
- format: ["strictCamelCase"],
95
- leadingUnderscore: "forbid",
96
- trailingUnderscore: "forbid"
97
- },
98
- {
99
- selector: ["class", "interface", "typeAlias", "enum"],
100
- format: ["StrictPascalCase"],
101
- leadingUnderscore: "forbid",
102
- trailingUnderscore: "forbid"
103
- },
104
- {
105
- selector: ["typeParameter"],
106
- format: ["StrictPascalCase"],
107
- prefix: ["T"],
108
- filter: "..",
109
- leadingUnderscore: "forbid",
110
- trailingUnderscore: "forbid"
111
- },
112
- {
113
- selector: ["typeParameter"],
114
- format: ["UPPER_CASE"],
115
- custom: {
116
- regex: "^[A-Z]$",
117
- match: true
118
- },
119
- filter: "^.$"
120
- }
121
- ],
122
- "@typescript-eslint/no-base-to-string": "error",
123
- "@typescript-eslint/no-confusing-non-null-assertion": "error",
124
- "@typescript-eslint/no-confusing-void-expression": [
125
- "error",
126
- { ignoreVoidOperator: true }
127
- ],
128
- "@typescript-eslint/no-empty-function": "off",
129
- "@typescript-eslint/no-empty-object-type": "off",
130
- "@typescript-eslint/no-explicit-any": "error",
131
- "@typescript-eslint/no-extra-semi": "off",
132
- "@typescript-eslint/no-extraneous-class": "error",
133
- "@typescript-eslint/no-floating-promises": "error",
134
- "@typescript-eslint/no-invalid-void-type": ["error", { allowAsThisParameter: true }],
135
- "@typescript-eslint/no-loop-func": "error",
136
- "@typescript-eslint/no-loss-of-precision": "error",
137
- "@typescript-eslint/no-require-imports": "off",
138
- "@typescript-eslint/no-non-null-assertion": "error",
139
- "@typescript-eslint/no-unnecessary-boolean-literal-compare": "error",
140
- "@typescript-eslint/no-unnecessary-qualifier": "error",
141
- "@typescript-eslint/no-unnecessary-type-arguments": "error",
142
- "@typescript-eslint/no-unnecessary-type-assertion": "error",
143
- "@typescript-eslint/no-unnecessary-type-constraint": "error",
144
- "@typescript-eslint/no-unsafe-argument": "error",
145
- "@typescript-eslint/no-unsafe-function-type": "error",
146
- "@typescript-eslint/no-unsafe-return": "error",
147
- "@typescript-eslint/no-unused-expressions": ["error", { enforceForJSX: true }],
148
- "@typescript-eslint/no-unused-vars": "off",
149
- "@typescript-eslint/no-useless-constructor": "error",
150
- "@typescript-eslint/no-use-before-define": "off",
151
- "@typescript-eslint/no-wrapper-object-types": "error",
152
- "@typescript-eslint/non-nullable-type-assertion-style": "error",
153
- "@typescript-eslint/prefer-for-of": "off",
154
- "@typescript-eslint/prefer-function-type": "error",
155
- "@typescript-eslint/prefer-includes": "error",
156
- "@typescript-eslint/prefer-nullish-coalescing": "error",
157
- "@typescript-eslint/prefer-optional-chain": "error",
158
- "@typescript-eslint/prefer-readonly": "error",
159
- "@typescript-eslint/prefer-regexp-exec": "off",
160
- "@typescript-eslint/prefer-return-this-type": "error",
161
- "@typescript-eslint/prefer-string-starts-ends-with": "error",
162
- "@typescript-eslint/promise-function-async": "error",
163
- "@typescript-eslint/require-array-sort-compare": [
164
- "error",
165
- { ignoreStringArrays: true }
166
- ],
167
- "@typescript-eslint/restrict-template-expressions": [
168
- "error",
169
- {
170
- allowNumber: true,
171
- allowBoolean: true,
172
- allowAny: false,
173
- allowNullish: false
174
- }
175
- ],
176
- "@typescript-eslint/require-await": "off",
177
- "@typescript-eslint/strict-boolean-expressions": [
178
- "error",
179
- {
180
- allowString: false,
181
- allowNumber: false,
182
- allowNullableObject: false,
183
- allowNullableBoolean: false,
184
- allowNullableString: false,
185
- allowNullableNumber: false,
186
- allowAny: false
187
- }
188
- ],
189
- "@typescript-eslint/triple-slash-reference": [
190
- "error",
191
- {
192
- path: "always",
193
- types: "prefer-import",
194
- lib: "always"
195
- }
196
- ],
197
- "@typescript-eslint/unified-signatures": "error",
198
- "no-underscore-dangle": "off"
199
- }
200
- },
201
- {
202
- files: ["*.{,c,m}tsx"],
203
- rules: {
204
- "@typescript-eslint/naming-convention": [
205
- "error",
206
- {
207
- selector: ["variable", "parameter", "enumMember"],
208
- format: ["strictCamelCase"],
209
- leadingUnderscore: "forbid",
210
- trailingUnderscore: "forbid"
211
- },
212
- {
213
- selector: ["function"],
214
- format: ["strictCamelCase", "StrictPascalCase"],
215
- leadingUnderscore: "forbid",
216
- trailingUnderscore: "forbid"
217
- },
218
- {
219
- selector: ["class", "interface", "typeAlias", "enum"],
220
- format: ["StrictPascalCase"],
221
- leadingUnderscore: "forbid",
222
- trailingUnderscore: "forbid"
223
- },
224
- {
225
- selector: ["typeParameter"],
226
- format: ["StrictPascalCase"],
227
- prefix: ["T"],
228
- filter: "..",
229
- leadingUnderscore: "forbid",
230
- trailingUnderscore: "forbid"
231
- },
232
- {
233
- selector: ["typeParameter"],
234
- format: ["UPPER_CASE"],
235
- custom: {
236
- regex: "^[A-Z]$",
237
- match: true
238
- },
239
- filter: "^.$"
240
- }
241
- ]
242
- }
243
- },
244
- {
245
- files: [
246
- "*(_)test?(s)*(_)/**/*.{,c,m}ts{,x}",
247
- "test.{,c,m}ts{,x}",
248
- "*.test.{,c,m}ts{,x}",
249
- "*.test-d.{,c,m}ts{,x}"
250
- ],
251
- parserOptions: {
252
- project: "tsconfig.test.json"
253
- }
254
- },
255
- {
256
- files: [
257
- "*(_)test?(s)*(_)/**/*.{,c,m}{js,ts}{,x}",
258
- "test.{,c,m}{js,ts}{,x}",
259
- "*.test.{,c,m}{js,ts}{,x}",
260
- "*.config.{,c,m}{js,ts}{,x}"
261
- ],
262
- rules: {
263
- "@typescript-eslint/no-restricted-imports": "off"
264
- }
1
+ import { defineConfig } from "eslint/config";
2
+ import js from "@eslint/js";
3
+ import prettier from "eslint-config-prettier";
4
+ import typescriptPlugin from "@typescript-eslint/eslint-plugin";
5
+ import importPlugin from "eslint-plugin-import";
6
+ import jsdocPlugin from "eslint-plugin-jsdoc";
7
+ // @ts-expect-error No type definitions available
8
+ import preferArrowPlugin from "eslint-plugin-prefer-arrow";
9
+ import sonarPlugin from "eslint-plugin-sonarjs";
10
+ import { notNull } from "@softwareventures/nullable";
11
+ export default defineConfig(js.configs.recommended, prettier,
12
+ // @ts-expect-error Incorrect type definitions in typescript-eslint
13
+ notNull(typescriptPlugin.configs["flat/recommended-type-checked"]), {
14
+ plugins: {
15
+ "import": importPlugin,
16
+ "jsdoc": jsdocPlugin,
17
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
18
+ "prefer-arrow": preferArrowPlugin,
19
+ "sonarjs": sonarPlugin
20
+ }
21
+ }, {
22
+ files: ["**/*.{,c,m}ts{,x}"],
23
+ languageOptions: {
24
+ parserOptions: {
25
+ projectService: true
265
26
  }
266
- ],
27
+ },
267
28
  rules: {
268
- "array-callback-return": "error",
29
+ "array-callback-return": "off",
269
30
  "arrow-body-style": "error",
270
31
  "complexity": "off",
271
- "consistent-return": "error",
32
+ "consistent-return": "off",
272
33
  "curly": "error",
273
- "dot-notation": "error",
34
+ "dot-notation": "off",
274
35
  "eqeqeq": ["error", "always", { null: "never" }],
275
36
  "guard-for-in": "error",
276
37
  "id-blacklist": "error",
@@ -306,7 +67,7 @@ const config = {
306
67
  "no-extra-bind": "error",
307
68
  "no-extra-semi": "off",
308
69
  "no-implicit-coercion": "error",
309
- "no-invalid-this": "error",
70
+ "no-invalid-this": "off",
310
71
  "no-irregular-whitespace": ["error", { skipStrings: false }],
311
72
  "no-iterator": "error",
312
73
  "no-lone-blocks": "error",
@@ -336,11 +97,11 @@ const config = {
336
97
  "no-sequences": ["error", { allowInParentheses: false }],
337
98
  "no-throw-literal": "error",
338
99
  "no-undef-init": "error",
339
- "no-underscore-dangle": "error",
100
+ "no-underscore-dangle": "off",
340
101
  "no-unneeded-ternary": "error",
341
102
  "no-unreachable-loop": "error",
342
- "no-unsafe-optional-chaining": ["error", { disallowArithmeticOperators: true }],
343
- "no-unused-expressions": "error",
103
+ "no-unsafe-optional-chaining": "off",
104
+ "no-unused-expressions": "off",
344
105
  "no-useless-backreference": "error",
345
106
  "no-useless-call": "error",
346
107
  "no-useless-computed-key": "error",
@@ -368,11 +129,12 @@ const config = {
368
129
  "sonarjs/no-duplicated-branches": "error",
369
130
  "sonarjs/no-element-overwrite": "error",
370
131
  "sonarjs/no-empty-collection": "error",
371
- "sonarjs/no-extra-arguments": "error",
132
+ "sonarjs/no-extra-arguments": "off",
372
133
  "sonarjs/no-gratuitous-expressions": "error",
373
134
  "sonarjs/no-identical-conditions": "error",
374
135
  "sonarjs/no-identical-expressions": "error",
375
136
  "sonarjs/no-identical-functions": "error",
137
+ "sonarjs/no-ignored-return": "error",
376
138
  "sonarjs/no-inverted-boolean-check": "error",
377
139
  "sonarjs/no-redundant-boolean": "error",
378
140
  "sonarjs/no-redundant-jump": "error",
@@ -381,8 +143,221 @@ const config = {
381
143
  "sonarjs/no-useless-catch": "error",
382
144
  "sonarjs/non-existent-operator": "error",
383
145
  "sonarjs/prefer-object-literal": "error",
384
- "sonarjs/prefer-while": "error"
146
+ "sonarjs/prefer-while": "error",
147
+ "@typescript-eslint/array-type": [
148
+ "error",
149
+ {
150
+ default: "array-simple"
151
+ }
152
+ ],
153
+ "@typescript-eslint/ban-tslint-comment": "error",
154
+ "@typescript-eslint/ban-ts-comment": "error",
155
+ "@typescript-eslint/class-literal-property-style": "error",
156
+ "@typescript-eslint/consistent-type-assertions": [
157
+ "error",
158
+ { assertionStyle: "as", objectLiteralTypeAssertions: "never" }
159
+ ],
160
+ "@typescript-eslint/consistent-type-definitions": ["error", "interface"],
161
+ "@typescript-eslint/consistent-type-imports": "error",
162
+ "@typescript-eslint/dot-notation": "error",
163
+ "@typescript-eslint/explicit-function-return-type": [
164
+ "error",
165
+ {
166
+ allowExpressions: true,
167
+ allowTypedFunctionExpressions: true
168
+ }
169
+ ],
170
+ "@typescript-eslint/explicit-member-accessibility": [
171
+ "error",
172
+ {
173
+ accessibility: "explicit"
174
+ }
175
+ ],
176
+ "@typescript-eslint/explicit-module-boundary-types": [
177
+ "error",
178
+ {
179
+ allowDirectConstAssertionInArrowFunctions: false,
180
+ allowHigherOrderFunctions: false
181
+ }
182
+ ],
183
+ "@typescript-eslint/interface-name-prefix": "off",
184
+ "@typescript-eslint/member-ordering": "error",
185
+ "@typescript-eslint/method-signature-style": "error",
186
+ "@typescript-eslint/naming-convention": [
187
+ "error",
188
+ {
189
+ selector: ["parameter"],
190
+ modifiers: ["unused"],
191
+ filter: "..",
192
+ format: ["strictCamelCase"],
193
+ leadingUnderscore: "allow",
194
+ trailingUnderscore: "forbid"
195
+ },
196
+ {
197
+ selector: ["parameter"],
198
+ modifiers: ["unused"],
199
+ filter: "^.$",
200
+ format: null,
201
+ custom: {
202
+ regex: "^_$",
203
+ match: true
204
+ }
205
+ },
206
+ {
207
+ selector: ["variableLike", "enumMember"],
208
+ format: ["strictCamelCase"],
209
+ leadingUnderscore: "forbid",
210
+ trailingUnderscore: "forbid"
211
+ },
212
+ {
213
+ selector: ["class", "interface", "typeAlias", "enum"],
214
+ format: ["StrictPascalCase"],
215
+ leadingUnderscore: "forbid",
216
+ trailingUnderscore: "forbid"
217
+ },
218
+ {
219
+ selector: ["typeParameter"],
220
+ format: ["StrictPascalCase"],
221
+ prefix: ["T"],
222
+ filter: "..",
223
+ leadingUnderscore: "forbid",
224
+ trailingUnderscore: "forbid"
225
+ },
226
+ {
227
+ selector: ["typeParameter"],
228
+ format: ["UPPER_CASE"],
229
+ custom: {
230
+ regex: "^[A-Z]$",
231
+ match: true
232
+ },
233
+ filter: "^.$"
234
+ }
235
+ ],
236
+ "@typescript-eslint/no-base-to-string": "error",
237
+ "@typescript-eslint/no-confusing-non-null-assertion": "error",
238
+ "@typescript-eslint/no-confusing-void-expression": [
239
+ "error",
240
+ { ignoreVoidOperator: true }
241
+ ],
242
+ "@typescript-eslint/no-empty-function": "off",
243
+ "@typescript-eslint/no-empty-object-type": "off",
244
+ "@typescript-eslint/no-explicit-any": "error",
245
+ "@typescript-eslint/no-extra-semi": "off",
246
+ "@typescript-eslint/no-extraneous-class": "error",
247
+ "@typescript-eslint/no-floating-promises": "error",
248
+ "@typescript-eslint/no-invalid-void-type": ["error", { allowAsThisParameter: true }],
249
+ "@typescript-eslint/no-loop-func": "error",
250
+ "@typescript-eslint/no-loss-of-precision": "error",
251
+ "@typescript-eslint/no-require-imports": "off",
252
+ "@typescript-eslint/no-non-null-assertion": "error",
253
+ "@typescript-eslint/no-unnecessary-boolean-literal-compare": "error",
254
+ "@typescript-eslint/no-unnecessary-qualifier": "error",
255
+ "@typescript-eslint/no-unnecessary-type-arguments": "error",
256
+ "@typescript-eslint/no-unnecessary-type-assertion": "error",
257
+ "@typescript-eslint/no-unnecessary-type-constraint": "error",
258
+ "@typescript-eslint/no-unsafe-argument": "error",
259
+ "@typescript-eslint/no-unsafe-function-type": "error",
260
+ "@typescript-eslint/no-unsafe-return": "error",
261
+ "@typescript-eslint/no-unused-expressions": ["error", { enforceForJSX: true }],
262
+ "@typescript-eslint/no-unused-vars": "off",
263
+ "@typescript-eslint/no-useless-constructor": "error",
264
+ "@typescript-eslint/no-use-before-define": "off",
265
+ "@typescript-eslint/no-wrapper-object-types": "error",
266
+ "@typescript-eslint/non-nullable-type-assertion-style": "error",
267
+ "@typescript-eslint/prefer-for-of": "off",
268
+ "@typescript-eslint/prefer-function-type": "error",
269
+ "@typescript-eslint/prefer-includes": "error",
270
+ "@typescript-eslint/prefer-nullish-coalescing": "error",
271
+ "@typescript-eslint/prefer-optional-chain": "error",
272
+ "@typescript-eslint/prefer-readonly": "error",
273
+ "@typescript-eslint/prefer-regexp-exec": "off",
274
+ "@typescript-eslint/prefer-return-this-type": "error",
275
+ "@typescript-eslint/prefer-string-starts-ends-with": "error",
276
+ "@typescript-eslint/promise-function-async": "error",
277
+ "@typescript-eslint/require-array-sort-compare": ["error", { ignoreStringArrays: true }],
278
+ "@typescript-eslint/restrict-template-expressions": [
279
+ "error",
280
+ {
281
+ allowNumber: true,
282
+ allowBoolean: true,
283
+ allowAny: false,
284
+ allowNullish: false
285
+ }
286
+ ],
287
+ "@typescript-eslint/require-await": "off",
288
+ "@typescript-eslint/strict-boolean-expressions": [
289
+ "error",
290
+ {
291
+ allowString: false,
292
+ allowNumber: false,
293
+ allowNullableObject: false,
294
+ allowNullableBoolean: false,
295
+ allowNullableString: false,
296
+ allowNullableNumber: false,
297
+ allowAny: false
298
+ }
299
+ ],
300
+ "@typescript-eslint/triple-slash-reference": [
301
+ "error",
302
+ {
303
+ path: "always",
304
+ types: "prefer-import",
305
+ lib: "always"
306
+ }
307
+ ],
308
+ "@typescript-eslint/unified-signatures": "error"
309
+ }
310
+ }, {
311
+ files: ["**/*.{,c,m}tsx"],
312
+ rules: {
313
+ "@typescript-eslint/naming-convention": [
314
+ "error",
315
+ {
316
+ selector: ["variable", "parameter", "enumMember"],
317
+ format: ["strictCamelCase"],
318
+ leadingUnderscore: "forbid",
319
+ trailingUnderscore: "forbid"
320
+ },
321
+ {
322
+ selector: ["function"],
323
+ format: ["strictCamelCase", "StrictPascalCase"],
324
+ leadingUnderscore: "forbid",
325
+ trailingUnderscore: "forbid"
326
+ },
327
+ {
328
+ selector: ["class", "interface", "typeAlias", "enum"],
329
+ format: ["StrictPascalCase"],
330
+ leadingUnderscore: "forbid",
331
+ trailingUnderscore: "forbid"
332
+ },
333
+ {
334
+ selector: ["typeParameter"],
335
+ format: ["StrictPascalCase"],
336
+ prefix: ["T"],
337
+ filter: "..",
338
+ leadingUnderscore: "forbid",
339
+ trailingUnderscore: "forbid"
340
+ },
341
+ {
342
+ selector: ["typeParameter"],
343
+ format: ["UPPER_CASE"],
344
+ custom: {
345
+ regex: "^[A-Z]$",
346
+ match: true
347
+ },
348
+ filter: "^.$"
349
+ }
350
+ ]
351
+ }
352
+ }, {
353
+ files: [
354
+ "**/*(_)test?(s)*(_)/**/*.{,c,m}{js,ts}{,x}",
355
+ "**/test.{,c,m}{js,ts}{,x}",
356
+ "**/*.test.{,c,m}{js,ts}{,x}",
357
+ "**/*.config.{,c,m}{js,ts}{,x}"
358
+ ],
359
+ rules: {
360
+ "@typescript-eslint/no-restricted-imports": "off"
385
361
  }
386
- };
387
- module.exports = config;
362
+ });
388
363
  //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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","sourcesContent":["import type {Linter} from \"eslint\";\n\nconst config: Linter.Config = {\n env: {\n es6: true,\n node: true\n },\n extends: [\"eslint:recommended\", \"prettier\"],\n plugins: [\"@typescript-eslint\", \"import\", \"jsdoc\", \"prefer-arrow\", \"sonarjs\"],\n parserOptions: {\n ecmaVersion: 2018\n },\n overrides: [\n {\n files: [\"*.{,c,m}ts{,x}\"],\n extends: [\n \"plugin:@typescript-eslint/eslint-recommended\",\n \"plugin:@typescript-eslint/recommended\",\n \"plugin:@typescript-eslint/recommended-requiring-type-checking\"\n ],\n parser: \"@typescript-eslint/parser\",\n parserOptions: {\n project: \"tsconfig.json\"\n },\n rules: {\n \"array-callback-return\": \"off\",\n \"consistent-return\": \"off\",\n \"dot-notation\": \"off\",\n \"no-invalid-this\": \"off\",\n \"no-unsafe-optional-chaining\": \"off\",\n \"no-unused-expressions\": \"off\",\n \"sonarjs/no-extra-arguments\": \"off\",\n \"sonarjs/no-ignored-return\": \"error\",\n \"@typescript-eslint/array-type\": [\n \"error\",\n {\n default: \"array-simple\"\n }\n ],\n \"@typescript-eslint/ban-tslint-comment\": \"error\",\n \"@typescript-eslint/ban-ts-comment\": \"error\",\n \"@typescript-eslint/class-literal-property-style\": \"error\",\n \"@typescript-eslint/consistent-type-assertions\": [\n \"error\",\n {assertionStyle: \"as\", objectLiteralTypeAssertions: \"never\"}\n ],\n \"@typescript-eslint/consistent-type-definitions\": [\"error\", \"interface\"],\n \"@typescript-eslint/consistent-type-imports\": \"error\",\n \"@typescript-eslint/dot-notation\": \"error\",\n \"@typescript-eslint/explicit-function-return-type\": [\n \"error\",\n {\n allowExpressions: true,\n allowTypedFunctionExpressions: true\n }\n ],\n \"@typescript-eslint/explicit-member-accessibility\": [\n \"error\",\n {\n accessibility: \"explicit\"\n }\n ],\n \"@typescript-eslint/explicit-module-boundary-types\": [\n \"error\",\n {\n allowDirectConstAssertionInArrowFunctions: false,\n allowHigherOrderFunctions: false\n }\n ],\n \"@typescript-eslint/interface-name-prefix\": \"off\",\n \"@typescript-eslint/member-ordering\": \"error\",\n \"@typescript-eslint/method-signature-style\": \"error\",\n \"@typescript-eslint/naming-convention\": [\n \"error\",\n {\n selector: [\"parameter\"],\n modifiers: [\"unused\"],\n filter: \"..\",\n format: [\"strictCamelCase\"],\n leadingUnderscore: \"allow\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"parameter\"],\n modifiers: [\"unused\"],\n filter: \"^.$\",\n format: null,\n custom: {\n regex: \"^_$\",\n match: true\n }\n },\n {\n selector: [\"variableLike\", \"enumMember\"],\n format: [\"strictCamelCase\"],\n leadingUnderscore: \"forbid\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"class\", \"interface\", \"typeAlias\", \"enum\"],\n format: [\"StrictPascalCase\"],\n leadingUnderscore: \"forbid\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"typeParameter\"],\n format: [\"StrictPascalCase\"],\n prefix: [\"T\"],\n filter: \"..\",\n leadingUnderscore: \"forbid\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"typeParameter\"],\n format: [\"UPPER_CASE\"],\n custom: {\n regex: \"^[A-Z]$\",\n match: true\n },\n filter: \"^.$\"\n }\n ],\n \"@typescript-eslint/no-base-to-string\": \"error\",\n \"@typescript-eslint/no-confusing-non-null-assertion\": \"error\",\n \"@typescript-eslint/no-confusing-void-expression\": [\n \"error\",\n {ignoreVoidOperator: true}\n ],\n \"@typescript-eslint/no-empty-function\": \"off\",\n \"@typescript-eslint/no-empty-object-type\": \"off\",\n \"@typescript-eslint/no-explicit-any\": \"error\",\n \"@typescript-eslint/no-extra-semi\": \"off\",\n \"@typescript-eslint/no-extraneous-class\": \"error\",\n \"@typescript-eslint/no-floating-promises\": \"error\",\n \"@typescript-eslint/no-invalid-void-type\": [\"error\", {allowAsThisParameter: true}],\n \"@typescript-eslint/no-loop-func\": \"error\",\n \"@typescript-eslint/no-loss-of-precision\": \"error\",\n \"@typescript-eslint/no-require-imports\": \"off\",\n \"@typescript-eslint/no-non-null-assertion\": \"error\",\n \"@typescript-eslint/no-unnecessary-boolean-literal-compare\": \"error\",\n \"@typescript-eslint/no-unnecessary-qualifier\": \"error\",\n \"@typescript-eslint/no-unnecessary-type-arguments\": \"error\",\n \"@typescript-eslint/no-unnecessary-type-assertion\": \"error\",\n \"@typescript-eslint/no-unnecessary-type-constraint\": \"error\",\n \"@typescript-eslint/no-unsafe-argument\": \"error\",\n \"@typescript-eslint/no-unsafe-function-type\": \"error\",\n \"@typescript-eslint/no-unsafe-return\": \"error\",\n \"@typescript-eslint/no-unused-expressions\": [\"error\", {enforceForJSX: true}],\n \"@typescript-eslint/no-unused-vars\": \"off\",\n \"@typescript-eslint/no-useless-constructor\": \"error\",\n \"@typescript-eslint/no-use-before-define\": \"off\",\n \"@typescript-eslint/no-wrapper-object-types\": \"error\",\n \"@typescript-eslint/non-nullable-type-assertion-style\": \"error\",\n \"@typescript-eslint/prefer-for-of\": \"off\",\n \"@typescript-eslint/prefer-function-type\": \"error\",\n \"@typescript-eslint/prefer-includes\": \"error\",\n \"@typescript-eslint/prefer-nullish-coalescing\": \"error\",\n \"@typescript-eslint/prefer-optional-chain\": \"error\",\n \"@typescript-eslint/prefer-readonly\": \"error\",\n \"@typescript-eslint/prefer-regexp-exec\": \"off\",\n \"@typescript-eslint/prefer-return-this-type\": \"error\",\n \"@typescript-eslint/prefer-string-starts-ends-with\": \"error\",\n \"@typescript-eslint/promise-function-async\": \"error\",\n \"@typescript-eslint/require-array-sort-compare\": [\n \"error\",\n {ignoreStringArrays: true}\n ],\n \"@typescript-eslint/restrict-template-expressions\": [\n \"error\",\n {\n allowNumber: true,\n allowBoolean: true,\n allowAny: false,\n allowNullish: false\n }\n ],\n \"@typescript-eslint/require-await\": \"off\",\n \"@typescript-eslint/strict-boolean-expressions\": [\n \"error\",\n {\n allowString: false,\n allowNumber: false,\n allowNullableObject: false,\n allowNullableBoolean: false,\n allowNullableString: false,\n allowNullableNumber: false,\n allowAny: false\n }\n ],\n \"@typescript-eslint/triple-slash-reference\": [\n \"error\",\n {\n path: \"always\",\n types: \"prefer-import\",\n lib: \"always\"\n }\n ],\n \"@typescript-eslint/unified-signatures\": \"error\",\n \"no-underscore-dangle\": \"off\"\n }\n },\n {\n files: [\"*.{,c,m}tsx\"],\n rules: {\n \"@typescript-eslint/naming-convention\": [\n \"error\",\n {\n selector: [\"variable\", \"parameter\", \"enumMember\"],\n format: [\"strictCamelCase\"],\n leadingUnderscore: \"forbid\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"function\"],\n format: [\"strictCamelCase\", \"StrictPascalCase\"],\n leadingUnderscore: \"forbid\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"class\", \"interface\", \"typeAlias\", \"enum\"],\n format: [\"StrictPascalCase\"],\n leadingUnderscore: \"forbid\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"typeParameter\"],\n format: [\"StrictPascalCase\"],\n prefix: [\"T\"],\n filter: \"..\",\n leadingUnderscore: \"forbid\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"typeParameter\"],\n format: [\"UPPER_CASE\"],\n custom: {\n regex: \"^[A-Z]$\",\n match: true\n },\n filter: \"^.$\"\n }\n ]\n }\n },\n {\n files: [\n \"*(_)test?(s)*(_)/**/*.{,c,m}ts{,x}\",\n \"test.{,c,m}ts{,x}\",\n \"*.test.{,c,m}ts{,x}\",\n \"*.test-d.{,c,m}ts{,x}\"\n ],\n parserOptions: {\n project: \"tsconfig.test.json\"\n }\n },\n {\n files: [\n \"*(_)test?(s)*(_)/**/*.{,c,m}{js,ts}{,x}\",\n \"test.{,c,m}{js,ts}{,x}\",\n \"*.test.{,c,m}{js,ts}{,x}\",\n \"*.config.{,c,m}{js,ts}{,x}\"\n ],\n rules: {\n \"@typescript-eslint/no-restricted-imports\": \"off\"\n }\n }\n ],\n rules: {\n \"array-callback-return\": \"error\",\n \"arrow-body-style\": \"error\",\n \"complexity\": \"off\",\n \"consistent-return\": \"error\",\n \"curly\": \"error\",\n \"dot-notation\": \"error\",\n \"eqeqeq\": [\"error\", \"always\", {null: \"never\"}],\n \"guard-for-in\": \"error\",\n \"id-blacklist\": \"error\",\n \"id-match\": \"error\",\n \"import/no-duplicates\": \"error\",\n \"import/no-extraneous-dependencies\": [\n \"error\",\n {\n devDependencies: [\n \"**/*(_)test?(s)*(_)/**/*.{,c,m}{js,ts}{,x}\",\n \"**/*.config.{,c,m}{js,ts}{,x}\",\n \"**/*.test.{,c,m}{js,ts}{,x}\",\n \"**/*.test-d.{,c,m}ts{,x}\",\n \"**/test.{,c,m}{js,ts}{,x}\"\n ],\n optionalDependencies: false\n }\n ],\n \"import/order\": \"error\",\n \"jsdoc/check-alignment\": \"error\",\n \"jsdoc/check-indentation\": \"off\",\n \"jsdoc/no-types\": \"error\",\n \"max-classes-per-file\": \"off\",\n \"new-parens\": \"error\",\n \"no-alert\": \"error\",\n \"no-caller\": \"error\",\n \"no-constructor-return\": \"error\",\n \"no-duplicate-imports\": \"off\",\n \"no-empty\": \"off\",\n \"no-empty-function\": \"off\",\n \"no-eval\": \"error\",\n \"no-extend-native\": \"error\",\n \"no-extra-bind\": \"error\",\n \"no-extra-semi\": \"off\",\n \"no-implicit-coercion\": \"error\",\n \"no-invalid-this\": \"error\",\n \"no-irregular-whitespace\": [\"error\", {skipStrings: false}],\n \"no-iterator\": \"error\",\n \"no-lone-blocks\": \"error\",\n \"no-new-func\": \"error\",\n \"no-new-wrappers\": \"error\",\n \"no-nonoctal-decimal-escape\": \"error\",\n \"no-octal-escape\": \"error\",\n \"no-param-reassign\": \"error\",\n \"no-promise-executor-return\": \"error\",\n \"no-proto\": \"error\",\n \"@typescript-eslint/no-restricted-imports\": [\n \"error\",\n {\n patterns: [\n \"**/*(_)test?(s)*(_)/**/*\",\n \"**/*.config\",\n \"**/*.config.*\",\n \"**/*.test\",\n \"**/*.test.*\"\n ]\n }\n ],\n \"no-return-assign\": \"error\",\n \"no-return-await\": \"error\",\n \"no-script-url\": \"error\",\n \"no-self-compare\": \"error\",\n \"no-sequences\": [\"error\", {allowInParentheses: false}],\n \"no-throw-literal\": \"error\",\n \"no-undef-init\": \"error\",\n \"no-underscore-dangle\": \"error\",\n \"no-unneeded-ternary\": \"error\",\n \"no-unreachable-loop\": \"error\",\n \"no-unsafe-optional-chaining\": [\"error\", {disallowArithmeticOperators: true}],\n \"no-unused-expressions\": \"error\",\n \"no-useless-backreference\": \"error\",\n \"no-useless-call\": \"error\",\n \"no-useless-computed-key\": \"error\",\n \"no-useless-concat\": \"error\",\n \"no-useless-rename\": \"error\",\n \"no-var\": \"error\",\n \"object-shorthand\": \"error\",\n \"one-var\": [\"error\", \"never\"],\n \"prefer-arrow/prefer-arrow-functions\": [\"error\", {allowStandaloneDeclarations: true}],\n \"prefer-const\": \"error\",\n \"prefer-exponentiation-operator\": \"error\",\n \"prefer-numeric-literals\": \"error\",\n \"prefer-object-spread\": \"error\",\n \"prefer-promise-reject-errors\": \"error\",\n \"prefer-rest-params\": \"error\",\n \"prefer-regex-literals\": [\"error\", {disallowRedundantWrapping: true}],\n \"prefer-spread\": \"error\",\n \"radix\": \"error\",\n \"require-atomic-updates\": \"error\",\n \"require-unicode-regexp\": \"error\",\n \"strict\": \"error\",\n \"sonarjs/no-all-duplicated-branches\": \"error\",\n \"sonarjs/no-collapsible-if\": \"error\",\n \"sonarjs/no-collection-size-mischeck\": \"error\",\n \"sonarjs/no-duplicated-branches\": \"error\",\n \"sonarjs/no-element-overwrite\": \"error\",\n \"sonarjs/no-empty-collection\": \"error\",\n \"sonarjs/no-extra-arguments\": \"error\",\n \"sonarjs/no-gratuitous-expressions\": \"error\",\n \"sonarjs/no-identical-conditions\": \"error\",\n \"sonarjs/no-identical-expressions\": \"error\",\n \"sonarjs/no-identical-functions\": \"error\",\n \"sonarjs/no-inverted-boolean-check\": \"error\",\n \"sonarjs/no-redundant-boolean\": \"error\",\n \"sonarjs/no-redundant-jump\": \"error\",\n \"sonarjs/no-unused-collection\": \"error\",\n \"sonarjs/no-use-of-empty-return-value\": \"error\",\n \"sonarjs/no-useless-catch\": \"error\",\n \"sonarjs/non-existent-operator\": \"error\",\n \"sonarjs/prefer-object-literal\": \"error\",\n \"sonarjs/prefer-while\": \"error\"\n }\n};\n\nexport = config;\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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","sourcesContent":["import {defineConfig} from \"eslint/config\";\nimport js from \"@eslint/js\";\nimport prettier from \"eslint-config-prettier\";\nimport typescriptPlugin from \"@typescript-eslint/eslint-plugin\";\nimport importPlugin from \"eslint-plugin-import\";\nimport jsdocPlugin from \"eslint-plugin-jsdoc\";\n// @ts-expect-error No type definitions available\nimport preferArrowPlugin from \"eslint-plugin-prefer-arrow\";\nimport sonarPlugin from \"eslint-plugin-sonarjs\";\nimport {notNull} from \"@softwareventures/nullable\";\n\nexport default defineConfig(\n js.configs.recommended,\n prettier,\n // @ts-expect-error Incorrect type definitions in typescript-eslint\n notNull(typescriptPlugin.configs[\"flat/recommended-type-checked\"]),\n {\n plugins: {\n \"import\": importPlugin,\n \"jsdoc\": jsdocPlugin,\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n \"prefer-arrow\": preferArrowPlugin,\n \"sonarjs\": sonarPlugin\n }\n },\n {\n files: [\"**/*.{,c,m}ts{,x}\"],\n languageOptions: {\n parserOptions: {\n projectService: true\n }\n },\n rules: {\n \"array-callback-return\": \"off\",\n \"arrow-body-style\": \"error\",\n \"complexity\": \"off\",\n \"consistent-return\": \"off\",\n \"curly\": \"error\",\n \"dot-notation\": \"off\",\n \"eqeqeq\": [\"error\", \"always\", {null: \"never\"}],\n \"guard-for-in\": \"error\",\n \"id-blacklist\": \"error\",\n \"id-match\": \"error\",\n \"import/no-duplicates\": \"error\",\n \"import/no-extraneous-dependencies\": [\n \"error\",\n {\n devDependencies: [\n \"**/*(_)test?(s)*(_)/**/*.{,c,m}{js,ts}{,x}\",\n \"**/*.config.{,c,m}{js,ts}{,x}\",\n \"**/*.test.{,c,m}{js,ts}{,x}\",\n \"**/*.test-d.{,c,m}ts{,x}\",\n \"**/test.{,c,m}{js,ts}{,x}\"\n ],\n optionalDependencies: false\n }\n ],\n \"import/order\": \"error\",\n \"jsdoc/check-alignment\": \"error\",\n \"jsdoc/check-indentation\": \"off\",\n \"jsdoc/no-types\": \"error\",\n \"max-classes-per-file\": \"off\",\n \"new-parens\": \"error\",\n \"no-alert\": \"error\",\n \"no-caller\": \"error\",\n \"no-constructor-return\": \"error\",\n \"no-duplicate-imports\": \"off\",\n \"no-empty\": \"off\",\n \"no-empty-function\": \"off\",\n \"no-eval\": \"error\",\n \"no-extend-native\": \"error\",\n \"no-extra-bind\": \"error\",\n \"no-extra-semi\": \"off\",\n \"no-implicit-coercion\": \"error\",\n \"no-invalid-this\": \"off\",\n \"no-irregular-whitespace\": [\"error\", {skipStrings: false}],\n \"no-iterator\": \"error\",\n \"no-lone-blocks\": \"error\",\n \"no-new-func\": \"error\",\n \"no-new-wrappers\": \"error\",\n \"no-nonoctal-decimal-escape\": \"error\",\n \"no-octal-escape\": \"error\",\n \"no-param-reassign\": \"error\",\n \"no-promise-executor-return\": \"error\",\n \"no-proto\": \"error\",\n \"@typescript-eslint/no-restricted-imports\": [\n \"error\",\n {\n patterns: [\n \"**/*(_)test?(s)*(_)/**/*\",\n \"**/*.config\",\n \"**/*.config.*\",\n \"**/*.test\",\n \"**/*.test.*\"\n ]\n }\n ],\n \"no-return-assign\": \"error\",\n \"no-return-await\": \"error\",\n \"no-script-url\": \"error\",\n \"no-self-compare\": \"error\",\n \"no-sequences\": [\"error\", {allowInParentheses: false}],\n \"no-throw-literal\": \"error\",\n \"no-undef-init\": \"error\",\n \"no-underscore-dangle\": \"off\",\n \"no-unneeded-ternary\": \"error\",\n \"no-unreachable-loop\": \"error\",\n \"no-unsafe-optional-chaining\": \"off\",\n \"no-unused-expressions\": \"off\",\n \"no-useless-backreference\": \"error\",\n \"no-useless-call\": \"error\",\n \"no-useless-computed-key\": \"error\",\n \"no-useless-concat\": \"error\",\n \"no-useless-rename\": \"error\",\n \"no-var\": \"error\",\n \"object-shorthand\": \"error\",\n \"one-var\": [\"error\", \"never\"],\n \"prefer-arrow/prefer-arrow-functions\": [\"error\", {allowStandaloneDeclarations: true}],\n \"prefer-const\": \"error\",\n \"prefer-exponentiation-operator\": \"error\",\n \"prefer-numeric-literals\": \"error\",\n \"prefer-object-spread\": \"error\",\n \"prefer-promise-reject-errors\": \"error\",\n \"prefer-rest-params\": \"error\",\n \"prefer-regex-literals\": [\"error\", {disallowRedundantWrapping: true}],\n \"prefer-spread\": \"error\",\n \"radix\": \"error\",\n \"require-atomic-updates\": \"error\",\n \"require-unicode-regexp\": \"error\",\n \"strict\": \"error\",\n \"sonarjs/no-all-duplicated-branches\": \"error\",\n \"sonarjs/no-collapsible-if\": \"error\",\n \"sonarjs/no-collection-size-mischeck\": \"error\",\n \"sonarjs/no-duplicated-branches\": \"error\",\n \"sonarjs/no-element-overwrite\": \"error\",\n \"sonarjs/no-empty-collection\": \"error\",\n \"sonarjs/no-extra-arguments\": \"off\",\n \"sonarjs/no-gratuitous-expressions\": \"error\",\n \"sonarjs/no-identical-conditions\": \"error\",\n \"sonarjs/no-identical-expressions\": \"error\",\n \"sonarjs/no-identical-functions\": \"error\",\n \"sonarjs/no-ignored-return\": \"error\",\n \"sonarjs/no-inverted-boolean-check\": \"error\",\n \"sonarjs/no-redundant-boolean\": \"error\",\n \"sonarjs/no-redundant-jump\": \"error\",\n \"sonarjs/no-unused-collection\": \"error\",\n \"sonarjs/no-use-of-empty-return-value\": \"error\",\n \"sonarjs/no-useless-catch\": \"error\",\n \"sonarjs/non-existent-operator\": \"error\",\n \"sonarjs/prefer-object-literal\": \"error\",\n \"sonarjs/prefer-while\": \"error\",\n \"@typescript-eslint/array-type\": [\n \"error\",\n {\n default: \"array-simple\"\n }\n ],\n \"@typescript-eslint/ban-tslint-comment\": \"error\",\n \"@typescript-eslint/ban-ts-comment\": \"error\",\n \"@typescript-eslint/class-literal-property-style\": \"error\",\n \"@typescript-eslint/consistent-type-assertions\": [\n \"error\",\n {assertionStyle: \"as\", objectLiteralTypeAssertions: \"never\"}\n ],\n \"@typescript-eslint/consistent-type-definitions\": [\"error\", \"interface\"],\n \"@typescript-eslint/consistent-type-imports\": \"error\",\n \"@typescript-eslint/dot-notation\": \"error\",\n \"@typescript-eslint/explicit-function-return-type\": [\n \"error\",\n {\n allowExpressions: true,\n allowTypedFunctionExpressions: true\n }\n ],\n \"@typescript-eslint/explicit-member-accessibility\": [\n \"error\",\n {\n accessibility: \"explicit\"\n }\n ],\n \"@typescript-eslint/explicit-module-boundary-types\": [\n \"error\",\n {\n allowDirectConstAssertionInArrowFunctions: false,\n allowHigherOrderFunctions: false\n }\n ],\n \"@typescript-eslint/interface-name-prefix\": \"off\",\n \"@typescript-eslint/member-ordering\": \"error\",\n \"@typescript-eslint/method-signature-style\": \"error\",\n \"@typescript-eslint/naming-convention\": [\n \"error\",\n {\n selector: [\"parameter\"],\n modifiers: [\"unused\"],\n filter: \"..\",\n format: [\"strictCamelCase\"],\n leadingUnderscore: \"allow\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"parameter\"],\n modifiers: [\"unused\"],\n filter: \"^.$\",\n format: null,\n custom: {\n regex: \"^_$\",\n match: true\n }\n },\n {\n selector: [\"variableLike\", \"enumMember\"],\n format: [\"strictCamelCase\"],\n leadingUnderscore: \"forbid\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"class\", \"interface\", \"typeAlias\", \"enum\"],\n format: [\"StrictPascalCase\"],\n leadingUnderscore: \"forbid\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"typeParameter\"],\n format: [\"StrictPascalCase\"],\n prefix: [\"T\"],\n filter: \"..\",\n leadingUnderscore: \"forbid\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"typeParameter\"],\n format: [\"UPPER_CASE\"],\n custom: {\n regex: \"^[A-Z]$\",\n match: true\n },\n filter: \"^.$\"\n }\n ],\n \"@typescript-eslint/no-base-to-string\": \"error\",\n \"@typescript-eslint/no-confusing-non-null-assertion\": \"error\",\n \"@typescript-eslint/no-confusing-void-expression\": [\n \"error\",\n {ignoreVoidOperator: true}\n ],\n \"@typescript-eslint/no-empty-function\": \"off\",\n \"@typescript-eslint/no-empty-object-type\": \"off\",\n \"@typescript-eslint/no-explicit-any\": \"error\",\n \"@typescript-eslint/no-extra-semi\": \"off\",\n \"@typescript-eslint/no-extraneous-class\": \"error\",\n \"@typescript-eslint/no-floating-promises\": \"error\",\n \"@typescript-eslint/no-invalid-void-type\": [\"error\", {allowAsThisParameter: true}],\n \"@typescript-eslint/no-loop-func\": \"error\",\n \"@typescript-eslint/no-loss-of-precision\": \"error\",\n \"@typescript-eslint/no-require-imports\": \"off\",\n \"@typescript-eslint/no-non-null-assertion\": \"error\",\n \"@typescript-eslint/no-unnecessary-boolean-literal-compare\": \"error\",\n \"@typescript-eslint/no-unnecessary-qualifier\": \"error\",\n \"@typescript-eslint/no-unnecessary-type-arguments\": \"error\",\n \"@typescript-eslint/no-unnecessary-type-assertion\": \"error\",\n \"@typescript-eslint/no-unnecessary-type-constraint\": \"error\",\n \"@typescript-eslint/no-unsafe-argument\": \"error\",\n \"@typescript-eslint/no-unsafe-function-type\": \"error\",\n \"@typescript-eslint/no-unsafe-return\": \"error\",\n \"@typescript-eslint/no-unused-expressions\": [\"error\", {enforceForJSX: true}],\n \"@typescript-eslint/no-unused-vars\": \"off\",\n \"@typescript-eslint/no-useless-constructor\": \"error\",\n \"@typescript-eslint/no-use-before-define\": \"off\",\n \"@typescript-eslint/no-wrapper-object-types\": \"error\",\n \"@typescript-eslint/non-nullable-type-assertion-style\": \"error\",\n \"@typescript-eslint/prefer-for-of\": \"off\",\n \"@typescript-eslint/prefer-function-type\": \"error\",\n \"@typescript-eslint/prefer-includes\": \"error\",\n \"@typescript-eslint/prefer-nullish-coalescing\": \"error\",\n \"@typescript-eslint/prefer-optional-chain\": \"error\",\n \"@typescript-eslint/prefer-readonly\": \"error\",\n \"@typescript-eslint/prefer-regexp-exec\": \"off\",\n \"@typescript-eslint/prefer-return-this-type\": \"error\",\n \"@typescript-eslint/prefer-string-starts-ends-with\": \"error\",\n \"@typescript-eslint/promise-function-async\": \"error\",\n \"@typescript-eslint/require-array-sort-compare\": [\"error\", {ignoreStringArrays: true}],\n \"@typescript-eslint/restrict-template-expressions\": [\n \"error\",\n {\n allowNumber: true,\n allowBoolean: true,\n allowAny: false,\n allowNullish: false\n }\n ],\n \"@typescript-eslint/require-await\": \"off\",\n \"@typescript-eslint/strict-boolean-expressions\": [\n \"error\",\n {\n allowString: false,\n allowNumber: false,\n allowNullableObject: false,\n allowNullableBoolean: false,\n allowNullableString: false,\n allowNullableNumber: false,\n allowAny: false\n }\n ],\n \"@typescript-eslint/triple-slash-reference\": [\n \"error\",\n {\n path: \"always\",\n types: \"prefer-import\",\n lib: \"always\"\n }\n ],\n \"@typescript-eslint/unified-signatures\": \"error\"\n }\n },\n {\n files: [\"**/*.{,c,m}tsx\"],\n rules: {\n \"@typescript-eslint/naming-convention\": [\n \"error\",\n {\n selector: [\"variable\", \"parameter\", \"enumMember\"],\n format: [\"strictCamelCase\"],\n leadingUnderscore: \"forbid\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"function\"],\n format: [\"strictCamelCase\", \"StrictPascalCase\"],\n leadingUnderscore: \"forbid\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"class\", \"interface\", \"typeAlias\", \"enum\"],\n format: [\"StrictPascalCase\"],\n leadingUnderscore: \"forbid\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"typeParameter\"],\n format: [\"StrictPascalCase\"],\n prefix: [\"T\"],\n filter: \"..\",\n leadingUnderscore: \"forbid\",\n trailingUnderscore: \"forbid\"\n },\n {\n selector: [\"typeParameter\"],\n format: [\"UPPER_CASE\"],\n custom: {\n regex: \"^[A-Z]$\",\n match: true\n },\n filter: \"^.$\"\n }\n ]\n }\n },\n {\n files: [\n \"**/*(_)test?(s)*(_)/**/*.{,c,m}{js,ts}{,x}\",\n \"**/test.{,c,m}{js,ts}{,x}\",\n \"**/*.test.{,c,m}{js,ts}{,x}\",\n \"**/*.config.{,c,m}{js,ts}{,x}\"\n ],\n rules: {\n \"@typescript-eslint/no-restricted-imports\": \"off\"\n }\n }\n);\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@softwareventures/eslint-config",
3
- "version": "9.5.0",
3
+ "version": "10.0.0-alpha.2",
4
4
  "description": "Standard eslint configuration for Software Ventures Limited",
5
5
  "keywords": [
6
6
  "TypeScript",
@@ -12,54 +12,58 @@
12
12
  "bugs": "https://github.com/softwareventures/eslint-config",
13
13
  "repository": "github:softwareventures/eslint-config",
14
14
  "license": "ISC",
15
+ "type": "module",
15
16
  "scripts": {
16
17
  "commit": "cz",
17
- "fix": "tsc && eslint . --fix && prettier --write .",
18
+ "fix": "tsc && eslint --fix . && prettier --write .",
18
19
  "_postinstall": "husky",
19
20
  "lint": "tsc && eslint . && prettier --check .",
20
21
  "prepack": "tsc",
21
- "test": "ava"
22
+ "test": "echo No tests yet"
23
+ },
24
+ "sideEffects": false,
25
+ "exports": {
26
+ ".": "./index.js"
22
27
  },
23
28
  "engines": {
24
- "node": "^18 || ^20 || >=22"
29
+ "node": "^20 || ^22 || ^24 || >=25"
25
30
  },
26
31
  "dependencies": {
32
+ "@softwareventures/nullable": "^3.2.0",
27
33
  "tslib": "^2.3.1"
28
34
  },
29
35
  "peerDependencies": {
30
- "@typescript-eslint/eslint-plugin": "^8.0.0",
31
- "@typescript-eslint/parser": "^8.0.0",
32
- "eslint": "^8.0.0",
33
- "eslint-config-prettier": "^8.3.0 || ^9.0.0 || ^10.0.0",
36
+ "@eslint/js": "^9.39.4",
37
+ "@typescript-eslint/eslint-plugin": "^8.56.1",
38
+ "@typescript-eslint/parser": "^8.56.1",
39
+ "eslint": "^9.0.0",
40
+ "eslint-config-prettier": "^10.0.0",
34
41
  "eslint-plugin-import": "^2.25.2",
35
- "eslint-plugin-jsdoc": "^37.0.3 || ^38.0.0 || ^39.0.0 || ^40.0.0 || ^41.0.0 || ^42.0.0 || ^43.0.0 || ^44.0.0 || ^45.0.0 || ^46.0.0 || ^47.0.0 || ^48.0.0 || ^49.0.0 || ^50.0.0 || ^51.0.0 || ^52.0.0 || ^54.0.0 || ^55.0.0 || ^56.0.0 || ^57.0.0 || ^58.0.0 || ^59.0.0 || ^60.0.0 || ^61.0.0 || ^62.0.0",
42
+ "eslint-plugin-jsdoc": "^62.0.0",
36
43
  "eslint-plugin-prefer-arrow": "^1.2.3",
37
- "eslint-plugin-sonarjs": "^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^0.14.0 || ^0.15.0 || ^0.16.0 || ^0.17.0 || ^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0 || ^0.25.0 || ^1.0.0 || ^2.0.0 || ^3.0.0 || ^4.0.0",
38
- "typescript": "^4.8.4 || ^5.0.0"
44
+ "eslint-plugin-sonarjs": "^4.0.0",
45
+ "typescript": "^5.0.0"
39
46
  },
40
47
  "devDependencies": {
41
48
  "@commitlint/cli": "20.4.3",
42
49
  "@commitlint/config-conventional": "20.4.3",
43
50
  "@commitlint/cz-commitlint": "20.4.3",
51
+ "@eslint/js": "9.39.4",
44
52
  "@softwareventures/precise-commits": "4.0.23",
45
53
  "@softwareventures/prettier-config": "4.0.0",
46
54
  "@softwareventures/tsconfig": "8.1.1",
47
- "@types/eslint": "8.56.12",
48
- "@types/node": "18.19.130",
49
55
  "@typescript-eslint/eslint-plugin": "8.56.1",
50
56
  "@typescript-eslint/parser": "8.56.1",
51
- "ava": "6.4.1",
52
57
  "commitizen": "4.3.1",
53
- "eslint": "8.57.1",
58
+ "eslint": "9.39.3",
54
59
  "eslint-config-prettier": "10.1.8",
55
60
  "eslint-plugin-import": "2.32.0",
56
- "eslint-plugin-jsdoc": "51.4.1",
61
+ "eslint-plugin-jsdoc": "62.7.1",
57
62
  "eslint-plugin-prefer-arrow": "1.2.3",
58
63
  "eslint-plugin-sonarjs": "4.0.1",
59
64
  "husky": "9.1.7",
60
65
  "inquirer": "9.3.8",
61
66
  "prettier": "3.8.1",
62
- "ts-node": "10.9.2",
63
67
  "typescript": "5.9.3"
64
68
  },
65
69
  "eslintConfig": {
@@ -72,14 +76,6 @@
72
76
  "path": "@commitlint/cz-commitlint"
73
77
  }
74
78
  },
75
- "ava": {
76
- "extensions": [
77
- "ts"
78
- ],
79
- "require": [
80
- "ts-node/register"
81
- ]
82
- },
83
79
  "release": {
84
80
  "extends": "@softwareventures/semantic-release-config"
85
81
  },
package/esm.d.ts DELETED
@@ -1,3 +0,0 @@
1
- import type { Linter } from "eslint";
2
- declare const config: Linter.Config;
3
- export = config;
package/esm.js DELETED
@@ -1,12 +0,0 @@
1
- "use strict";
2
- const config = {
3
- extends: "@softwareventures/eslint-config",
4
- parserOptions: {
5
- sourceType: "module"
6
- },
7
- rules: {
8
- "@typescript-eslint/no-require-imports": "error"
9
- }
10
- };
11
- module.exports = config;
12
- //# sourceMappingURL=esm.js.map
package/esm.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"esm.js","sourceRoot":"","sources":["esm.ts"],"names":[],"mappings":";AAEA,MAAM,MAAM,GAAkB;IAC1B,OAAO,EAAE,iCAAiC;IAC1C,aAAa,EAAE;QACX,UAAU,EAAE,QAAQ;KACvB;IACD,KAAK,EAAE;QACH,uCAAuC,EAAE,OAAO;KACnD;CACJ,CAAC;AAEF,iBAAS,MAAM,CAAC","sourcesContent":["import type {Linter} from \"eslint\";\n\nconst config: Linter.Config = {\n extends: \"@softwareventures/eslint-config\",\n parserOptions: {\n sourceType: \"module\"\n },\n rules: {\n \"@typescript-eslint/no-require-imports\": \"error\"\n }\n};\n\nexport = config;\n"]}