@jimmy.codes/eslint-config 6.9.0 → 6.11.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.
package/dist/index.js CHANGED
@@ -194,9 +194,13 @@ const javascriptConfig = () => {
194
194
  const jsdocRules = () => {
195
195
  return {
196
196
  ...jsdocPlugin.configs["flat/recommended-typescript-error"].rules,
197
+ "jsdoc/prefer-import-tag": "error",
197
198
  "jsdoc/require-jsdoc": "off",
199
+ "jsdoc/require-next-description": "error",
198
200
  "jsdoc/require-param": "off",
199
201
  "jsdoc/require-returns": "off",
202
+ "jsdoc/require-throws-description": "error",
203
+ "jsdoc/require-yields-description": "error",
200
204
  "jsdoc/tag-lines": [
201
205
  "error",
202
206
  "always",
@@ -479,13 +483,13 @@ const defineConfig = async ({ astro = false, autoDetect = true, gitignore = fals
479
483
  ];
480
484
  const featureConfigs = await Promise.all([
481
485
  isTypescriptEnabled && unwrap(import("./typescript-D8AT5dEv.js")),
482
- isReactEnabled && unwrap(import("./react-DD9VDtyi.js")),
486
+ isReactEnabled && unwrap(import("./react-ChUgu27j.js")),
483
487
  isTanstackQueryEnabled && unwrap(import("./tanstack-query-DqqVfxJs.js")),
484
488
  isAstroEnabled && unwrap(import("./astro-Cc3Rxusf.js")),
485
489
  isJestEnabled && unwrap(import("./jest-G-dRTY_j.js")),
486
- isVitestEnabled && unwrap(import("./vitest-C38KvCT7.js")),
490
+ isVitestEnabled && unwrap(import("./vitest-Bl4MomP6.js")),
487
491
  isTestingLibraryEnabled && unwrap(import("./testing-library-lJsmjyFo.js")),
488
- isPlaywrightEnabled && unwrap(import("./playwright-ywSmTTAR.js")),
492
+ isPlaywrightEnabled && unwrap(import("./playwright-Bbcb5Jsi.js")),
489
493
  isStorybookEnabled && unwrap(import("./storybook-BO4plVPp.js")),
490
494
  isNextjsEnabled && unwrap(import("./nextjs-X6g9xH_I.js"))
491
495
  ]);
@@ -3,11 +3,11 @@ import { interopDefault } from "./interop-default-D4l3hsYQ.js";
3
3
 
4
4
  //#region src/rules/playwright.ts
5
5
  const playwrightRules = async () => {
6
- const playwrightPlugin = await interopDefault(import("eslint-plugin-playwright"));
7
6
  return {
8
- ...playwrightPlugin.configs["flat/recommended"].rules,
7
+ ...(await interopDefault(import("eslint-plugin-playwright"))).configs["flat/recommended"].rules,
9
8
  "playwright/expect-expect": "error",
10
9
  "playwright/max-nested-describe": "error",
10
+ "playwright/no-commented-out-tests": "error",
11
11
  "playwright/no-conditional-expect": "error",
12
12
  "playwright/no-conditional-in-test": "error",
13
13
  "playwright/no-element-handle": "error",
@@ -34,9 +34,8 @@ const playwrightRules = async () => {
34
34
  //#endregion
35
35
  //#region src/configs/playwright.ts
36
36
  async function playwrightConfig() {
37
- const playwrightPlugin = await interopDefault(import("eslint-plugin-playwright"));
38
37
  return [{
39
- ...playwrightPlugin.configs["flat/recommended"],
38
+ ...(await interopDefault(import("eslint-plugin-playwright"))).configs["flat/recommended"],
40
39
  files: GLOB_PLAYWRIGHT,
41
40
  name: "jimmy.codes/playwright",
42
41
  rules: await playwrightRules()
@@ -24,14 +24,12 @@ const reactRules = async () => {
24
24
  const [{ configs: reactConfigs }, jsxA11yPlugin] = await Promise.all([interopDefault(import("@eslint-react/eslint-plugin")), interopDefault(import("eslint-plugin-jsx-a11y"))]);
25
25
  const isUsingNextjs = hasNext();
26
26
  const isUsingVite = hasVite();
27
- const isUsingTypesScript = hasTypescript();
28
- const reactPluginRules = isUsingTypesScript ? reactConfigs["recommended-type-checked"].rules : reactConfigs.recommended.rules;
27
+ const reactPluginRules = hasTypescript() ? reactConfigs["recommended-type-checked"].rules : reactConfigs.recommended.rules;
29
28
  return {
30
29
  ...jsxA11yPlugin.flatConfigs.recommended.rules,
31
30
  ...upwarn(reactPluginRules),
32
31
  "@eslint-react/dom/no-string-style-prop": "error",
33
32
  "@eslint-react/hooks-extra/no-direct-set-state-in-use-effect": "error",
34
- "@eslint-react/hooks-extra/no-direct-set-state-in-use-layout-effect": "error",
35
33
  "@eslint-react/jsx-key-before-spread": "error",
36
34
  "@eslint-react/jsx-shorthand-boolean": "error",
37
35
  "@eslint-react/jsx-shorthand-fragment": "error",
@@ -3,9 +3,8 @@ import { interopDefault } from "./interop-default-D4l3hsYQ.js";
3
3
 
4
4
  //#region src/rules/vitest.ts
5
5
  const vitestRules = async () => {
6
- const vitestPlugin = await interopDefault(import("@vitest/eslint-plugin"));
7
6
  return {
8
- ...vitestPlugin.configs.recommended.rules,
7
+ ...(await interopDefault(import("@vitest/eslint-plugin"))).configs.recommended.rules,
9
8
  "vitest/consistent-test-it": ["error", {
10
9
  fn: "test",
11
10
  withinDescribe: "it"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jimmy.codes/eslint-config",
3
- "version": "6.9.0",
3
+ "version": "6.11.0",
4
4
  "description": "A simple, modern ESLint config that covers most use cases.",
5
5
  "keywords": [
6
6
  "eslint",
@@ -40,15 +40,15 @@
40
40
  ],
41
41
  "dependencies": {
42
42
  "@eslint-community/eslint-plugin-eslint-comments": "^4.5.0",
43
- "@eslint-react/eslint-plugin": "2.0.0-next.166",
44
- "@eslint/js": "^9.35.0",
45
- "@next/eslint-plugin-next": "^15.5.2",
46
- "@stylistic/eslint-plugin": "^5.3.1",
47
- "@tanstack/eslint-plugin-query": "^5.86.0",
43
+ "@eslint-react/eslint-plugin": "2.0.0-next.191",
44
+ "@eslint/js": "^9.36.0",
45
+ "@next/eslint-plugin-next": "^15.5.4",
46
+ "@stylistic/eslint-plugin": "^5.4.0",
47
+ "@tanstack/eslint-plugin-query": "^5.90.1",
48
48
  "@types/eslint": "9.6.1",
49
- "@typescript-eslint/parser": "^8.42.0",
50
- "@typescript-eslint/utils": "^8.42.0",
51
- "@vitest/eslint-plugin": "^1.3.9",
49
+ "@typescript-eslint/parser": "^8.44.1",
50
+ "@typescript-eslint/utils": "^8.44.1",
51
+ "@vitest/eslint-plugin": "^1.3.12",
52
52
  "astro-eslint-parser": "^1.2.2",
53
53
  "eslint-config-flat-gitignore": "^2.1.0",
54
54
  "eslint-config-prettier": "^10.1.8",
@@ -57,21 +57,21 @@
57
57
  "eslint-plugin-import-x": "^4.16.1",
58
58
  "eslint-plugin-jest": "^29.0.1",
59
59
  "eslint-plugin-jest-dom": "^5.5.0",
60
- "eslint-plugin-jsdoc": "^54.4.0",
60
+ "eslint-plugin-jsdoc": "^60.2.0",
61
61
  "eslint-plugin-jsx-a11y": "^6.10.2",
62
- "eslint-plugin-n": "^17.21.3",
62
+ "eslint-plugin-n": "^17.23.1",
63
63
  "eslint-plugin-perfectionist": "^4.15.0",
64
64
  "eslint-plugin-playwright": "^2.2.2",
65
65
  "eslint-plugin-react-compiler": "19.1.0-rc.2",
66
66
  "eslint-plugin-react-hooks": "^5.2.0",
67
- "eslint-plugin-react-refresh": "0.4.20",
67
+ "eslint-plugin-react-refresh": "0.4.21",
68
68
  "eslint-plugin-regexp": "^2.10.0",
69
69
  "eslint-plugin-storybook": "0.12.0",
70
- "eslint-plugin-testing-library": "^7.6.8",
71
- "eslint-plugin-unicorn": "^61.0.1",
72
- "globals": "^16.3.0",
70
+ "eslint-plugin-testing-library": "^7.9.1",
71
+ "eslint-plugin-unicorn": "^61.0.2",
72
+ "globals": "^16.4.0",
73
73
  "local-pkg": "^1.1.2",
74
- "typescript-eslint": "^8.42.0"
74
+ "typescript-eslint": "^8.44.1"
75
75
  },
76
76
  "peerDependencies": {
77
77
  "eslint": "^9.10.0"