123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- module.exports = {
- root: true,
- env: {
- node: true
- },
- extends: [
- 'plugin:vue/vue3-strongly-recommended',
- '@vue/standard',
- '@vue/typescript/recommended'
- ],
- parserOptions: {
- ecmaVersion: 2020
- },
- rules: {
- 'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
- '@typescript-eslint/ban-types': 'off',
- '@typescript-eslint/explicit-module-boundary-types': 'off',
- '@typescript-eslint/member-delimiter-style': ['error',
- {
- multiline: {
- delimiter: 'none'
- },
- singleline: {
- delimiter: 'comma'
- }
- }],
- '@typescript-eslint/no-explicit-any': 'off',
- 'space-before-function-paren': ['error', 'never'],
- 'vue/array-bracket-spacing': 'error',
- 'vue/arrow-spacing': 'error',
- 'vue/block-spacing': 'error',
- 'vue/brace-style': 'error',
- 'vue/camelcase': 'error',
- 'vue/comma-dangle': 'error',
- 'vue/component-name-in-template-casing': 'error',
- 'vue/eqeqeq': 'error',
- 'vue/key-spacing': 'error',
- 'vue/match-component-file-name': 'error',
- 'vue/object-curly-spacing': 'error',
- 'no-useless-escape': 'off',
- '@typescript-eslint/no-this-alias': [
- 'error',
- {
- allowDestructuring: true, // Allow `const { props, state } = this`; false by default
- allowedNames: ['self'] // Allow `const self = this`; `[]` by default
- }
- ],
- 'vue/attribute-hyphenation': 'off',
- 'vue/custom-event-name-casing': 'off'
- },
- overrides: [
- {
- files: [
- '**/__tests__/*.{j,t}s?(x)',
- '**/tests/unit/**/*.spec.{j,t}s?(x)'
- ],
- env: {
- jest: true
- }
- }
- ]
- }
|