.eslintrc.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. /* eslint-env node */
  2. module.exports = {
  3. root: true,
  4. extends: [
  5. 'plugin:nuxt/recommended',
  6. 'plugin:vue/vue3-essential',
  7. 'eslint:recommended',
  8. '@vue/eslint-config-typescript/recommended',
  9. '@vue/eslint-config-prettier',
  10. ],
  11. parserOptions: {
  12. ecmaVersion: 'latest',
  13. parser: '@typescript-eslint/parser',
  14. sourceType: 'module',
  15. },
  16. plugins: ['@typescript-eslint'],
  17. rules: {
  18. 'prettier/prettier': [
  19. 'warn',
  20. {
  21. semi: false,
  22. singleQuote: true,
  23. printWidth: 80,
  24. proseWrap: 'preserve',
  25. bracketSameLine: false,
  26. endOfLine: 'auto',
  27. tabWidth: 2,
  28. useTabs: false,
  29. trailingComma: 'none',
  30. },
  31. ],
  32. 'no-useless-escape': 'off',
  33. 'vue/multi-word-component-names': 'off',
  34. '@typescript-eslint/no-explicit-any': 'off',
  35. '@typescript-eslint/ban-ts-comment': 'off',
  36. 'no-undef': 'off',
  37. 'vue/prefer-import-from-vue': 'off',
  38. 'no-prototype-builtins': 'off',
  39. 'prefer-spread': 'off',
  40. '@typescript-eslint/no-non-null-assertion': 'off',
  41. '@typescript-eslint/no-non-null-asserted-optional-chain': 'off',
  42. },
  43. globals: {
  44. module: 'readonly',
  45. },
  46. }