import js from '@eslint/js'; import pluginVue from 'eslint-plugin-vue'; import tseslint from 'typescript-eslint'; import prettier from 'eslint-config-prettier'; import globals from 'globals'; export default tseslint.config( { ignores: [ 'dist/**', '.quasar/**', 'node_modules/**', 'src-capacitor/**', 'src-cordova/**', 'quasar.config.*.temporary.compiled*', 'generate-version.cjs', 'src-pwa/.eslintrc.js', '**/*.d.ts', ], }, js.configs.recommended, ...tseslint.configs.recommended, ...pluginVue.configs['flat/essential'], { files: ['**/*.ts', '**/*.vue'], languageOptions: { parserOptions: { parser: tseslint.parser, extraFileExtensions: ['.vue'], }, globals: { ...globals.browser, ...globals.es2021, ga: 'readonly', cordova: 'readonly', __statics: 'readonly', __QUASAR_SSR__: 'readonly', __QUASAR_SSR_SERVER__: 'readonly', __QUASAR_SSR_CLIENT__: 'readonly', __QUASAR_SSR_PWA__: 'readonly', process: 'readonly', Capacitor: 'readonly', chrome: 'readonly', }, }, rules: { 'prefer-promise-reject-errors': 'off', quotes: ['warn', 'single', { avoidEscape: true }], '@typescript-eslint/explicit-function-return-type': 'off', '@typescript-eslint/no-var-requires': 'off', 'no-unused-vars': 'off', 'no-debugger': 'off', }, }, prettier, );