module.exports = {
  root: true,
  env: {
    node: true
  },
  plugins: ['vue'],
  extends: ['plugin:vue/vue3-essential'],
  parserOptions: {
    parser: 'babel-eslint'
  },
  rules: {
    'global-require': 0,
    'import/prefer-default-export': 0,
    'no-console': 0,
    'vue/no-deprecated-slot-attribute': 0,
    'no-plusplus': 0,
    'no-param-reassign': 0,
    'vue/no-use-v-if-with-v-for': 0,
    'max-len': [
      'error',
      {
        code: 120,
        tabWidth: 2,
        ignoreStrings: true,
        ignoreUrls: true,
        ignoreRegExpLiterals: true,
        ignoreTemplateLiterals: true
      }
    ],
    'import/extensions': 0,
    eqeqeq: 0,
    'vue/no-deprecated-slot-scope-attribute': 0,
    'no-underscore-dangle': 0,
    'consistent-return': 0,
    'linebreak-style': [0, 'error', 'windows'],
    'vue/no-parsing-error': 0,
    'vue/multi-word-component-names': 0,
    'vue/custom-event-name-casing': 0,
    'vue/no-ref-as-operand': 0,
    'operator-linebreak': ['error', 'before', { overrides: { '=': 'none' } }]
  },
  overrides: [
    {
      files: ['**/__tests__/*.{j,t}s?(x)', '**/tests/unit/**/*.spec.{j,t}s?(x)'],
      env: {
        mocha: true
      }
    }
  ]
};
