ESAMuchRechner/client/.eslintrc.cjs

67 lines
1.8 KiB
JavaScript

module.exports = {
// https://eslint.org/docs/user-guide/configuring#configuration-cascading-and-hierarchy
// This option interrupts the configuration hierarchy at this file
// Remove this if you have an higher level ESLint config file (it usually happens into a monorepos)
root: true,
parserOptions: {
ecmaVersion: '2021', // Allows for the parsing of modern ECMAScript features
},
env: {
node: true,
browser: true,
'vue/setup-compiler-macros': true,
},
// Rules order is important, please avoid shuffling them
extends: ['plugin:vue/vue3-recommended', 'eslint:recommended'],
plugins: [
// https://eslint.vuejs.org/user-guide/#why-doesn-t-it-work-on-vue-files
// required to lint *.vue files
'vue',
],
globals: {
ga: 'readonly', // Google Analytics
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',
},
// add your custom rules here
rules: {
'no-param-reassign': 'off',
'no-void': 'off',
'no-nested-ternary': 'off',
'max-classes-per-file': 'off',
'prefer-promise-reject-errors': 'off',
// allow debugger during development only
'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
// custom
'vue/require-prop-types': 0,
'vue/html-indent': ['error', 'tab'],
'vue/multi-word-component-names': 0,
indent: ['error', 'tab'],
'linebreak-style': ['error', 'unix'],
quotes: ['error', 'single'],
semi: ['error', 'always'],
'space-before-function-paren': ['error', 'always'],
'comma-dangle': ['error', 'always-multiline'],
'no-multiple-empty-lines': ['error', { 'max': 1, 'maxEOF': 0 }],
},
overrides: [
{
files: ['*.html'],
rules: {
'vue/comment-directive': 'off',
},
},
],
};