import js from '@eslint/js' import tseslint from 'typescript-eslint' import pluginVue from 'eslint-plugin-vue' export default [ js.configs.recommended, ...tseslint.configs.recommended, ...pluginVue.configs['flat/recommended'], { files: ['src/**/*.{ts,js,vue}'], languageOptions: { globals: { __APP_VERSION__: 'readonly', }, parserOptions: { parser: tseslint.parser, }, }, rules: { 'no-console': ['warn', { allow: ['warn', 'error'] }], 'no-debugger': 'error', 'no-unused-vars': 'off', '@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_' }], '@typescript-eslint/no-explicit-any': 'off', 'vue/multi-word-component-names': 'off', 'vue/require-default-prop': 'off', // Formatting handled by Prettier 'vue/max-attributes-per-line': 'off', 'vue/singleline-html-element-content-newline': 'off', 'vue/html-closing-bracket-spacing': 'off', 'vue/html-closing-bracket-newline': 'off', 'vue/html-indent': 'off', 'vue/html-self-closing': 'off', 'vue/attributes-order': 'off', }, }, { ignores: ['dist/', 'node_modules/', '*.config.js'], }, ]