module.exports = {
  "root": true,
  "env": {
    "node": true
  },
  "ignorePatterns": ["**/vendor/**"],
  "extends": [
    "plugin:vue/essential",
    "eslint:recommended"
  ],
  "rules": {
    "indent": ["error", 2],
    "semi": ["error", "never"],
    "curly": ["error", "all"],
    "no-tabs": "error",
    "brace-style": "error",
    "no-var": "error",
    "prefer-const": "error",
    "no-unused-vars": ["error", {
      "args": "after-used",
      "argsIgnorePattern": "^_"
    }],
    "vue/max-attributes-per-line": [
      "warn",
      {
        "singleline": 6,
        "multiline": {
          "max": 1,
          "allowFirstLine": true
        }
      }],
    "vue/attribute-hyphenation": "warn",
    "vue/component-definition-name-casing": "error",
    "vue/component-name-in-template-casing": "error",
    "vue/component-tags-order": "warn",
    "vue/custom-event-name-casing": "error",
    "vue/html-button-has-type": "error",
    "vue/html-comment-indent": "warn",
    "vue/html-end-tags": "error",
    "vue/html-indent": "error",
    "vue/html-quotes": "error",
    "vue/html-self-closing": "warn",
    "vue/match-component-file-name": "warn",
    "vue/name-property-casing": "error",
    "vue/no-deprecated-data-object-declaration": "warn",
    "vue/no-deprecated-destroyed-lifecycle": "warn",
    "vue/no-deprecated-dollar-listeners-api": "warn",
    "vue/no-deprecated-dollar-scopedslots-api": "warn",
    "vue/no-deprecated-events-api": "warn",
    "vue/no-deprecated-filter": "warn",
    "vue/no-deprecated-functional-template": "warn",
    "vue/no-deprecated-html-element-is": "warn",
    "vue/no-deprecated-inline-template": "warn",
    "vue/no-deprecated-props-default-this": "warn",
    "vue/no-deprecated-scope-attribute": "warn",
    "vue/no-deprecated-slot-attribute": "warn",
    "vue/no-deprecated-slot-scope-attribute": "warn",
    "vue/no-deprecated-v-bind-sync": "warn",
    "vue/no-deprecated-v-on-native-modifier": "warn",
    "vue/no-deprecated-v-on-number-modifiers": "warn",
    "vue/no-deprecated-vue-config-keycodes": "warn",
    "vue/no-dupe-keys": "error",
    "vue/no-dupe-v-else-if": "error",
    "vue/no-duplicate-attributes": "warn",
    "vue/no-irregular-whitespace": "error",
    "vue/no-multi-spaces": "error",
    "vue/no-mutating-props": "error",
    "vue/no-reserved-keys": "error",
    "vue/no-unsupported-features": "error",
    "vue/no-unused-components": "warn",
    "vue/no-unused-properties": "warn",
    "vue/no-unused-vars": ["error", {
      "ignorePattern": "^_"
    }],
    "vue/no-use-v-if-with-v-for": "warn",
    "vue/prop-name-casing": "error",
    "vue/require-default-prop": "error",
    "vue/require-v-for-key": "error",
    "vue/require-valid-default-prop": "error",
    "vue/script-indent": "error",
    "vue/valid-v-html": "error",
    "vue/attributes-order": "warn"
  }
}
