mirror of
https://github.com/KwiTsukasa/kt-template-online-playground.git
synced 2026-05-28 00:47:42 +08:00
54 lines
1.8 KiB
JavaScript
54 lines
1.8 KiB
JavaScript
import eslint from '@eslint/js'
|
|
import tseslint from 'typescript-eslint'
|
|
import pluginVue from 'eslint-plugin-vue'
|
|
|
|
export default tseslint.config(
|
|
{ ignores: ['**/node_modules', '**/dist'] },
|
|
eslint.configs.recommended,
|
|
tseslint.configs.base,
|
|
...pluginVue.configs['flat/recommended'],
|
|
{
|
|
files: ['**/*.vue'],
|
|
languageOptions: {
|
|
parserOptions: {
|
|
parser: '@typescript-eslint/parser',
|
|
},
|
|
},
|
|
},
|
|
{
|
|
rules: {
|
|
'no-debugger': 'error',
|
|
'no-console': ['error', { allow: ['warn', 'error', 'info', 'clear'] }],
|
|
'no-unused-vars': 'off',
|
|
'no-undef': 'off',
|
|
'prefer-const': 'error',
|
|
'sort-imports': ['error', { ignoreDeclarationSort: true }],
|
|
'no-duplicate-imports': 'error',
|
|
// This rule enforces the preference for using '@ts-expect-error' comments in TypeScript
|
|
// code to indicate intentional type errors, improving code clarity and maintainability.
|
|
'@typescript-eslint/prefer-ts-expect-error': 'error',
|
|
// Enforce the use of 'import type' for importing types
|
|
'@typescript-eslint/consistent-type-imports': [
|
|
'error',
|
|
{
|
|
fixStyle: 'inline-type-imports',
|
|
disallowTypeAnnotations: false,
|
|
},
|
|
],
|
|
// Enforce the use of top-level import type qualifier when an import only has specifiers with inline type qualifiers
|
|
'@typescript-eslint/no-import-type-side-effects': 'error',
|
|
'vue/max-attributes-per-line': 'off',
|
|
'vue/singleline-html-element-content-newline': 'off',
|
|
'vue/multi-word-component-names': 'off',
|
|
'vue/html-self-closing': [
|
|
'error',
|
|
{
|
|
html: { component: 'always', normal: 'always', void: 'any' },
|
|
math: 'always',
|
|
svg: 'always',
|
|
},
|
|
],
|
|
},
|
|
},
|
|
)
|