From 35e94736c61cc3afbfeb84d8b52f393179d42605 Mon Sep 17 00:00:00 2001 From: mrholek Date: Fri, 14 Feb 2025 12:11:42 +0100 Subject: [PATCH] refactor: migrate ESLint to 9.x --- .eslintignore | 4 ---- .eslintrc.cjs | 9 --------- eslint.config.mjs | 23 +++++++++++++++++++++++ package.json | 7 ++++--- 4 files changed, 27 insertions(+), 16 deletions(-) delete mode 100644 .eslintignore delete mode 100644 .eslintrc.cjs create mode 100644 eslint.config.mjs diff --git a/.eslintignore b/.eslintignore deleted file mode 100644 index dc70b364..00000000 --- a/.eslintignore +++ /dev/null @@ -1,4 +0,0 @@ -node_modules/* -/dist/** -.eslintrc.js -vite.config.mjs diff --git a/.eslintrc.cjs b/.eslintrc.cjs deleted file mode 100644 index 7d0be3d2..00000000 --- a/.eslintrc.cjs +++ /dev/null @@ -1,9 +0,0 @@ -/* eslint-env node */ -module.exports = { - extends: ["plugin:vue/vue3-essential", "eslint:recommended"], - rules: { - "no-console": process.env.NODE_ENV === "production" ? "warn" : "off", - "no-debugger": process.env.NODE_ENV === "production" ? "warn" : "off", - 'vue/multi-word-component-names': 'off', - }, -}; diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 00000000..5bc1dd17 --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,23 @@ +import eslintPluginVue from 'eslint-plugin-vue' +import globals from 'globals' + +export default [ + { ignores: ['dist/', 'eslint.config.mjs'] }, + ...eslintPluginVue.configs['flat/essential'], + { + files: ['src/**/*.{js,vue}'], + languageOptions: { + globals: { + ...globals.browser, + ...globals.node, + }, + ecmaVersion: 'latest', + sourceType: 'module', + }, + rules: { + 'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off', + 'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off', + 'vue/multi-word-component-names': 'off', + }, + }, +] diff --git a/package.json b/package.json index b2566b6e..fcbeb293 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ "scripts": { "dev": "vite --force", "build": "vite build", - "lint": "eslint \"src/**/*.{js,vue}\"", + "lint": "eslint", "preview": "vite preview" }, "dependencies": { @@ -35,8 +35,9 @@ "devDependencies": { "@vitejs/plugin-vue": "^5.2.0", "autoprefixer": "^10.4.20", - "eslint": "^8.57.0", - "eslint-plugin-vue": "^9.31.0", + "eslint": "^9.20.1", + "eslint-plugin-vue": "^9.32.0", + "globals": "^15.15.0", "postcss": "^8.4.49", "sass": "^1.81.0", "vite": "^5.4.11"