.eslintrc.cjs 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  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. 'plugin:you-dont-need-lodash-underscore/compatible'
  22. ],
  23. ignorePatterns: [
  24. '.nuxt',
  25. 'coverage/*',
  26. 'vendor/*',
  27. 'dist/*',
  28. 'models/models.ts',
  29. ],
  30. plugins: ['vue', '@typescript-eslint'],
  31. // add your custom rules here
  32. rules: {
  33. 'no-console': 0, // on autorise les appels à la console (puisque ceux-ci seront de toute façon nettoyés à la compilation)
  34. 'vue/valid-v-slot': [
  35. 'error',
  36. {
  37. allowModifiers: true,
  38. },
  39. ],
  40. 'vue/multi-word-component-names': 0,
  41. '@typescript-eslint/no-inferrable-types': 0,
  42. },
  43. globals: {
  44. useRuntimeConfig: 'readonly',
  45. useAsyncData: 'readonly',
  46. navigateTo: 'readonly',
  47. computed: 'readonly',
  48. ref: 'readonly',
  49. definePageMeta: 'readonly',
  50. useRouter: 'readonly',
  51. useRoute: 'readonly',
  52. useI18n: 'readonly',
  53. onMounted: 'readonly',
  54. onUnmounted: 'readonly',
  55. watch: 'readonly',
  56. useRepo: 'readonly',
  57. },
  58. }