Files
jandl-taskmanager-app/app/.eslintrc.js

63 lines
1.7 KiB
JavaScript

module.exports = {
root: true,
env: {
node: true,
es2021: true,
browser: true,
},
extends: [
'plugin:vue/vue3-recommended',
'eslint:recommended',
'@vue/typescript/recommended',
'prettier',
],
parserOptions: {
ecmaVersion: 2021,
sourceType: 'module',
},
globals: {
defineProps: 'readonly',
defineEmits: 'readonly',
defineExpose: 'readonly',
withDefaults: 'readonly',
},
ignorePatterns: ['**/app@vendor/*', 'dist/**/*', 'node_modules/**/*'],
rules: {
// Vue-specific rules
'vue/multi-word-component-names': 'off',
'vue/no-v-html': 'off',
'vue/require-default-prop': 'off',
'vue/require-explicit-emits': 'off',
'vue/component-tags-order': [
'error',
{
order: ['template', 'script', 'style'],
},
],
// General JavaScript/TypeScript rules
'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
'no-unused-vars': 'off',
'prefer-const': 'warn',
'no-var': 'warn',
// TypeScript-specific rules
'@typescript-eslint/no-unused-vars': [
'warn',
{
varsIgnorePattern: '^_',
argsIgnorePattern: '^_',
caughtErrorsIgnorePattern: '^_',
destructuredArrayIgnorePattern: '^_',
},
],
'@typescript-eslint/no-explicit-any': 'off',
'@typescript-eslint/ban-ts-comment': 'off',
'@typescript-eslint/no-non-null-assertion': 'off',
'@typescript-eslint/explicit-module-boundary-types': 'off',
'@typescript-eslint/no-empty-function': 'off',
'@typescript-eslint/no-empty-interface': 'off',
},
};