@egy186/eslint-config 3.5.0 → 3.6.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/dist/base.d.ts CHANGED
@@ -155,7 +155,7 @@ declare const config: {
155
155
  rules: import("@stylistic/eslint-plugin").Rules;
156
156
  configs: import("eslint").ESLint.Plugin["configs"] & import("@stylistic/eslint-plugin").Configs;
157
157
  };
158
- readonly import: import("eslint").ESLint.Plugin & {
158
+ readonly import: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
159
159
  meta: {
160
160
  name: string;
161
161
  version: string;
@@ -184,10 +184,10 @@ declare const config: {
184
184
  [key: string]: import("eslint").Rule.RuleModule;
185
185
  };
186
186
  };
187
- readonly jsdoc: import("eslint").ESLint.Plugin & {
187
+ readonly jsdoc: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
188
188
  configs: Record<`flat/${import("eslint-plugin-jsdoc").ConfigGroups}${import("eslint-plugin-jsdoc").ConfigVariants}${import("eslint-plugin-jsdoc").ErrorLevelVariants}`, import("eslint").Linter.Config> & Record<"examples" | "default-expressions" | "examples-and-default-expressions", import("eslint").Linter.Config[]> & Record<"flat/recommended-mixed", import("eslint").Linter.Config[]>;
189
189
  };
190
- readonly n: import("eslint").ESLint.Plugin & {
190
+ readonly n: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
191
191
  configs: nPlugin.Configs;
192
192
  };
193
193
  };
