import js from '@eslint/js' import globals from 'globals' import pluginVue from 'eslint-plugin-vue' import skipFormatting from '@vue/eslint-config-prettier/skip-formatting' export default [ { ignores: ['**/dist/**', '**/dist-ssr/**', '**/coverage/**', '**/node_modules/**', '.nuxt/**'], }, { files: ['**/*.{js,mjs,jsx}'], languageOptions: { globals: { ...globals.browser, }, parserOptions: { ecmaVersion: 'latest', sourceType: 'module', }, }, rules: { ...js.configs.recommended.rules, 'indent': ['error', 2], 'quotes': ['error', 'single', { avoidEscape: true }], 'semi': ['error', 'never'], 'no-unused-vars': ['warn', { argsIgnorePattern: '^_' }], 'comma-dangle': ['error', 'never'], 'no-trailing-spaces': 'error', 'no-multiple-empty-lines': ['error', { max: 1 }], 'space-before-function-paren': ['error', 'always'], }, }, ...pluginVue.configs['flat/recommended'], { files: ['**/*.vue'], rules: { 'vue/multi-word-component-names': 'off', 'vue/no-v-html': 'warn', 'indent': 'off', }, }, skipFormatting, { files: ['**/service-worker.js', '**/src/registerServiceWorker.js'], languageOptions: { globals: { ...globals.serviceworker, ...globals.browser, }, }, }, ]