eslint-config.js 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. module.exports = {
  2. extends: ['plugin:vue/recommended'],
  3. parserOptions: {
  4. parser: '@typescript-eslint/parser',
  5. ecmaVersion: 2018,
  6. sourceType: 'module',
  7. extraFileExtensions: ['.vue']
  8. },
  9. plugins: ['@typescript-eslint'],
  10. env: {
  11. es6: true,
  12. node: true,
  13. jest: true,
  14. browser: true
  15. },
  16. globals: {
  17. window: false,
  18. document: false,
  19. navigator: false
  20. },
  21. rules: {
  22. 'no-new': 0,
  23. 'no-shadow': 0,
  24. camelcase: 1,
  25. 'no-bitwise': 0,
  26. 'func-names': 0,
  27. 'no-console': 0,
  28. 'no-plusplus': 0,
  29. 'arrow-parens': 0,
  30. 'comma-dangle': 0,
  31. 'default-case': 0,
  32. 'prefer-template': 0,
  33. 'consistent-return': 0,
  34. 'no-param-reassign': 0,
  35. 'no-nested-ternary': 0,
  36. 'operator-linebreak': 0,
  37. 'object-curly-newline': 0,
  38. 'no-underscore-dangle': 1,
  39. 'no-unused-expressions': 0,
  40. 'no-restricted-globals': 0,
  41. 'function-paren-newline': 0,
  42. 'class-methods-use-this': 0,
  43. 'implicit-arrow-linebreak': 0,
  44. 'space-before-function-paren': 0,
  45. 'max-len': ['error', { code: 150 }],
  46. 'prefer-destructuring': ['error', { object: true, array: false }],
  47. 'import/order': 0,
  48. 'import/extensions': 0,
  49. 'import/no-unresolved': 0,
  50. 'import/prefer-default-export': 0,
  51. 'import/no-extraneous-dependencies': 0,
  52. 'vue/no-v-html': 0,
  53. 'vue/attributes-order': 0,
  54. 'vue/require-v-for-key': 0,
  55. 'vue/require-default-prop': 0,
  56. 'vue/no-unused-components': 0,
  57. 'vue/max-attributes-per-line': 0,
  58. 'vue/singleline-html-element-content-newline': 0,
  59. 'vue/name-property-casing': ['error', 'kebab-case'],
  60. 'vue/component-name-in-template-casing': ['error', 'kebab-case'],
  61. 'vue/html-closing-bracket-newline': 2,
  62. '@typescript-eslint/no-unused-vars': ['error'],
  63. 'vue/html-indent': 0,
  64. 'vue/html-self-closing': 0
  65. }
  66. };