@@ -217,6 +217,7 @@ declare const config: {
217
217
  readonly '@stylistic/curly-newline': ["error", "always"];
218
218
  readonly '@stylistic/dot-location': ["error", "property"];
219
219
  readonly '@stylistic/eol-last': "error";
220
+ readonly '@stylistic/exp-list-style': "off";
220
221
  readonly '@stylistic/function-call-argument-newline': ["error", "consistent"];
221
222
  readonly '@stylistic/function-call-spacing': ["error", "never"];
222
223
  readonly '@stylistic/function-paren-newline': ["error", "multiline"];
@@ -450,7 +451,13 @@ declare const config: {
450
451
  readonly 'jsdoc/text-escaping': ["error", {
451
452
  readonly escapeHTML: true;
452
453
  }];
453
- readonly 'jsdoc/type-formatting': "error";
454
+ readonly 'jsdoc/ts-method-signature-style': "error";
455
+ readonly 'jsdoc/ts-no-empty-object-type': "error";
456
+ readonly 'jsdoc/ts-no-unnecessary-template-expression': "error";
457
+ readonly 'jsdoc/ts-prefer-function-type': "error";
458
+ readonly 'jsdoc/type-formatting': ["error", {
459
+ readonly stringQuotes: "single";
460
+ }];
454
461
  readonly 'jsdoc/valid-types': "error";
455
462
  readonly 'import/consistent-type-specifier-style': "error";
456
463
  readonly 'import/default': "error";
package/dist/browser.d.ts CHANGED
@@ -1260,6 +1260,7 @@ declare const config: {
1260
1260
  readonly '@stylistic/curly-newline': ["error", "always"];
1261
1261
  readonly '@stylistic/dot-location': ["error", "property"];
1262
1262
  readonly '@stylistic/eol-last': "error";
1263
+ readonly '@stylistic/exp-list-style': "off";
1263
1264
  readonly '@stylistic/function-call-argument-newline': ["error", "consistent"];
1264
1265
  readonly '@stylistic/function-call-spacing': ["error", "never"];
1265
1266
  readonly '@stylistic/function-paren-newline': ["error", "multiline"];
@@ -1490,7 +1491,13 @@ declare const config: {
1490
1491
  readonly 'jsdoc/text-escaping': ["error", {
1491
1492
  readonly escapeHTML: true;
1492
1493
  }];
1493
- readonly 'jsdoc/type-formatting': "error";
1494
+ readonly 'jsdoc/ts-method-signature-style': "error";
1495
+ readonly 'jsdoc/ts-no-empty-object-type': "error";
1496
+ readonly 'jsdoc/ts-no-unnecessary-template-expression': "error";
1497
+ readonly 'jsdoc/ts-prefer-function-type': "error";
1498
+ readonly 'jsdoc/type-formatting': ["error", {
1499
+ readonly stringQuotes: "single";
1500
+ }];
1494
1501
  readonly 'jsdoc/valid-types': "error";
1495
1502
  readonly 'import/consistent-type-specifier-style': "error";
1496
1503
  readonly 'import/default': "error";
@@ -1771,7 +1778,7 @@ declare const config: {
1771
1778
  rules: import("@stylistic/eslint-plugin").Rules;
1772
1779
  configs: import("eslint").ESLint.Plugin["configs"] & import("@stylistic/eslint-plugin").Configs;
1773
1780
  };
1774
- readonly import: import("eslint").ESLint.Plugin & {
1781
+ readonly import: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
1775
1782
  meta: {
1776
1783
  name: string;
1777
1784
  version: string;
@@ -1800,10 +1807,10 @@ declare const config: {
1800
1807
  [key: string]: import("eslint").Rule.RuleModule;
1801
1808
  };
1802
1809
  };
1803
- readonly jsdoc: import("eslint").ESLint.Plugin & {
1810
+ readonly jsdoc: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
1804
1811
  configs: Record<`flat/${import("eslint-plugin-jsdoc").ConfigGroups}${import("eslint-plugin-jsdoc").ConfigVariants}${import("eslint-plugin-jsdoc").ErrorLevelVariants}`, import("eslint").Linter.Config> & Record<"examples" | "default-expressions" | "examples-and-default-expressions", import("eslint").Linter.Config[]> & Record<"flat/recommended-mixed", import("eslint").Linter.Config[]>;
1805
1812
  };
1806
- readonly n: import("eslint").ESLint.Plugin & {
1813
+ readonly n: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
1807
1814
  configs: import("eslint-plugin-n").Configs;
1808
1815
  };
1809
1816
  };
@@ -171,6 +171,7 @@ declare const config: {
171
171
  readonly '@stylistic/curly-newline': ["error", "always"];
172
172
  readonly '@stylistic/dot-location': ["error", "property"];
173
173
  readonly '@stylistic/eol-last': "error";
174
+ readonly '@stylistic/exp-list-style': "off";
174
175
  readonly '@stylistic/function-call-argument-newline': ["error", "consistent"];
175
176
  readonly '@stylistic/function-call-spacing': ["error", "never"];
176
177
  readonly '@stylistic/function-paren-newline': ["error", "multiline"];
@@ -404,7 +405,13 @@ declare const config: {
404
405
  readonly 'jsdoc/text-escaping': ["error", {
405
406
  readonly escapeHTML: true;
406
407
  }];
407
- readonly 'jsdoc/type-formatting': "error";
408
+ readonly 'jsdoc/ts-method-signature-style': "error";
409
+ readonly 'jsdoc/ts-no-empty-object-type': "error";
410
+ readonly 'jsdoc/ts-no-unnecessary-template-expression': "error";
411
+ readonly 'jsdoc/ts-prefer-function-type': "error";
412
+ readonly 'jsdoc/type-formatting': ["error", {
413
+ readonly stringQuotes: "single";
414
+ }];
408
415
  readonly 'jsdoc/valid-types': "error";
409
416
  readonly 'import/consistent-type-specifier-style': "error";
410
417
  readonly 'import/default': "error";
@@ -685,7 +692,7 @@ declare const config: {
685
692
  rules: import("@stylistic/eslint-plugin").Rules;
686
693
  configs: import("eslint").ESLint.Plugin["configs"] & import("@stylistic/eslint-plugin").Configs;
687
694
  };
688
- readonly import: import("eslint").ESLint.Plugin & {
695
+ readonly import: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
689
696
  meta: {
690
697
  name: string;
691
698
  version: string;
@@ -714,10 +721,10 @@ declare const config: {
714
721
  [key: string]: import("eslint").Rule.RuleModule;
715
722
  };
716
723
  };
717
- readonly jsdoc: import("eslint").ESLint.Plugin & {
724
+ readonly jsdoc: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
718
725
  configs: Record<`flat/${import("eslint-plugin-jsdoc").ConfigGroups}${import("eslint-plugin-jsdoc").ConfigVariants}${import("eslint-plugin-jsdoc").ErrorLevelVariants}`, import("eslint").Linter.Config> & Record<"examples" | "default-expressions" | "examples-and-default-expressions", import("eslint").Linter.Config[]> & Record<"flat/recommended-mixed", import("eslint").Linter.Config[]>;
719
726
  };
720
- readonly n: import("eslint").ESLint.Plugin & {
727
+ readonly n: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
721
728
  configs: import("eslint-plugin-n").Configs;
722
729
  };
723
730
  };
package/dist/jest.d.ts CHANGED
@@ -1,4 +1,7 @@
1
1
  import type { Linter } from 'eslint';
2
+ /**
3
+ * @deprecated Use `@egy186/eslint-config/vitest` instead.
4
+ */
2
5
  declare const config: {
3
6
  readonly files: ["**/*.{spec,test}.{js,jsx,mjs,cjs}", "**/*.{spec,test}.{ts,tsx,mts,cts}"];
4
7
  readonly languageOptions: {
package/dist/jest.js CHANGED
@@ -1,5 +1,9 @@
1
1
  import globals from 'globals';
2
2
  import jest from 'eslint-plugin-jest';
3
+ process.emitWarning('`@egy186/eslint-config/jest` is deprecated. Use `@egy186/eslint-config/vitest` instead.', { type: 'DeprecationWarning' });
4
+ /**
5
+ * @deprecated Use `@egy186/eslint-config/vitest` instead.
6
+ */
3
7
  const config = {
4
8
  files: ['**/*.{spec,test}.{js,jsx,mjs,cjs}', '**/*.{spec,test}.{ts,tsx,mts,cts}'],
5
9
  languageOptions: {
@@ -76,5 +80,7 @@ const config = {
76
80
  'max-statements': 'off'
77
81
  }
78
82
  };
83
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
79
84
  export { config as jest };
85
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
80
86
  export default config;
package/dist/react.d.ts CHANGED
@@ -1,5 +1,5 @@
1
+ import type { ESLint } from 'eslint';
1
2
  import react from 'eslint-plugin-react';
2
- import reactHooksPlugin from 'eslint-plugin-react-hooks';
3
3
  declare const config: {
4
4
  readonly files: ["**/*.{jsx,tsx}"];
5
5
  readonly languageOptions: {
@@ -282,7 +282,7 @@ declare const config: {
282
282
  flat: Record<string, react.ReactFlatConfig>;
283
283
  };
284
284
  };
285
- readonly 'react-hooks': typeof reactHooksPlugin;
285
+ readonly 'react-hooks': ESLint.Plugin;
286
286
  };
287
287
  readonly rules: {
288
288
  readonly 'react-hooks/automatic-effect-dependencies': "off";
@@ -313,6 +313,7 @@ declare const config: {
313
313
  readonly 'react-hooks/todo': "off";
314
314
  readonly 'react-hooks/unsupported-syntax': "error";
315
315
  readonly 'react-hooks/use-memo': "error";
316
+ readonly 'react-hooks/void-use-memo': "error";
316
317
  readonly 'react/boolean-prop-naming': "error";
317
318
  readonly 'react/button-has-type': "error";
318
319
  readonly 'react/checked-requires-onchange-or-readonly': "error";
package/dist/react.js CHANGED
@@ -41,6 +41,7 @@ const config = {
41
41
  'react-hooks/todo': 'off',
42
42
  'react-hooks/unsupported-syntax': 'error',
43
43
  'react-hooks/use-memo': 'error',
44
+ 'react-hooks/void-use-memo': 'error',
44
45
  'react/boolean-prop-naming': 'error',
45
46
  'react/button-has-type': 'error',
46
47
  'react/checked-requires-onchange-or-readonly': 'error',
@@ -73,7 +73,13 @@ declare const rules: {
73
73
  readonly 'jsdoc/text-escaping': ["error", {
74
74
  readonly escapeHTML: true;
75
75
  }];
76
- readonly 'jsdoc/type-formatting': "error";
76
+ readonly 'jsdoc/ts-method-signature-style': "error";
77
+ readonly 'jsdoc/ts-no-empty-object-type': "error";
78
+ readonly 'jsdoc/ts-no-unnecessary-template-expression': "error";
79
+ readonly 'jsdoc/ts-prefer-function-type': "error";
80
+ readonly 'jsdoc/type-formatting': ["error", {
81
+ readonly stringQuotes: "single";
82
+ }];
77
83
  readonly 'jsdoc/valid-types': "error";
78
84
  };
79
85
  export default rules;
@@ -71,7 +71,11 @@ const rules = {
71
71
  { startLines: 1 }
72
72
  ],
73
73
  'jsdoc/text-escaping': ['error', { escapeHTML: true }],
74
- 'jsdoc/type-formatting': 'error',
74
+ 'jsdoc/ts-method-signature-style': 'error',
75
+ 'jsdoc/ts-no-empty-object-type': 'error',
76
+ 'jsdoc/ts-no-unnecessary-template-expression': 'error',
77
+ 'jsdoc/ts-prefer-function-type': 'error',
78
+ 'jsdoc/type-formatting': ['error', { stringQuotes: 'single' }],
75
79
  'jsdoc/valid-types': 'error'
76
80
  };
77
81
  export default rules;
@@ -24,6 +24,7 @@ declare const rules: {
24
24
  readonly '@stylistic/curly-newline': ["error", "always"];
25
25
  readonly '@stylistic/dot-location': ["error", "property"];
26
26
  readonly '@stylistic/eol-last': "error";
27
+ readonly '@stylistic/exp-list-style': "off";
27
28
  readonly '@stylistic/function-call-argument-newline': ["error", "consistent"];
28
29
  readonly '@stylistic/function-call-spacing': ["error", "never"];
29
30
  readonly '@stylistic/function-paren-newline': ["error", "multiline"];
@@ -36,6 +36,7 @@ const rules = {
36
36
  '@stylistic/curly-newline': ['error', 'always'],
37
37
  '@stylistic/dot-location': ['error', 'property'],
38
38
  '@stylistic/eol-last': 'error',
39
+ '@stylistic/exp-list-style': 'off',
39
40
  '@stylistic/function-call-argument-newline': ['error', 'consistent'],
40
41
  '@stylistic/function-call-spacing': ['error', 'never'],
41
42
  '@stylistic/function-paren-newline': ['error', 'multiline'],
package/package.json CHANGED
@@ -1,31 +1,31 @@
1
1
  {
2
2
  "name": "@egy186/eslint-config",
3
3
  "description": "Eslint shareable config",
4
- "version": "3.5.0",
4
+ "version": "3.6.2",
5
5
  "author": "egy186",
6
6
  "bugs": {
7
7
  "url": "https://github.com/egy186/eslint-config/issues"
8
8
  },
9
9
  "dependencies": {
10
- "@stylistic/eslint-plugin": "~5.4.0",
10
+ "@stylistic/eslint-plugin": "~5.5.0",
11
11
  "eslint-plugin-import": "~2.32.0",
12
- "eslint-plugin-jsdoc": "~60.8.0",
12
+ "eslint-plugin-jsdoc": "~61.1.4",
13
13
  "eslint-plugin-n": "~17.23.1",
14
14
  "globals": "^16.4.0"
15
15
  },
16
16
  "devDependencies": {
17
- "@eslint/js": "~9.37.0",
18
- "@types/node": "^24.6.2",
19
- "@vitest/eslint-plugin": "~1.3.15",
20
- "eslint": "~9.37.0",
17
+ "@eslint/js": "~9.38.0",
18
+ "@types/node": "^24.8.1",
19
+ "@vitest/eslint-plugin": "~1.3.23",
20
+ "eslint": "~9.38.0",
21
21
  "eslint-import-resolver-typescript": "~4.4.4",
22
22
  "eslint-plugin-jest": "~29.0.1",
23
23
  "eslint-plugin-react": "~7.37.5",
24
- "eslint-plugin-react-hooks": "~6.1.1",
24
+ "eslint-plugin-react-hooks": "~7.0.0",
25
25
  "husky": "^9.1.7",
26
26
  "jiti": "^2.6.1",
27
27
  "typescript": "~5.9.3",
28
- "typescript-eslint": "~8.45.0"
28
+ "typescript-eslint": "~8.46.1"
29
29
  },
30
30
  "engines": {
31
31
  "node": ">=20.19.2"
@@ -71,7 +71,7 @@
71
71
  "eslint-import-resolver-typescript": "^4.2.2",
72
72
  "eslint-plugin-jest": "^29.0.1",
73
73
  "eslint-plugin-react": "^7.36.1",
74
- "eslint-plugin-react-hooks": "^6.1.1",
74
+ "eslint-plugin-react-hooks": "^7.0.0",
75
75
  "typescript": "^5.0.4",
76
76
  "typescript-eslint": "^8.32.0"
77
77
  },