1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- import js from '@eslint/js'
- import globals from 'globals'
- import pluginVue from 'eslint-plugin-vue'
- import pluginQuasar from '@quasar/app-vite/eslint'
- import { defineConfigWithVueTs, vueTsConfigs } from '@vue/eslint-config-typescript'
- import prettierSkipFormatting from '@vue/eslint-config-prettier/skip-formatting'
- export default defineConfigWithVueTs(
- {
- /**
- * Ignore the following files.
- * Please note that pluginQuasar.configs.recommended() already ignores
- * the "node_modules" folder for you (and all other Quasar project
- * relevant folders and files).
- *
- * ESLint requires "ignores" key to be the only one in this object
- */
- // ignores: []
- },
- pluginQuasar.configs.recommended(),
- js.configs.recommended,
- /**
- * https://eslint.vuejs.org
- *
- * pluginVue.configs.base
- * -> Settings and rules to enable correct ESLint parsing.
- * pluginVue.configs[ 'flat/essential']
- * -> base, plus rules to prevent errors or unintended behavior.
- * pluginVue.configs["flat/strongly-recommended"]
- * -> Above, plus rules to considerably improve code readability and/or dev experience.
- * pluginVue.configs["flat/recommended"]
- * -> Above, plus rules to enforce subjective community defaults to ensure consistency.
- */
- pluginVue.configs[ 'flat/essential' ],
- {
- files: ['**/*.ts', '**/*.vue'],
- rules: {
- '@typescript-eslint/consistent-type-imports': [
- 'error',
- { prefer: 'type-imports' }
- ],
- }
- },
- // https://github.com/vuejs/eslint-config-typescript
- vueTsConfigs.recommendedTypeChecked,
- {
- languageOptions: {
- ecmaVersion: 'latest',
- sourceType: 'module',
- globals: {
- ...globals.browser,
- ...globals.node, // SSR, Electron, config files
- process: 'readonly', // process.env.*
- ga: 'readonly', // Google Analytics
- cordova: 'readonly',
- Capacitor: 'readonly',
- chrome: 'readonly', // BEX related
- browser: 'readonly' // BEX related
- }
- },
- // add your custom rules here
- rules: {
- 'prefer-promise-reject-errors': 'off',
- // allow debugger during development only
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off'
- }
- },
- {
- files: [ 'src-pwa/custom-service-worker.ts' ],
- languageOptions: {
- globals: {
- ...globals.serviceworker
- }
- }
- },
- prettierSkipFormatting
- )
|