42 lines
1.3 KiB
JavaScript
42 lines
1.3 KiB
JavaScript
|
|
import { defineConfigWithVueTs, vueTsConfigs } from '@vue/eslint-config-typescript';
|
||
|
|
import prettier from 'eslint-config-prettier';
|
||
|
|
import importPlugin from 'eslint-plugin-import';
|
||
|
|
import vue from 'eslint-plugin-vue';
|
||
|
|
|
||
|
|
export default defineConfigWithVueTs(
|
||
|
|
vue.configs['flat/essential'],
|
||
|
|
vueTsConfigs.recommended,
|
||
|
|
{
|
||
|
|
ignores: ['vendor', 'node_modules', 'public', 'bootstrap/ssr', 'tailwind.config.js', 'resources/js/components/ui/*'],
|
||
|
|
},
|
||
|
|
{
|
||
|
|
plugins: {
|
||
|
|
import: importPlugin,
|
||
|
|
},
|
||
|
|
settings: {
|
||
|
|
'import/resolver': {
|
||
|
|
typescript: {
|
||
|
|
alwaysTryTypes: true,
|
||
|
|
project: './tsconfig.json',
|
||
|
|
},
|
||
|
|
},
|
||
|
|
},
|
||
|
|
rules: {
|
||
|
|
'vue/multi-word-component-names': 'off',
|
||
|
|
'@typescript-eslint/no-explicit-any': 'off',
|
||
|
|
'import/order': [
|
||
|
|
'error',
|
||
|
|
{
|
||
|
|
groups: ['builtin', 'external', 'internal', 'parent', 'sibling', 'index'],
|
||
|
|
'newlines-between': 'always',
|
||
|
|
alphabetize: {
|
||
|
|
order: 'asc',
|
||
|
|
caseInsensitive: true,
|
||
|
|
},
|
||
|
|
},
|
||
|
|
],
|
||
|
|
},
|
||
|
|
},
|
||
|
|
prettier,
|
||
|
|
);
|