fix(linter): produce type information for the eslint-plugin main entry point (#29855)

## Current Behavior

The `@nx/eslint-plugin` main entry point is untyped.

## Expected Behavior

The `@nx/eslint-plugin` main entry point should provide types.

## Related Issue(s)

Fixes #28448 
Fixes #29816
This commit is contained in:
Leosvel Pérez Espinosa 2025-02-04 15:15:23 +01:00 committed by GitHub
parent bc4ded002e
commit 1fbcd73cde
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -24,8 +24,7 @@ import dependencyChecks, {
// Resolve any custom rules that might exist in the current workspace // Resolve any custom rules that might exist in the current workspace
import { workspaceRules } from './resolve-workspace-rules'; import { workspaceRules } from './resolve-workspace-rules';
module.exports = { const configs = {
configs: {
// eslintrc configs // eslintrc configs
typescript, typescript,
javascript, javascript,
@ -39,35 +38,38 @@ module.exports = {
// flat configs // flat configs
// Note: Using getters here to avoid importing packages `angular-eslint` statically, which can lead to errors if not installed. // Note: Using getters here to avoid importing packages `angular-eslint` statically, which can lead to errors if not installed.
'flat/base': flatBase, 'flat/base': flatBase,
get ['flat/typescript']() { get ['flat/typescript'](): typeof import('./flat-configs/typescript').default {
return require('./flat-configs/typescript').default; return require('./flat-configs/typescript').default;
}, },
get ['flat/javascript']() { get ['flat/javascript'](): typeof import('./flat-configs/javascript').default {
return require('./flat-configs/javascript').default; return require('./flat-configs/javascript').default;
}, },
get ['flat/react']() { get ['flat/react'](): typeof import('./flat-configs/react-tmp').default {
return require('./flat-configs/react-tmp').default; return require('./flat-configs/react-tmp').default;
}, },
get ['flat/react-base']() { get ['flat/react-base'](): typeof import('./flat-configs/react-base').default {
return require('./flat-configs/react-base').default; return require('./flat-configs/react-base').default;
}, },
get ['flat/react-typescript']() { get ['flat/react-typescript'](): typeof import('./flat-configs/react-typescript').default {
return require('./flat-configs/react-typescript').default; return require('./flat-configs/react-typescript').default;
}, },
get ['flat/react-jsx']() { get ['flat/react-jsx'](): typeof import('./flat-configs/react-jsx').default {
return require('./flat-configs/react-jsx').default; return require('./flat-configs/react-jsx').default;
}, },
get ['flat/angular']() { get ['flat/angular'](): typeof import('./flat-configs/angular').default {
return require('./flat-configs/angular').default; return require('./flat-configs/angular').default;
}, },
get ['flat/angular-template']() { get ['flat/angular-template'](): typeof import('./flat-configs/angular-template').default {
return require('./flat-configs/angular-template').default; return require('./flat-configs/angular-template').default;
}, },
}, };
rules: {
const rules = {
[enforceModuleBoundariesRuleName]: enforceModuleBoundaries, [enforceModuleBoundariesRuleName]: enforceModuleBoundaries,
[nxPluginChecksRuleName]: nxPluginChecksRule, [nxPluginChecksRuleName]: nxPluginChecksRule,
[dependencyChecksRuleName]: dependencyChecks, [dependencyChecksRuleName]: dependencyChecks,
...workspaceRules, ...workspaceRules,
},
}; };
export default { configs, rules };
export { configs, rules };