File tree Expand file tree Collapse file tree 2 files changed +34
-0
lines changed
tests/cases/unittests/services Expand file tree Collapse file tree 2 files changed +34
-0
lines changed Original file line number Diff line number Diff line change @@ -2152,6 +2152,7 @@ namespace ts {
21522152 //
21532153 // export * from "mod"
21542154 // export {a as b} from "mod"
2155+ // export import i = require("mod")
21552156
21562157 while ( token !== SyntaxKind . EndOfFileToken ) {
21572158 if ( token === SyntaxKind . DeclareKeyword ) {
@@ -2276,6 +2277,25 @@ namespace ts {
22762277 }
22772278 }
22782279 }
2280+ else if ( token === SyntaxKind . ImportKeyword ) {
2281+ token = scanner . scan ( ) ;
2282+ if ( token === SyntaxKind . Identifier || isKeyword ( token ) ) {
2283+ token = scanner . scan ( ) ;
2284+ if ( token === SyntaxKind . EqualsToken ) {
2285+ token = scanner . scan ( ) ;
2286+ if ( token === SyntaxKind . RequireKeyword ) {
2287+ token = scanner . scan ( ) ;
2288+ if ( token === SyntaxKind . OpenParenToken ) {
2289+ token = scanner . scan ( ) ;
2290+ if ( token === SyntaxKind . StringLiteral ) {
2291+ // export import i = require("mod");
2292+ recordModuleName ( ) ;
2293+ }
2294+ }
2295+ }
2296+ }
2297+ }
2298+ }
22792299 }
22802300 token = scanner . scan ( ) ;
22812301 }
Original file line number Diff line number Diff line change @@ -173,6 +173,20 @@ describe('PreProcessFile:', function () {
173173 isLibFile : false
174174 } )
175175 } ) ;
176+
177+ it ( "Correctly handeles export import declarations" , function ( ) {
178+ test ( "export import a = require(\"m1\");" ,
179+ true ,
180+ {
181+ referencedFiles : [ ] ,
182+ importedFiles : [
183+ { fileName : "m1" , pos : 26 , end : 28 }
184+ ] ,
185+ ambientExternalModules : undefined ,
186+ isLibFile : false
187+ } )
188+ } ) ;
189+
176190 } ) ;
177191} ) ;
178192
You can’t perform that action at this time.
0 commit comments