eslint.config.ts 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. import { globalIgnores } from 'eslint/config'
  2. import { defineConfigWithVueTs, vueTsConfigs } from '@vue/eslint-config-typescript'
  3. import pluginVue from 'eslint-plugin-vue'
  4. import pluginVitest from '@vitest/eslint-plugin'
  5. import skipFormatting from '@vue/eslint-config-prettier/skip-formatting'
  6. // To allow more languages other than `ts` in `.vue` files, uncomment the following lines:
  7. // import { configureVueProject } from '@vue/eslint-config-typescript'
  8. // configureVueProject({ scriptLangs: ['ts', 'tsx'] })
  9. // More info at https://github.com/vuejs/eslint-config-typescript/#advanced-setup
  10. export default defineConfigWithVueTs(
  11. {
  12. name: 'app/files-to-lint',
  13. files: ['**/*.{ts,mts,tsx,vue}'],
  14. },
  15. globalIgnores(['**/dist/**', '**/dist-ssr/**', '**/coverage/**']),
  16. pluginVue.configs['flat/essential'],
  17. vueTsConfigs.recommended,
  18. {
  19. ...pluginVitest.configs.recommended,
  20. files: ['src/**/__tests__/*'],
  21. },
  22. {
  23. name: 'app/vue-rules',
  24. files: ['**/*.vue'],
  25. rules: {
  26. 'vue/multi-word-component-names': 'off',
  27. },
  28. },
  29. skipFormatting,
  30. )