Skip to content

Commit e383691

Browse files
authored
fix(eslint-plugin): [no-unused-expressions] ignore import expressions (#2130)
1 parent dc061ed commit e383691

File tree

3 files changed

+10
-2
lines changed

3 files changed

+10
-2
lines changed

Diff for: packages/eslint-plugin/src/rules/no-unused-expressions.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,8 @@ export default util.createRule<Options, MessageIds>({
2626
ExpressionStatement(node): void {
2727
if (
2828
node.directive ||
29-
node.expression.type === AST_NODE_TYPES.OptionalCallExpression
29+
node.expression.type === AST_NODE_TYPES.OptionalCallExpression ||
30+
node.expression.type === AST_NODE_TYPES.ImportExpression
3031
) {
3132
return;
3233
}

Diff for: packages/eslint-plugin/tests/rules/no-unused-expressions.test.ts

+6
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,12 @@ ruleTester.run('no-unused-expressions', rule, {
6565
return null;
6666
}
6767
`,
68+
`
69+
import('./foo');
70+
`,
71+
`
72+
import('./foo').then(() => {});
73+
`,
6874
],
6975
invalid: [
7076
{

Diff for: packages/typescript-estree/src/ts-estree/ts-estree.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -359,7 +359,8 @@ export type Expression =
359359
| SpreadElement
360360
| TSAsExpression
361361
| TSUnaryExpression
362-
| YieldExpression;
362+
| YieldExpression
363+
| ImportExpression;
363364
export type ExpressionWithTypeArguments =
364365
| TSClassImplements
365366
| TSInterfaceHeritage;

0 commit comments

Comments
 (0)