thingsboard-html-demo/eslint.config.ts

41 lines
1.0 KiB
TypeScript
Raw Normal View History

2025-12-04 16:30:40 +08:00
import js from '@eslint/js'
import pluginVue from 'eslint-plugin-vue'
import * as parserVue from 'vue-eslint-parser'
import configPrettier from '@vue/eslint-config-prettier'
import configTypeScript from '@vue/eslint-config-typescript'
import { includeIgnoreFile } from '@eslint/compat'
import path from 'node:path'
import { fileURLToPath } from 'node:url'
const __filename = fileURLToPath(import.meta.url)
const __dirname = path.dirname(__filename)
const gitignorePath = path.resolve(__dirname, '.gitignore')
export default [
{
name: 'app/files-to-lint',
files: ['**/*.{ts,mts,tsx,vue}'],
},
{
name: 'app/files-to-ignore',
ignores: ['**/dist/**', '**/dist-ssr/**', '**/coverage/**'],
},
includeIgnoreFile(gitignorePath),
js.configs.recommended,
...pluginVue.configs['flat/essential'],
...configTypeScript(),
configPrettier,
{
languageOptions: {
ecmaVersion: 'latest',
sourceType: 'module',
parser: parserVue,
parserOptions: {
parser: configTypeScript.parser,
},
},
},
]