eslint.config.mjs 985 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import { defineConfig } from 'eslint/config'
  2. import tseslint from '@electron-toolkit/eslint-config-ts'
  3. import eslintConfigPrettier from '@electron-toolkit/eslint-config-prettier'
  4. import eslintPluginVue from 'eslint-plugin-vue'
  5. import vueParser from 'vue-eslint-parser'
  6. export default defineConfig(
  7. { ignores: ['**/node_modules', '**/dist', '**/out'] },
  8. tseslint.configs.recommended,
  9. eslintPluginVue.configs['flat/recommended'],
  10. {
  11. files: ['**/*.vue'],
  12. languageOptions: {
  13. parser: vueParser,
  14. parserOptions: {
  15. ecmaFeatures: {
  16. jsx: true
  17. },
  18. extraFileExtensions: ['.vue'],
  19. parser: tseslint.parser
  20. }
  21. }
  22. },
  23. {
  24. files: ['**/*.{ts,mts,tsx,vue}'],
  25. rules: {
  26. 'vue/require-default-prop': 'off',
  27. 'vue/multi-word-component-names': 'off',
  28. 'vue/block-lang': [
  29. 'error',
  30. {
  31. script: {
  32. lang: 'ts'
  33. }
  34. }
  35. ]
  36. }
  37. },
  38. eslintConfigPrettier
  39. )