From 62c0518916b13558618aa17f518e9666279e77af Mon Sep 17 00:00:00 2001 From: auvred Date: Fri, 1 Nov 2024 15:47:42 +0300 Subject: [PATCH] fix(eslint-plugin): [no-deprecated] report on deprecated variables used inside dynamic imports --- .../eslint-plugin/src/rules/no-deprecated.ts | 1 - .../tests/rules/no-deprecated.test.ts | 16 ++++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/packages/eslint-plugin/src/rules/no-deprecated.ts b/packages/eslint-plugin/src/rules/no-deprecated.ts index d8e7ebc0105e..fc24b2c76465 100644 --- a/packages/eslint-plugin/src/rules/no-deprecated.ts +++ b/packages/eslint-plugin/src/rules/no-deprecated.ts @@ -130,7 +130,6 @@ export default createRule({ case AST_NODE_TYPES.ExportDefaultDeclaration: case AST_NODE_TYPES.ExportNamedDeclaration: case AST_NODE_TYPES.ImportDeclaration: - case AST_NODE_TYPES.ImportExpression: return true; case AST_NODE_TYPES.ArrowFunctionExpression: diff --git a/packages/eslint-plugin/tests/rules/no-deprecated.test.ts b/packages/eslint-plugin/tests/rules/no-deprecated.test.ts index 46af24bf1c98..73601ad23d1e 100644 --- a/packages/eslint-plugin/tests/rules/no-deprecated.test.ts +++ b/packages/eslint-plugin/tests/rules/no-deprecated.test.ts @@ -429,6 +429,22 @@ ruleTester.run('no-deprecated', rule, { }, ], }, + { + code: ` + /** @deprecated */ const a = 'foo'; + import(\`./path/\${a}.js\`); + `, + errors: [ + { + column: 26, + data: { name: 'a' }, + endColumn: 27, + endLine: 3, + line: 3, + messageId: 'deprecated', + }, + ], + }, { code: ` declare function log(...args: unknown): void;