/* eslint-env node */ require('@rushstack/eslint-patch/modern-module-resolution') module.exports = { root: true, env: { browser: true, node: true, }, extends: [ 'eslint:recommended', 'plugin:vue/vue3-essential', '@vue/eslint-config-typescript/recommended', '@vue/eslint-config-prettier', ], overrides: [ { // https://typescript-eslint.io/docs/linting/troubleshooting/#i-get-errors-from-the-no-undef-rule-about-global-variables-not-being-defined-even-though-there-are-no-typescript-errors files: ['*.vue'], rules: { 'no-undef': 'off', }, }, ], rules: { // see https://vuejs.org/guide/extras/reactivity-transform.html 'vue/no-setup-props-destructure': 'off', // TODO: discuss if we want to force this 'vue/multi-word-component-names': 'off', // error appears since update to Vue3.3 for no apparent reason 'vue/no-dupe-keys': 'off', // see https://eslint.org/docs/latest/rules/no-prototype-builtins#when-not-to-use-it 'no-prototype-builtins': 'off', // as long as it is explicit, it is fine to use any '@typescript-eslint/no-explicit-any': 'off', }, }