Skip to content

Commit 425a418

Browse files
author
Andy
authored
Handle empty declaration list in Convert to ES6 Module (#21843)
* Handle empty declaration list in Convert to ES6 Module * Fix test
1 parent f989ef7 commit 425a418

File tree

2 files changed

+11
-2
lines changed

2 files changed

+11
-2
lines changed

src/services/refactors/convertToEs6Module.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@ namespace ts.refactor {
3333
return isExportsOrModuleExportsOrAlias(sourceFile, node as PropertyAccessExpression)
3434
|| isExportsOrModuleExportsOrAlias(sourceFile, (node as PropertyAccessExpression).expression);
3535
case SyntaxKind.VariableDeclarationList:
36-
const decl = (node as VariableDeclarationList).declarations[0];
37-
return isExportsOrModuleExportsOrAlias(sourceFile, decl.initializer);
36+
const decl = firstOrUndefined((node as VariableDeclarationList).declarations);
37+
return !!decl && isExportsOrModuleExportsOrAlias(sourceFile, decl.initializer);
3838
case SyntaxKind.VariableDeclaration:
3939
return isExportsOrModuleExportsOrAlias(sourceFile, (node as VariableDeclaration).initializer);
4040
default:
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
/// <reference path='fourslash.ts' />
2+
3+
// @allowJs: true
4+
5+
// @Filename: /a.js
6+
////c[|o|]nst;
7+
////require("x");
8+
9+
goTo.eachRange(() => verify.not.refactorAvailable("Convert to ES6 module"));

0 commit comments

Comments
 (0)