.eslintrc.cjs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. module.exports = {
  2. root: true,
  3. env: {
  4. browser: true,
  5. node: true,
  6. },
  7. parser: 'vue-eslint-parser',
  8. parserOptions: {
  9. ecmaVersion: 2020,
  10. parser: '@typescript-eslint/parser',
  11. sourceType: 'module',
  12. tsconfigRootDir: __dirname,
  13. },
  14. extends: [
  15. '@nuxtjs/eslint-config-typescript',
  16. 'plugin:nuxt/recommended',
  17. 'eslint:recommended',
  18. 'plugin:@typescript-eslint/recommended',
  19. 'plugin:vue/vue3-recommended',
  20. 'plugin:prettier/recommended',
  21. ],
  22. ignorePatterns: ['.nuxt', 'coverage/*', 'vendor/*', 'dist/*'],
  23. plugins: ['vue', '@typescript-eslint'],
  24. // add your custom rules here
  25. rules: {
  26. 'no-console': 0, // on autorise les appels à la console (puisque ceux-ci seront de toute façon nettoyés à la compilation)
  27. 'vue/valid-v-slot': [
  28. 'error',
  29. {
  30. allowModifiers: true,
  31. },
  32. ],
  33. 'vue/multi-word-component-names': 0,
  34. 'vue/no-v-html': 0,
  35. '@typescript-eslint/ban-ts-comment': 0,
  36. },
  37. globals: {
  38. useRuntimeConfig: 'readonly',
  39. navigateTo: 'readonly',
  40. computed: 'readonly',
  41. ref: 'readonly',
  42. definePageMeta: 'readonly',
  43. useRouter: 'readonly',
  44. useRoute: 'readonly',
  45. useI18n: 'readonly',
  46. onMounted: 'readonly',
  47. useLayoutStore: 'readonly',
  48. useClientDevice: 'readonly',
  49. useSeoMeta: 'readonly',
  50. },
  51. }