eslint-config-complete 4.16.0 → 4.18.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.
@@ -1 +1 @@
1
- {"version":3,"file":"base-eslint.d.ts","sourceRoot":"","sources":["../../../src/base/base-eslint.js"],"names":[],"mappings":"AAgqBA;;;;;;;;GAQG;AACH,0DAMG"}
1
+ {"version":3,"file":"base-eslint.d.ts","sourceRoot":"","sources":["../../../src/base/base-eslint.js"],"names":[],"mappings":"AA6nBA;;;;;;;;GAQG;AACH,0DAMG"}
@@ -6,12 +6,7 @@ import { defineConfig } from "eslint/config";
6
6
  */
7
7
  const POSSIBLE_PROBLEMS = {
8
8
  /** The `checkForEach` option is enabled to make the rule stricter. */
9
- "array-callback-return": [
10
- "error",
11
- {
12
- checkForEach: true,
13
- },
14
- ],
9
+ "array-callback-return": ["error", { checkForEach: true }],
15
10
  /** Disabled since this is already enforced by TypeScript (`ts(2335)` & `ts(2377)`). */
16
11
  "constructor-super": "off", // @typescript-eslint/eslint-recommended
17
12
  "for-direction": "error",
@@ -174,9 +169,7 @@ const SUGGESTIONS = {
174
169
  "logical-assignment-operators": [
175
170
  "error",
176
171
  "always",
177
- {
178
- enforceForIfStatements: true,
179
- },
172
+ { enforceForIfStatements: true },
180
173
  ],
181
174
  "max-classes-per-file": "error",
182
175
  /** Disabled since this rule is too prescriptive for general-purpose use. */
@@ -220,12 +213,7 @@ const SUGGESTIONS = {
220
213
  "no-delete-var": "error",
221
214
  "no-div-regex": "error",
222
215
  /** The `allowElseIf` option is disabled to make the rule stricter. */
223
- "no-else-return": [
224
- "error",
225
- {
226
- allowElseIf: false,
227
- },
228
- ],
216
+ "no-else-return": ["error", { allowElseIf: false }],
229
217
  "no-empty": "error",
230
218
  /** Superseded by the `@typescript-eslint/no-empty-function` rule. */
231
219
  "no-empty-function": "off",
@@ -276,7 +264,6 @@ const SUGGESTIONS = {
276
264
  "no-param-reassign": [
277
265
  "error",
278
266
  {
279
- props: true,
280
267
  ignorePropertyModificationsFor: [
281
268
  "acc", // for reduce accumulators
282
269
  "accumulator", // for reduce accumulators
@@ -290,6 +277,7 @@ const SUGGESTIONS = {
290
277
  "$scope", // for Angular 1 scopes
291
278
  "staticContext", // for ReactRouter context
292
279
  ],
280
+ props: true,
293
281
  },
294
282
  ],
295
283
  /**
@@ -322,12 +310,12 @@ const SUGGESTIONS = {
322
310
  "no-restricted-globals": [
323
311
  "error",
324
312
  {
325
- name: "isFinite",
326
313
  message: "Use Number.isFinite instead: https://github.com/airbnb/javascript#standard-library--isfinite",
314
+ name: "isFinite",
327
315
  },
328
316
  {
329
- name: "isNaN",
330
317
  message: "Use Number.isNaN instead: https://github.com/airbnb/javascript#standard-library--isnan",
318
+ name: "isNaN",
331
319
  },
332
320
  ...confusingBrowserGlobals,
333
321
  ],
@@ -340,52 +328,52 @@ const SUGGESTIONS = {
340
328
  "no-restricted-properties": [
341
329
  "error",
342
330
  {
331
+ message: "arguments.callee is deprecated",
343
332
  object: "arguments",
344
333
  property: "callee",
345
- message: "arguments.callee is deprecated",
346
334
  },
347
335
  {
336
+ message: "Please use Number.isFinite instead",
348
337
  object: "global",
349
338
  property: "isFinite",
350
- message: "Please use Number.isFinite instead",
351
339
  },
352
340
  {
341
+ message: "Please use Number.isFinite instead",
353
342
  object: "self",
354
343
  property: "isFinite",
355
- message: "Please use Number.isFinite instead",
356
344
  },
357
345
  {
346
+ message: "Please use Number.isFinite instead",
358
347
  object: "window",
359
348
  property: "isFinite",
360
- message: "Please use Number.isFinite instead",
361
349
  },
362
350
  {
351
+ message: "Please use Number.isNaN instead",
363
352
  object: "global",
364
353
  property: "isNaN",
365
- message: "Please use Number.isNaN instead",
366
354
  },
367
355
  {
356
+ message: "Please use Number.isNaN instead",
368
357
  object: "self",
369
358
  property: "isNaN",
370
- message: "Please use Number.isNaN instead",
371
359
  },
372
360
  {
361
+ message: "Please use Number.isNaN instead",
373
362
  object: "window",
374
363
  property: "isNaN",
375
- message: "Please use Number.isNaN instead",
376
364
  },
377
365
  {
378
- property: "__defineGetter__",
379
366
  message: "Please use Object.defineProperty instead.",
367
+ property: "__defineGetter__",
380
368
  },
381
369
  {
382
- property: "__defineSetter__",
383
370
  message: "Please use Object.defineProperty instead.",
371
+ property: "__defineSetter__",
384
372
  },
385
373
  {
374
+ message: "Use the exponentiation operator (**) instead.",
386
375
  object: "Math",
387
376
  property: "pow",
388
- message: "Use the exponentiation operator (**) instead.",
389
377
  },
390
378
  ],
391
379
  /** Disabled because it is intended for disallowing specific language features per-project. */
@@ -420,12 +408,7 @@ const SUGGESTIONS = {
420
408
  */
421
409
  "no-underscore-dangle": "off",
422
410
  /** The `defaultAssignment` option is disabled to make the rule stricter. */
423
- "no-unneeded-ternary": [
424
- "error",
425
- {
426
- defaultAssignment: false,
427
- },
428
- ],
411
+ "no-unneeded-ternary": ["error", { defaultAssignment: false }],
429
412
  /** Superseded by the `@typescript-eslint/no-unused-expressions` rule. */
430
413
  "no-unused-expressions": "off",
431
414
  "no-unused-labels": "error",
@@ -433,12 +416,7 @@ const SUGGESTIONS = {
433
416
  "no-useless-call": "error",
434
417
  "no-useless-catch": "error",
435
418
  /** The `enforceForClassMembers` option is enabled to make the rule stricter. */
436
- "no-useless-computed-key": [
437
- "error",
438
- {
439
- enforceForClassMembers: true,
440
- },
441
- ],
419
+ "no-useless-computed-key": ["error", { enforceForClassMembers: true }],
442
420
  "no-useless-concat": "error",
443
421
  /** Superseded by the `@typescript-eslint/no-useless-constructor` rule. */
444
422
  "no-useless-constructor": "off",
@@ -455,13 +433,7 @@ const SUGGESTIONS = {
455
433
  /** Disabled since this is already enforced by TypeScript (`ts(1101)` & `ts(2410)`). */
456
434
  "no-with": "off", // @typescript-eslint/eslint-recommended
457
435
  /** The `ignoreConstructors` option is disabled to make the rule stricter. */
458
- "object-shorthand": [
459
- "error",
460
- "always",
461
- {
462
- ignoreConstructors: false,
463
- },
464
- ],
436
+ "object-shorthand": ["error", "always", { ignoreConstructors: false }],
465
437
  /**
466
438
  * The `never` option is provided to disallow multi-variable declarations (since they can be
467
439
  * confusing).
@@ -485,12 +457,7 @@ const SUGGESTIONS = {
485
457
  /** Superseded by the `@typescript-eslint/prefer-promise-reject-errors` rule. */
486
458
  "prefer-promise-reject-errors": "off",
487
459
  /** The `disallowRedundantWrapping` option is enabled to make the rule stricter. */
488
- "prefer-regex-literals": [
489
- "error",
490
- {
491
- disallowRedundantWrapping: true,
492
- },
493
- ],
460
+ "prefer-regex-literals": ["error", { disallowRedundantWrapping: true }],
494
461
  "prefer-rest-params": "error",
495
462
  "prefer-spread": "error",
496
463
  "prefer-template": "error",
@@ -519,9 +486,7 @@ const SUGGESTIONS = {
519
486
  * @type {Record<string, import("@typescript-eslint/utils").TSESLint.SharedConfig.RuleEntry>}
520
487
  * @see https://eslint.org/docs/latest/rules/#suggestions
521
488
  */
522
- const LAYOUT_AND_FORMATTING = {
523
- "unicode-bom": "error",
524
- };
489
+ const LAYOUT_AND_FORMATTING = { "unicode-bom": "error" };
525
490
  /**
526
491
  * This ESLint config only contains built-in rules from ESLint itself:
527
492
  * https://eslint.org/docs/latest/rules/
@@ -1 +1 @@
1
- {"version":3,"file":"base-import-x.d.ts","sourceRoot":"","sources":["../../../src/base/base-import-x.js"],"names":[],"mappings":"AA4NA;;;;;;;;;GASG;AACH,2DAsFE"}
1
+ {"version":3,"file":"base-import-x.d.ts","sourceRoot":"","sources":["../../../src/base/base-import-x.js"],"names":[],"mappings":"AA4NA;;;;;;;;;GASG;AACH,2DAqFE"}
@@ -189,6 +189,12 @@ export const baseImportX = defineConfig({
189
189
  plugins: {
190
190
  "import-x": esLintPluginImportX,
191
191
  },
192
+ rules: {
193
+ ...HELPFUL_WARNINGS,
194
+ ...MODULE_SYSTEMS,
195
+ ...STATIC_ANALYSIS,
196
+ ...STYLE_GUIDE,
197
+ },
192
198
  // Beyond just specifying the plugin, additional configuration is necessary to make the plugin
193
199
  // work properly with TypeScript:
194
200
  // - First, the "eslint-import-resolver-typescript" package needs to be installed, or else an
@@ -211,12 +217,6 @@ export const baseImportX = defineConfig({
211
217
  typescript: true,
212
218
  },
213
219
  },
214
- rules: {
215
- ...HELPFUL_WARNINGS,
216
- ...MODULE_SYSTEMS,
217
- ...STATIC_ANALYSIS,
218
- ...STYLE_GUIDE,
219
- },
220
220
  },
221
221
  // Disable some TypeScript-specific rules in JavaScript files.
222
222
  {
@@ -1 +1 @@
1
- {"version":3,"file":"base-jsdoc.d.ts","sourceRoot":"","sources":["../../../src/base/base-jsdoc.js"],"names":[],"mappings":"AAGA;;;GAGG;AACH,yDAwSE"}
1
+ {"version":3,"file":"base-jsdoc.d.ts","sourceRoot":"","sources":["../../../src/base/base-jsdoc.js"],"names":[],"mappings":"AAGA;;;GAGG;AACH,yDAoRE"}
@@ -105,12 +105,7 @@ export const baseJSDoc = defineConfig({
105
105
  */
106
106
  "jsdoc/no-restricted-syntax": "off",
107
107
  /** The `contexts` option is set to `any` to make the rule stricter. */
108
- "jsdoc/no-types": [
109
- "error",
110
- {
111
- contexts: ["any"],
112
- },
113
- ],
108
+ "jsdoc/no-types": ["error", { contexts: ["any"] }],
114
109
  /** Disabled because it is not needed in TypeScript. */
115
110
  "jsdoc/no-undefined-types": "off",
116
111
  /**
@@ -144,26 +139,16 @@ export const baseJSDoc = defineConfig({
144
139
  {
145
140
  contexts: [
146
141
  {
147
- context: "FunctionDeclaration",
148
142
  comment: 'JsdocBlock:has(JsdocTag[tag="param"])',
143
+ context: "FunctionDeclaration",
149
144
  },
150
145
  ],
151
146
  },
152
147
  ],
153
148
  /** The `contexts` option is set to `any` to make the rule stricter. */
154
- "jsdoc/require-param-description": [
155
- "error",
156
- {
157
- contexts: ["any"],
158
- },
159
- ],
149
+ "jsdoc/require-param-description": ["error", { contexts: ["any"] }],
160
150
  /** The `contexts` option is set to `any` to make the rule stricter. */
161
- "jsdoc/require-param-name": [
162
- "error",
163
- {
164
- contexts: ["any"],
165
- },
166
- ],
151
+ "jsdoc/require-param-name": ["error", { contexts: ["any"] }],
167
152
  /** Disabled because it is not needed in TypeScript. */
168
153
  "jsdoc/require-param-type": "off",
169
154
  /** Disabled because it is not needed in TypeScript. */
@@ -179,12 +164,7 @@ export const baseJSDoc = defineConfig({
179
164
  /** Disabled because it is overboard for every function to document every return value. */
180
165
  "jsdoc/require-returns-check": "off",
181
166
  /** The `contexts` option is set to `any` to make the rule stricter. */
182
- "jsdoc/require-returns-description": [
183
- "error",
184
- {
185
- contexts: ["any"],
186
- },
187
- ],
167
+ "jsdoc/require-returns-description": ["error", { contexts: ["any"] }],
188
168
  /** Disabled because it is not needed in TypeScript. */
189
169
  "jsdoc/require-returns-type": "off",
190
170
  /** Disabled since it is expected to be configured with project-specific keywords. */
@@ -210,7 +190,7 @@ export const baseJSDoc = defineConfig({
210
190
  /** Superseded by the `complete/format-jsdoc-comments` rule. */
211
191
  "jsdoc/tag-lines": "off",
212
192
  /**
213
- * Disabled since it is only useful in certain environments (e.g. when your project converts
193
+ * Disabled since it is only useful in certain environments (e.g., when your project converts
214
194
  * JSDoc comments to Markdown).
215
195
  */
216
196
  "jsdoc/text-escaping": "off",
@@ -1 +1 @@
1
- {"version":3,"file":"base-stylistic.d.ts","sourceRoot":"","sources":["../../../src/base/base-stylistic.js"],"names":[],"mappings":"AAGA;;;GAGG;AACH,6DAiDG"}
1
+ {"version":3,"file":"base-stylistic.d.ts","sourceRoot":"","sources":["../../../src/base/base-stylistic.js"],"names":[],"mappings":"AAGA;;;GAGG;AACH,6DA6CG"}
@@ -13,14 +13,16 @@ export const baseStylistic = defineConfig({
13
13
  "@stylistic/lines-between-class-members": [
14
14
  "error",
15
15
  "always",
16
- {
17
- exceptAfterSingleLine: true,
18
- },
16
+ { exceptAfterSingleLine: true },
19
17
  ],
20
18
  /** Enforce a blank line between functions. (Prettier does not do this by default.) */
21
19
  "@stylistic/padding-line-between-statements": [
22
20
  "error",
23
- { blankLine: "always", prev: "function", next: "function" },
21
+ {
22
+ blankLine: "always",
23
+ next: "function",
24
+ prev: "function",
25
+ },
24
26
  ],
25
27
  /**
26
28
  * We forbid unnecessary backticks by using the options specified in [the
@@ -31,8 +33,8 @@ export const baseStylistic = defineConfig({
31
33
  "error",
32
34
  "double",
33
35
  {
34
- avoidEscape: true,
35
36
  allowTemplateLiterals: "never",
37
+ avoidEscape: true,
36
38
  },
37
39
  ],
38
40
  /**
@@ -41,12 +43,6 @@ export const baseStylistic = defineConfig({
41
43
  *
42
44
  * The `markers` option is provided to make this rule ignore lines that start with "///".
43
45
  */
44
- "@stylistic/spaced-comment": [
45
- "error",
46
- "always",
47
- {
48
- markers: ["/"],
49
- },
50
- ],
46
+ "@stylistic/spaced-comment": ["error", "always", { markers: ["/"] }],
51
47
  },
52
48
  });
@@ -1 +1 @@
1
- {"version":3,"file":"base-typescript-eslint.d.ts","sourceRoot":"","sources":["../../../src/base/base-typescript-eslint.js"],"names":[],"mappings":"AAGA;;;GAGG;AACH,oEAuiBE"}
1
+ {"version":3,"file":"base-typescript-eslint.d.ts","sourceRoot":"","sources":["../../../src/base/base-typescript-eslint.js"],"names":[],"mappings":"AAGA;;;GAGG;AACH,oEAohBE"}
@@ -5,9 +5,10 @@ import tseslint from "typescript-eslint";
5
5
  * https://typescript-eslint.io/rules/
6
6
  */
7
7
  export const baseTypeScriptESLint = defineConfig({
8
- plugins: {
9
- "@typescript-eslint": tseslint.plugin,
10
- },
8
+ // Rules that require type information will throw an error on ".json" files. (This is needed
9
+ // when using `eslint-plugin-package-json`. Even though this config does not currently use the
10
+ // plugin, we include it here defensively.)
11
+ ignores: ["**/*.json", "**/*.jsonc", "**/*.code-workspace"],
11
12
  // We need to provide some special configuration to ESLint in order for it to parse TypeScript
12
13
  // files. From:
13
14
  // https://typescript-eslint.io/packages/typescript-eslint/#advanced-usage
@@ -34,18 +35,16 @@ export const baseTypeScriptESLint = defineConfig({
34
35
  },
35
36
  },
36
37
  },
38
+ plugins: {
39
+ "@typescript-eslint": tseslint.plugin,
40
+ },
37
41
  rules: {
38
42
  "@typescript-eslint/adjacent-overload-signatures": "error",
39
43
  /**
40
44
  * The default value is `array`. We choose `array-simple` because it makes complicated arrays
41
45
  * easier to understand. This is worth the cost of deviating from the base rule configuration.
42
46
  */
43
- "@typescript-eslint/array-type": [
44
- "error",
45
- {
46
- default: "array-simple",
47
- },
48
- ],
47
+ "@typescript-eslint/array-type": ["error", { default: "array-simple" }],
49
48
  "@typescript-eslint/await-thenable": "error",
50
49
  "@typescript-eslint/ban-ts-comment": "error",
51
50
  "@typescript-eslint/ban-tslint-comment": "error",
@@ -104,23 +103,23 @@ export const baseTypeScriptESLint = defineConfig({
104
103
  // Allow camelCase variables (23.2), PascalCase variables (23.8), and UPPER_CASE variables
105
104
  // (23.10).
106
105
  {
107
- selector: "variable",
108
106
  format: ["camelCase", "PascalCase", "UPPER_CASE"],
109
107
  leadingUnderscore: "allow",
108
+ selector: "variable",
110
109
  },
111
110
  // Allow camelCase functions (23.2), and PascalCase functions (23.8).
112
111
  {
113
- selector: "function",
114
112
  format: ["camelCase", "PascalCase"],
115
113
  leadingUnderscore: "allow",
114
+ selector: "function",
116
115
  },
117
116
  // Airbnb recommends PascalCase for classes (23.3), and although Airbnb does not make
118
117
  // TypeScript recommendations, we are assuming this rule would similarly apply to anything
119
118
  // "type like", including interfaces, type aliases, and enums.
120
119
  {
121
- selector: "typeLike",
122
120
  format: ["PascalCase"],
123
121
  leadingUnderscore: "allow",
122
+ selector: "typeLike",
124
123
  },
125
124
  ],
126
125
  "@typescript-eslint/no-array-constructor": "error",
@@ -146,9 +145,7 @@ export const baseTypeScriptESLint = defineConfig({
146
145
  */
147
146
  "@typescript-eslint/no-empty-interface": [
148
147
  "error",
149
- {
150
- allowSingleExtends: true,
151
- },
148
+ { allowSingleExtends: true },
152
149
  ],
153
150
  "@typescript-eslint/no-empty-object-type": "error",
154
151
  "@typescript-eslint/no-explicit-any": "error",
@@ -161,9 +158,7 @@ export const baseTypeScriptESLint = defineConfig({
161
158
  */
162
159
  "@typescript-eslint/no-floating-promises": [
163
160
  "error",
164
- {
165
- ignoreVoid: false,
166
- },
161
+ { ignoreVoid: false },
167
162
  ],
168
163
  "@typescript-eslint/no-for-in-array": "error",
169
164
  "@typescript-eslint/no-implied-eval": "error",
@@ -172,9 +167,7 @@ export const baseTypeScriptESLint = defineConfig({
172
167
  /** The `capIsConstructor` option is disabled to make the rule stricter. */
173
168
  "@typescript-eslint/no-invalid-this": [
174
169
  "error",
175
- {
176
- capIsConstructor: false,
177
- },
170
+ { capIsConstructor: false },
178
171
  ],
179
172
  "@typescript-eslint/no-invalid-void-type": "error",
180
173
  "@typescript-eslint/no-loop-func": "error",
@@ -276,9 +269,7 @@ export const baseTypeScriptESLint = defineConfig({
276
269
  */
277
270
  "@typescript-eslint/no-unused-expressions": [
278
271
  "error",
279
- {
280
- allowTaggedTemplates: true,
281
- },
272
+ { allowTaggedTemplates: true },
282
273
  ],
283
274
  "@typescript-eslint/no-unused-private-class-members": "error",
284
275
  /**
@@ -312,20 +303,18 @@ export const baseTypeScriptESLint = defineConfig({
312
303
  "@typescript-eslint/prefer-destructuring": [
313
304
  "error",
314
305
  {
315
- VariableDeclarator: {
306
+ AssignmentExpression: {
316
307
  array: false,
317
308
  object: true,
318
309
  },
319
- AssignmentExpression: {
310
+ VariableDeclarator: {
320
311
  array: false,
321
312
  object: true,
322
313
  },
323
314
  },
324
- {
325
- // We disable this for renamed properties, since code like the following should be valid:
326
- // `const someSpecificMyEnum = MyEnum.Value1;`
327
- enforceForRenamedProperties: false,
328
- },
315
+ // We disable this for renamed properties, since code like the following should be valid:
316
+ // `const someSpecificMyEnum = MyEnum.Value1;`
317
+ { enforceForRenamedProperties: false },
329
318
  ],
330
319
  "@typescript-eslint/prefer-enum-initializers": "error",
331
320
  "@typescript-eslint/prefer-find": "error",
@@ -344,9 +333,7 @@ export const baseTypeScriptESLint = defineConfig({
344
333
  /** The `allowEmptyReject` option is enabled since this is a common pattern. */
345
334
  "@typescript-eslint/prefer-promise-reject-errors": [
346
335
  "error",
347
- {
348
- allowEmptyReject: true,
349
- },
336
+ { allowEmptyReject: true },
350
337
  ],
351
338
  "@typescript-eslint/prefer-readonly": "error",
352
339
  /** Superseded by the `complete/prefer-readonly-parameter-types` rule. */
@@ -391,15 +378,15 @@ export const baseTypeScriptESLint = defineConfig({
391
378
  "@typescript-eslint/strict-boolean-expressions": [
392
379
  "error",
393
380
  {
394
- allowString: false,
395
- allowNumber: false,
396
- allowNullableObject: true,
381
+ allowAny: false,
397
382
  allowNullableBoolean: false,
398
- allowNullableString: false,
399
- allowNullableNumber: false,
400
383
  allowNullableEnum: false,
401
- allowAny: false,
384
+ allowNullableNumber: false,
385
+ allowNullableObject: true,
386
+ allowNullableString: false,
387
+ allowNumber: false,
402
388
  allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing: false,
389
+ allowString: false,
403
390
  },
404
391
  ],
405
392
  "@typescript-eslint/strict-void-return": "error",
@@ -413,8 +400,8 @@ export const baseTypeScriptESLint = defineConfig({
413
400
  "error",
414
401
  {
415
402
  allowDefaultCaseForExhaustiveSwitch: false,
416
- requireDefaultForNonUnion: true,
417
403
  considerDefaultExhaustiveForUnions: true,
404
+ requireDefaultForNonUnion: true,
418
405
  },
419
406
  ],
420
407
  "@typescript-eslint/triple-slash-reference": "error",
@@ -428,15 +415,9 @@ export const baseTypeScriptESLint = defineConfig({
428
415
  "@typescript-eslint/unified-signatures": "error",
429
416
  "@typescript-eslint/use-unknown-in-catch-callback-variable": "error",
430
417
  },
431
- // Rules that require type information will throw an error on ".json" files. (This is needed
432
- // when using `eslint-plugin-package-json`. Even though this config does not currently use the
433
- // plugin, we include it here defensively.)
434
- ignores: ["**/*.json", "**/*.jsonc", "**/*.code-workspace"],
435
418
  },
436
419
  // Enable linting on TypeScript file extensions.
437
- {
438
- files: ["**/*.ts", "**/*.tsx", "**/*.mts", "**/*.cts"],
439
- },
420
+ { files: ["**/*.ts", "**/*.tsx", "**/*.mts", "**/*.cts"] },
440
421
  // Disable some TypeScript-specific rules in JavaScript files.
441
422
  {
442
423
  files: ["**/*.js", "**/*.cjs", "**/*.mjs", "**/*.jsx"],
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/base.js"],"names":[],"mappings":"AAYA;;;;;GAKG;AACH,kEAmCE"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/base.js"],"names":[],"mappings":"AAYA;;;;;GAKG;AACH,kEAiCE"}
package/dist/src/base.js CHANGED
@@ -29,9 +29,7 @@ export const completeConfigBase = defineConfig(
29
29
  // We also want to ignore:
30
30
  // - The "dist" directory, since it is the idiomatic place for compiled output in TypeScript.
31
31
  // - Minified JavaScript files.
32
- {
33
- ignores: ["**/dist/", "*.min.js"],
34
- },
32
+ { ignores: ["**/dist/", "*.min.js"] },
35
33
  // By default, ESLint will warn on unused disable directives, but since warnings will still result
36
34
  // in a 0 exit code, we need to set this to "error".
37
35
  {
@@ -1 +1 @@
1
- {"version":3,"file":"eslint-plugin.d.ts","sourceRoot":"","sources":["../../src/eslint-plugin.js"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,0EA4DG"}
1
+ {"version":3,"file":"eslint-plugin.d.ts","sourceRoot":"","sources":["../../src/eslint-plugin.js"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,0EA0DG"}
@@ -45,9 +45,7 @@ export const completeConfigESLintPlugin = defineConfig({
45
45
  */
46
46
  "eslint-plugin/require-meta-docs-description": [
47
47
  "error",
48
- {
49
- pattern: "^(Enforce|Require|Disallow)",
50
- },
48
+ { pattern: "^(Enforce|Require|Disallow)" },
51
49
  ],
52
50
  "eslint-plugin/require-meta-docs-recommended": "error",
53
51
  /** Disabled since this is automatically handled by the `createRule` helper function. */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eslint-config-complete",
3
- "version": "4.16.0",
3
+ "version": "4.18.0",
4
4
  "description": "A sharable ESLint config for TypeScript projects.",
5
5
  "keywords": [
6
6
  "eslint",
@@ -35,7 +35,7 @@
35
35
  "@stylistic/eslint-plugin": "5.10.0",
36
36
  "confusing-browser-globals": "1.0.11",
37
37
  "eslint-import-resolver-typescript": "4.4.5",
38
- "eslint-plugin-complete": "1.8.0",
38
+ "eslint-plugin-complete": "1.10.0",
39
39
  "eslint-plugin-eslint-plugin": "7.4.0",
40
40
  "eslint-plugin-import-x": "4.16.2",
41
41
  "eslint-plugin-jsdoc": "63.0.7",
@@ -52,7 +52,7 @@
52
52
  "@typescript-eslint/typescript-estree": "8.61.1",
53
53
  "@typescript-eslint/utils": "8.61.1",
54
54
  "complete-common": "2.29.0",
55
- "complete-node": "17.0.0",
55
+ "complete-node": "18.0.0",
56
56
  "eslint-config-prettier": "10.1.8",
57
57
  "typescript": "6.0.3"
58
58
  },