module.exports = { root: true, parserOptions: { ecmaVersion: 2022, }, env: { es6: true, browser: true, mocha: true, node: true, }, rules: { "block-scoped-var": "error", curly: ["error", "all"], "dot-notation": "error", eqeqeq: "error", "handle-callback-err": "error", "no-alert": "error", "no-catch-shadow": "error", "no-control-regex": "off", "no-console": "error", "no-duplicate-imports": "error", "no-else-return": "error", "no-implicit-globals": "error", "no-restricted-globals": ["error", "event", "fdescribe"], "no-shadow": "error", "no-template-curly-in-string": "error", "no-unsafe-negation": "error", "no-useless-computed-key": "error", "no-useless-constructor": "error", "no-useless-return": "error", "no-use-before-define": [ "error", { functions: false, }, ], "no-var": "error", "object-shorthand": [ "error", "methods", { avoidExplicitReturnArrows: true, }, ], "padding-line-between-statements": [ "error", { blankLine: "always", prev: ["block", "block-like"], next: "*", }, { blankLine: "always", prev: "*", next: ["block", "block-like"], }, ], "prefer-const": "error", "prefer-rest-params": "error", "prefer-spread": "error", "spaced-comment": ["error", "always"], strict: "off", yoda: "error", "vue/component-tags-order": [ "error", { order: ["template", "style", "script"], }, ], "vue/no-mutating-props": "off", "vue/no-v-html": "off", "vue/require-default-prop": "off", "vue/v-slot-style": ["error", "longform"], "vue/multi-word-component-names": "off", }, plugins: ["vue"], extends: ["eslint:recommended", "plugin:vue/recommended", "prettier"], };