59 lines
1.2 KiB
JavaScript
59 lines
1.2 KiB
JavaScript
import { baseConfigs, globals, getESMDirname } from '../../eslint.config.mjs'
|
|
import tseslint from 'typescript-eslint'
|
|
|
|
/**
|
|
* @type {Array<import('eslint').Linter.FlatConfig>}
|
|
*/
|
|
const configs = [
|
|
...baseConfigs,
|
|
{
|
|
files: ['examples/browser/**/*.{ts,js}'],
|
|
languageOptions: {
|
|
globals: {
|
|
...globals.browser
|
|
}
|
|
}
|
|
},
|
|
...tseslint.configs.recommendedTypeChecked.map((c) => ({
|
|
...c,
|
|
files: [...(c.files || []), '**/*.ts', '**/*.d.ts']
|
|
})),
|
|
{
|
|
files: ['**/*.ts', '**/*.d.ts'],
|
|
languageOptions: {
|
|
parserOptions: {
|
|
tsconfigRootDir: getESMDirname(import.meta.url),
|
|
projectService: {
|
|
allowDefaultProject: ['*.ts']
|
|
}
|
|
}
|
|
},
|
|
rules: {
|
|
'@typescript-eslint/restrict-template-expressions': 'off'
|
|
}
|
|
},
|
|
{
|
|
files: ['**/*.d.ts'],
|
|
rules: {
|
|
'@typescript-eslint/no-explicit-any': 'off'
|
|
}
|
|
},
|
|
{
|
|
files: ['vite.config.ts'],
|
|
languageOptions: {
|
|
globals: {
|
|
...globals.node
|
|
}
|
|
}
|
|
},
|
|
{
|
|
files: ['**/*.spec.ts'],
|
|
rules: {
|
|
camelcase: 'off',
|
|
'@typescript-eslint/no-unused-expressions': 'off'
|
|
}
|
|
}
|
|
]
|
|
|
|
export default configs
|