a6a4ceee86
* fixing up typing * better dynamic loader mechanism * buildReqLoaders cleanup * added caching to loaders * ensuring all loaders are async * fe2 plugins error handling fix * feat(shared): true-myth result structures & other auth policy improvements * moving workspaceCore loaders to correct place
49 lines
1.0 KiB
JavaScript
49 lines
1.0 KiB
JavaScript
import { baseConfigs, globals, getESMDirname } from '../../eslint.config.mjs'
|
|
import tseslint from 'typescript-eslint'
|
|
|
|
/**
|
|
* @type {Array<import('eslint').Linter.FlatConfig>}
|
|
*/
|
|
const configs = [
|
|
...baseConfigs,
|
|
{
|
|
languageOptions: {
|
|
globals: {
|
|
...globals.node
|
|
}
|
|
}
|
|
},
|
|
...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' // to restrictive
|
|
}
|
|
},
|
|
{
|
|
files: ['**/*.d.ts'],
|
|
rules: {
|
|
'@typescript-eslint/no-explicit-any': 'off'
|
|
}
|
|
},
|
|
{
|
|
files: ['**/*.spec.ts'],
|
|
rules: {
|
|
'@typescript-eslint/require-await': 'off' // so we can easily make sync mocked loaders -> async
|
|
}
|
|
}
|
|
]
|
|
|
|
export default configs
|