-
-
Notifications
You must be signed in to change notification settings - Fork 2.8k
Closed
Labels
accepting prsGo ahead, send a pull request that resolves this issueGo ahead, send a pull request that resolves this issuegood first issueGood for newcomersGood for newcomerslocked due to agePlease open a new issue if you'd like to say more. See https://typescript-eslint.io/contributing.Please open a new issue if you'd like to say more. See https://typescript-eslint.io/contributing.refactorPRs that refactor code onlyPRs that refactor code onlyrepo maintenancethings to do with maintenance of the repo, and not with code/docsthings to do with maintenance of the repo, and not with code/docs
Description
Suggestion
Followup for #8011 (comment)
We've added few utility functions to the packages/type-utils/src/builtinSymbolLikes.ts
Basically they contain the logic for determining whether a given type is a type from the TS default library or not
These files already contain similar logic, it'd be cool if we dedupe it!
typescript-eslint/packages/eslint-plugin/src/rules/no-implied-eval.ts
Lines 82 to 90 in 705370a
if (symbol && symbol.escapedName === FUNCTION_CONSTRUCTOR) { | |
const declarations = symbol.getDeclarations() ?? []; | |
for (const declaration of declarations) { | |
const sourceFile = declaration.getSourceFile(); | |
if (services.program.isSourceFileDefaultLibrary(sourceFile)) { | |
return true; | |
} | |
} | |
} |
typescript-eslint/packages/eslint-plugin/src/rules/no-implied-eval.ts
Lines 145 to 153 in 705370a
if (symbol) { | |
const declarations = symbol.getDeclarations() ?? []; | |
for (const declaration of declarations) { | |
const sourceFile = declaration.getSourceFile(); | |
if (services.program.isSourceFileDefaultLibrary(sourceFile)) { | |
context.report({ node, messageId: 'noFunctionConstructor' }); | |
return; | |
} | |
} |
Let's label this issue as good first issue
? Ref: #8011 (comment)
JoshuaKGoldberg
Metadata
Metadata
Assignees
Labels
accepting prsGo ahead, send a pull request that resolves this issueGo ahead, send a pull request that resolves this issuegood first issueGood for newcomersGood for newcomerslocked due to agePlease open a new issue if you'd like to say more. See https://typescript-eslint.io/contributing.Please open a new issue if you'd like to say more. See https://typescript-eslint.io/contributing.refactorPRs that refactor code onlyPRs that refactor code onlyrepo maintenancethings to do with maintenance of the repo, and not with code/docsthings to do with maintenance of the repo, and not with code/docs