import { defineConfig } from "eslint/config"; import tseslint from "@electron-toolkit/eslint-config-ts"; import eslintConfigPrettier from "@electron-toolkit/eslint-config-prettier"; import eslintPluginVue from "eslint-plugin-vue"; import vueParser from "vue-eslint-parser"; export default defineConfig( { ignores: ["**/node_modules", "**/dist", "**/out"] }, tseslint.configs.recommended, eslintPluginVue.configs["flat/recommended"], { files: ["**/*.vue"], languageOptions: { parser: vueParser, parserOptions: { ecmaFeatures: { jsx: true, }, extraFileExtensions: [".vue"], parser: tseslint.parser, }, }, }, { files: ["**/*.{ts,mts,tsx,vue}"], rules: { "vue/require-default-prop": "off", "vue/multi-word-component-names": "off", "@typescript-eslint/no-unused-vars": "warn", "vue/block-lang": [ "error", { script: { lang: "ts", }, }, ], }, }, eslintConfigPrettier, );