|
@@ -0,0 +1,100 @@
|
|
|
+module.exports = {
|
|
|
+ root: true,
|
|
|
+ env: {
|
|
|
+ node: true,
|
|
|
+ },
|
|
|
+ settings: {
|
|
|
+ 'import/resolver': {
|
|
|
+ 'node': {
|
|
|
+ 'paths': ['src']
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ extends: [
|
|
|
+ 'plugin:vue/essential',
|
|
|
+ '@vue/airbnb',
|
|
|
+ ],
|
|
|
+ parserOptions: {
|
|
|
+ parser: '@babel/eslint-parser',
|
|
|
+ },
|
|
|
+ rules: {
|
|
|
+ 'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
|
|
|
+ 'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
|
|
|
+ "linebreak-style": [0 ,"error", "windows"],
|
|
|
+ 'class-methods-use-this': 0,
|
|
|
+ 'no-param-reassign': [
|
|
|
+ 'error',
|
|
|
+ {
|
|
|
+ props: true,
|
|
|
+ ignorePropertyModificationsFor: ['state', 'vm', 'item'],
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ 'import/extensions': [
|
|
|
+ 'error',
|
|
|
+ 'always',
|
|
|
+ {
|
|
|
+ js: 'never',
|
|
|
+ vue: 'always',
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ indent: [
|
|
|
+ 'error',
|
|
|
+ 4,
|
|
|
+ {
|
|
|
+ SwitchCase: 1,
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ 'max-len': [2, 260, 4],
|
|
|
+ 'vue/attribute-hyphenation': [
|
|
|
+ 'error',
|
|
|
+ 'always',
|
|
|
+ ],
|
|
|
+ 'vue/attributes-order': 'error',
|
|
|
+ 'vue/html-closing-bracket-newline': [
|
|
|
+ 'error',
|
|
|
+ {
|
|
|
+ singleline: 'never',
|
|
|
+ multiline: 'always',
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ 'vue/html-closing-bracket-spacing': 'error',
|
|
|
+ 'vue/html-end-tags': 'error',
|
|
|
+ 'vue/html-indent': [
|
|
|
+ 'error',
|
|
|
+ 4,
|
|
|
+ ],
|
|
|
+ 'vue/html-quotes': [
|
|
|
+ 'error',
|
|
|
+ 'double',
|
|
|
+ ],
|
|
|
+ 'vue/html-self-closing': 'error',
|
|
|
+ 'vue/max-attributes-per-line': [
|
|
|
+ 'error',
|
|
|
+ {
|
|
|
+ singleline: 6,
|
|
|
+ multiline: {
|
|
|
+ max: 1,
|
|
|
+ allowFirstLine: false,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ 'vue/no-confusing-v-for-v-if': 'error',
|
|
|
+ 'vue/no-parsing-error': 'error',
|
|
|
+ 'vue/no-use-v-if-with-v-for': 'error',
|
|
|
+ // 'vue/no-v-html': 'error',
|
|
|
+ 'vue/order-in-components': 'error',
|
|
|
+ 'vue/prop-name-casing': 'error',
|
|
|
+ 'vue/require-default-prop': 'error',
|
|
|
+ 'vue/require-prop-types': 'error',
|
|
|
+ 'vue/script-indent': [
|
|
|
+ 'error',
|
|
|
+ 4,
|
|
|
+ {
|
|
|
+ baseIndent: 0,
|
|
|
+ switchCase: 1,
|
|
|
+ ignores: [],
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ 'vue/this-in-template': 'error',
|
|
|
+ },
|
|
|
+};
|