@kasoa/eslint-config 0.0.3 → 0.0.5

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/README.md CHANGED
@@ -10,7 +10,7 @@ Install ESLint and the config:
10
10
  pnpm add -D @kasoa/eslint-config eslint
11
11
  ```
12
12
 
13
- **Note**: Requires Node.js >=22 and a TypeScript setup.
13
+ **Note**: Requires Node.js >=24 and a TypeScript setup.
14
14
 
15
15
  ## Usage
16
16
 
@@ -1 +1 @@
1
- {"version":3,"file":"eslint.d.ts","sourceRoot":"","sources":["../../src/base/eslint.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,kCAKvB,CAAC"}
1
+ {"version":3,"file":"eslint.d.ts","sourceRoot":"","sources":["../../src/base/eslint.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,kCAMvB,CAAC"}
@@ -3,6 +3,7 @@ import { defineConfig } from "eslint/config";
3
3
  export const eslintConfig = defineConfig(eslint.configs.recommended, {
4
4
  rules: {
5
5
  eqeqeq: "error",
6
+ curly: ["error", "multi-line", "consistent"],
6
7
  "object-shorthand": "error",
7
8
  },
8
9
  });
@@ -1 +1 @@
1
- {"version":3,"file":"import-lite.d.ts","sourceRoot":"","sources":["../../src/base/import-lite.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gBAAgB,kCAQ5B,CAAC"}
1
+ {"version":3,"file":"import-lite.d.ts","sourceRoot":"","sources":["../../src/base/import-lite.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gBAAgB,kCAK3B,CAAC"}
@@ -2,7 +2,7 @@ import { defineConfig } from "eslint/config";
2
2
  import typescriptEslint from "typescript-eslint";
3
3
  export const typescriptEslintConfig = defineConfig(typescriptEslint.configs.strictTypeChecked, typescriptEslint.configs.stylisticTypeChecked, {
4
4
  rules: {
5
+ "@typescript-eslint/no-unused-vars": "off",
5
6
  "@typescript-eslint/consistent-type-imports": "error",
6
- "@typescript-eslint/explicit-module-boundary-types": "error",
7
7
  },
8
8
  });
@@ -1 +1 @@
1
- {"version":3,"file":"unused-imports.d.ts","sourceRoot":"","sources":["../../src/base/unused-imports.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,mBAAmB,kCAiB9B,CAAC"}
1
+ {"version":3,"file":"unused-imports.d.ts","sourceRoot":"","sources":["../../src/base/unused-imports.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,mBAAmB,kCAQ9B,CAAC"}
@@ -1,20 +1,11 @@
1
1
  import unusedImports from "eslint-plugin-unused-imports";
2
2
  import { defineConfig } from "eslint/config";
3
3
  export const unusedImportsConfig = defineConfig({
4
- rules: {
5
- "unused-imports/no-unused-vars": [
6
- "warn",
7
- {
8
- varsIgnorePattern: "^_",
9
- argsIgnorePattern: "^_",
10
- args: "after-used",
11
- vars: "all",
12
- },
13
- ],
14
- "unused-imports/no-unused-imports": "error",
15
- "@typescript-eslint/no-unused-vars": "off",
16
- },
17
4
  plugins: {
18
5
  "unused-imports": unusedImports,
19
6
  },
7
+ rules: {
8
+ "unused-imports/no-unused-vars": "off",
9
+ "unused-imports/no-unused-imports": "error",
10
+ },
20
11
  });
@@ -1 +1 @@
1
- {"version":3,"file":"vitest.d.ts","sourceRoot":"","sources":["../../src/base/vitest.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,YAAY,kCAGvB,CAAC"}
1
+ {"version":3,"file":"vitest.d.ts","sourceRoot":"","sources":["../../src/base/vitest.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,kCAGvB,CAAC"}
@@ -1,9 +1,9 @@
1
1
  import { defineConfig } from "eslint/config";
2
2
  import { base } from "../base/index.js";
3
3
  import { eslintReactConfig } from "./eslint-react.js";
4
- import { jsxA11yXConfig } from "./jsx-a11y-x.js";
4
+ import { jsxA11yConfig } from "./jsx-a11y.js";
5
5
  import { reactCompilerConfig } from "./react-compiler.js";
6
6
  import { reactHooksConfig } from "./react-hooks.js";
7
7
  import { reactRefreshConfig } from "./react-refresh.js";
8
8
  import { reactYouMightNotNeedAnEffectConfig } from "./react-you-might-not-need-an-effect.js";
9
- export const react = defineConfig(base, eslintReactConfig, jsxA11yXConfig, reactHooksConfig, reactRefreshConfig, reactCompilerConfig, reactYouMightNotNeedAnEffectConfig);
9
+ export const react = defineConfig(base, eslintReactConfig, jsxA11yConfig, reactHooksConfig, reactRefreshConfig, reactCompilerConfig, reactYouMightNotNeedAnEffectConfig);
@@ -0,0 +1,2 @@
1
+ export declare const jsxA11yConfig: import("eslint/config").Config[];
2
+ //# sourceMappingURL=jsx-a11y.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsx-a11y.d.ts","sourceRoot":"","sources":["../../src/react/jsx-a11y.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa,kCAA2C,CAAC"}
@@ -0,0 +1,3 @@
1
+ import jsxA11y from "eslint-plugin-jsx-a11y";
2
+ import { defineConfig } from "eslint/config";
3
+ export const jsxA11yConfig = defineConfig(jsxA11y.flatConfigs.strict);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kasoa/eslint-config",
3
- "version": "0.0.3",
3
+ "version": "0.0.5",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "description": "Kasoa's ESLint config",
@@ -32,46 +32,49 @@
32
32
  "./node": "./dist/node/index.js",
33
33
  "./react": "./dist/react/index.js"
34
34
  },
35
+ "publishConfig": {
36
+ "access": "public"
37
+ },
35
38
  "dependencies": {
36
- "@eslint-react/eslint-plugin": "^2.2.2",
39
+ "@eslint-react/eslint-plugin": "^2.2.4",
37
40
  "@eslint/js": "latest",
38
- "@vitest/eslint-plugin": "^1.3.23",
39
- "eslint": "^9.38.0",
41
+ "@vitest/eslint-plugin": "^1.4.0",
42
+ "eslint": "^9.39.0",
40
43
  "eslint-config-flat-gitignore": "^2.1.0",
41
44
  "eslint-config-prettier": "^10.1.8",
42
45
  "eslint-plugin-import-lite": "^0.3.0",
46
+ "eslint-plugin-jsx-a11y": "^6.10.2",
43
47
  "eslint-plugin-jsx-a11y-x": "^0.1.1",
44
48
  "eslint-plugin-n": "^17.23.1",
45
49
  "eslint-plugin-perfectionist": "^4.15.1",
46
50
  "eslint-plugin-react-compiler": "19.1.0-rc.2",
47
- "eslint-plugin-react-hooks": "^7.0.0",
51
+ "eslint-plugin-react-hooks": "^7.0.1",
48
52
  "eslint-plugin-react-refresh": "^0.4.24",
49
- "eslint-plugin-react-you-might-not-need-an-effect": "^0.6.0",
53
+ "eslint-plugin-react-you-might-not-need-an-effect": "^0.7.0",
50
54
  "eslint-plugin-unicorn-x": "^3.2.1",
51
- "eslint-plugin-unused-imports": "^4.2.0",
52
- "globals": "^16.4.0",
53
- "typescript-eslint": "^8.46.1"
55
+ "eslint-plugin-unused-imports": "^4.3.0",
56
+ "globals": "^16.5.0",
57
+ "typescript-eslint": "^8.46.2"
54
58
  },
55
59
  "devDependencies": {
56
- "@types/node": "^24.8.1",
57
- "jiti": "^2.6.1",
60
+ "@types/eslint-plugin-jsx-a11y": "^6.10.1",
61
+ "@types/node": "^24.9.2",
62
+ "@typescript/native-preview": "^7.0.0-dev.20251101.1",
58
63
  "prettier": "^3.6.2",
59
- "typescript": "^5.9.3",
60
64
  "@kasoa/tsconfig": "0.0.0"
61
65
  },
62
66
  "peerDependencies": {
63
67
  "eslint": "^9.35.0"
64
68
  },
65
69
  "engines": {
66
- "node": ">=22.16.0"
70
+ "node": ">=24"
67
71
  },
68
72
  "scripts": {
69
- "dev": "tsc --watch",
70
- "build": "tsc",
71
- "lint": "eslint --fix .",
72
- "format": "prettier --write .",
73
- "typecheck": "tsc --noEmit",
74
- "check:all": "pnpm '/build|typecheck/'",
73
+ "dev": "tsgo --watch",
74
+ "build": "tsgo",
75
+ "lint": "eslint --fix --cache .",
76
+ "format": "prettier --write --cache .",
77
+ "typecheck": "tsgo --noEmit",
75
78
  "test": "echo 'No tests'"
76
79
  }
77
80
  }
@@ -4,6 +4,7 @@ import { defineConfig } from "eslint/config";
4
4
  export const eslintConfig = defineConfig(eslint.configs.recommended, {
5
5
  rules: {
6
6
  eqeqeq: "error",
7
+ curly: ["error", "multi-line", "consistent"],
7
8
  "object-shorthand": "error",
8
9
  },
9
10
  });
@@ -1,12 +1,9 @@
1
1
  import importLite from "eslint-plugin-import-lite";
2
2
  import { defineConfig } from "eslint/config";
3
3
 
4
- export const importLiteConfig = defineConfig(
5
- importLite.configs.recommended as never,
6
- {
7
- rules: {
8
- "import-lite/consistent-type-specifier-style": ["error", "top-level"],
9
- "import-lite/newline-after-import": "error",
10
- },
4
+ export const importLiteConfig = defineConfig(importLite.configs.recommended, {
5
+ rules: {
6
+ "import-lite/consistent-type-specifier-style": ["error", "top-level"],
7
+ "import-lite/newline-after-import": "error",
11
8
  },
12
- );
9
+ });
@@ -6,8 +6,8 @@ export const typescriptEslintConfig = defineConfig(
6
6
  typescriptEslint.configs.stylisticTypeChecked,
7
7
  {
8
8
  rules: {
9
+ "@typescript-eslint/no-unused-vars": "off",
9
10
  "@typescript-eslint/consistent-type-imports": "error",
10
- "@typescript-eslint/explicit-module-boundary-types": "error",
11
11
  },
12
12
  },
13
13
  );
@@ -2,20 +2,11 @@ import unusedImports from "eslint-plugin-unused-imports";
2
2
  import { defineConfig } from "eslint/config";
3
3
 
4
4
  export const unusedImportsConfig = defineConfig({
5
- rules: {
6
- "unused-imports/no-unused-vars": [
7
- "warn",
8
- {
9
- varsIgnorePattern: "^_",
10
- argsIgnorePattern: "^_",
11
- args: "after-used",
12
- vars: "all",
13
- },
14
- ],
15
- "unused-imports/no-unused-imports": "error",
16
- "@typescript-eslint/no-unused-vars": "off",
17
- },
18
5
  plugins: {
19
6
  "unused-imports": unusedImports,
20
7
  },
8
+ rules: {
9
+ "unused-imports/no-unused-vars": "off",
10
+ "unused-imports/no-unused-imports": "error",
11
+ },
21
12
  });
@@ -1,13 +1,7 @@
1
1
  import vitest from "@vitest/eslint-plugin";
2
2
  import { defineConfig } from "eslint/config";
3
3
 
4
- interface Vitest {
5
- configs: {
6
- recommended: ReturnType<typeof defineConfig>[0];
7
- };
8
- }
9
-
10
4
  export const vitestConfig = defineConfig({
11
5
  files: ["**/tests/**", "**/*.test.ts"],
12
- ...(vitest as unknown as Vitest).configs.recommended,
6
+ ...vitest.configs.recommended,
13
7
  });
@@ -1,7 +1,7 @@
1
1
  import { defineConfig } from "eslint/config";
2
2
  import { base } from "../base/index.js";
3
3
  import { eslintReactConfig } from "./eslint-react.js";
4
- import { jsxA11yXConfig } from "./jsx-a11y-x.js";
4
+ import { jsxA11yConfig } from "./jsx-a11y.js";
5
5
  import { reactCompilerConfig } from "./react-compiler.js";
6
6
  import { reactHooksConfig } from "./react-hooks.js";
7
7
  import { reactRefreshConfig } from "./react-refresh.js";
@@ -10,7 +10,7 @@ import { reactYouMightNotNeedAnEffectConfig } from "./react-you-might-not-need-a
10
10
  export const react = defineConfig(
11
11
  base,
12
12
  eslintReactConfig,
13
- jsxA11yXConfig,
13
+ jsxA11yConfig,
14
14
  reactHooksConfig,
15
15
  reactRefreshConfig,
16
16
  reactCompilerConfig,
@@ -0,0 +1,4 @@
1
+ import jsxA11y from "eslint-plugin-jsx-a11y";
2
+ import { defineConfig } from "eslint/config";
3
+
4
+ export const jsxA11yConfig = defineConfig(jsxA11y.flatConfigs.strict);
@@ -2,5 +2,5 @@ import reactHooks from "eslint-plugin-react-hooks";
2
2
  import { defineConfig } from "eslint/config";
3
3
 
4
4
  export const reactHooksConfig = defineConfig(
5
- reactHooks.configs.flat["recommended-latest"] as never,
5
+ reactHooks.configs.flat["recommended-latest"],
6
6
  );
@@ -1,13 +0,0 @@
1
- // @ts-expect-error - eslint-plugin-jsx-a11y-x is not typed
2
- import jsxA11yX from "eslint-plugin-jsx-a11y-x";
3
- import { defineConfig } from "eslint/config";
4
-
5
- interface JSXA11y {
6
- flatConfigs: {
7
- strict: ReturnType<typeof defineConfig>[0];
8
- };
9
- }
10
-
11
- export const jsxA11yXConfig = defineConfig(
12
- (jsxA11yX as JSXA11y).flatConfigs.strict,
13
- );