Skip to content

Commit a5e27f8

Browse files
committed
ESLint 9 update
1 parent 70c55d2 commit a5e27f8

File tree

4 files changed

+414
-431
lines changed

4 files changed

+414
-431
lines changed

.eslintrc.cjs

Lines changed: 0 additions & 40 deletions
This file was deleted.

eslint.config.cjs

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
const {
2+
defineConfig,
3+
globalIgnores,
4+
} = require("eslint/config");
5+
6+
const tsParser = require("@typescript-eslint/parser");
7+
const typescriptEslint = require("@typescript-eslint/eslint-plugin");
8+
const globals = require("globals");
9+
const parser = require("svelte-eslint-parser");
10+
const js = require("@eslint/js");
11+
12+
const {
13+
FlatCompat,
14+
} = require("@eslint/eslintrc");
15+
16+
const compat = new FlatCompat({
17+
baseDirectory: __dirname,
18+
recommendedConfig: js.configs.recommended,
19+
allConfig: js.configs.all
20+
});
21+
22+
module.exports = defineConfig([{
23+
extends: compat.extends(
24+
"eslint:recommended",
25+
"plugin:@typescript-eslint/recommended",
26+
"plugin:svelte/recommended",
27+
"plugin:dci-lint/recommended",
28+
"prettier",
29+
),
30+
31+
languageOptions: {
32+
parser: tsParser,
33+
sourceType: "module",
34+
ecmaVersion: 2020,
35+
36+
parserOptions: {
37+
extraFileExtensions: [".svelte"],
38+
},
39+
40+
globals: {
41+
...globals.browser,
42+
...globals.node,
43+
},
44+
},
45+
46+
plugins: {
47+
"@typescript-eslint": typescriptEslint,
48+
},
49+
50+
rules: {
51+
"dci-lint/literal-role-contracts": "off",
52+
},
53+
}, {
54+
files: ["**/*.svelte"],
55+
56+
languageOptions: {
57+
parser: parser,
58+
59+
parserOptions: {
60+
parser: "@typescript-eslint/parser",
61+
},
62+
},
63+
}, {
64+
files: ["src/lib/**"],
65+
66+
rules: {
67+
"no-console": ["error", {
68+
allow: ["warn"],
69+
}],
70+
},
71+
}, globalIgnores([
72+
"**/.DS_Store",
73+
"**/node_modules",
74+
"build",
75+
".svelte-kit",
76+
"package",
77+
"**/.env",
78+
"**/.env.*",
79+
"!**/.env.example",
80+
"dist",
81+
"**/pnpm-lock.yaml",
82+
"**/package-lock.json",
83+
"**/yarn.lock",
84+
])]);

package.json

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,8 @@
186186
"ts-deepmerge": "^7.0.3"
187187
},
188188
"devDependencies": {
189+
"@eslint/eslintrc": "^3.3.1",
190+
"@eslint/js": "^9.28.0",
189191
"@sveltejs/adapter-auto": "^6.0.1",
190192
"@sveltejs/kit": "^2.21.1",
191193
"@sveltejs/package": "^2.3.11",
@@ -194,14 +196,13 @@
194196
"@types/node": "^22.15.29",
195197
"@types/throttle-debounce": "^5.0.2",
196198
"@types/uuid": "^9.0.8",
197-
"@typescript-eslint/eslint-plugin": "^6.21.0",
198-
"@typescript-eslint/parser": "^6.21.0",
199199
"@valibot/i18n": "1.0.0-beta.2",
200200
"decimal.js": "^10.5.0",
201-
"eslint": "^8.57.1",
202-
"eslint-config-prettier": "^9.1.0",
203-
"eslint-plugin-dci-lint": "^0.3.2",
204-
"eslint-plugin-svelte": "^2.46.1",
201+
"eslint": "^9.18.0",
202+
"eslint-config-prettier": "^10.0.1",
203+
"eslint-plugin-dci-lint": "^0.9.1",
204+
"eslint-plugin-svelte": "^3.0.0",
205+
"globals": "^16.2.0",
205206
"i18next": "^23.16.8",
206207
"only-allow": "^1.2.1",
207208
"prettier": "^3.5.3",
@@ -216,6 +217,7 @@
216217
"throttle-debounce": "^5.0.2",
217218
"tslib": "^2.8.1",
218219
"typescript": "^5.8.3",
220+
"typescript-eslint": "^8.33.0",
219221
"uuid": "^9.0.1",
220222
"vite": "^6.3.5",
221223
"vitest": "^1.6.1",

0 commit comments

Comments
 (0)