import js from '@eslint/js' import pluginVue from 'eslint-plugin-vue' import globals from 'globals' import tseslint from 'typescript-eslint' export default tseslint.config( { ignores: ['dist', 'node_modules', 'coverage', 'internal', 'deploy'] }, js.configs.recommended, ...tseslint.configs.recommended, ...pluginVue.configs['flat/recommended'], { files: ['**/*.vue'], languageOptions: { parserOptions: { parser: tseslint.parser } }, }, { files: ['**/*.{ts,vue,js}'], languageOptions: { globals: { ...globals.browser, ...globals.node } }, rules: { 'vue/multi-word-component-names': 'off', // Prettier owns formatting; shadcn-vue components also omit prop defaults on purpose. 'vue/max-attributes-per-line': 'off', 'vue/singleline-html-element-content-newline': 'off', 'vue/multiline-html-element-content-newline': 'off', 'vue/html-self-closing': 'off', 'vue/html-indent': 'off', 'vue/html-closing-bracket-newline': 'off', 'vue/require-default-prop': 'off', }, }, )