@@ -51,7 +51,7 @@ namespace ts {
51
51
let currentNamespace : ModuleDeclaration ;
52
52
let currentNamespaceContainerName : Identifier ;
53
53
let currentScope : SourceFile | Block | ModuleBlock | CaseBlock ;
54
- let currentSourceFileTslib : Identifier ;
54
+ let currentSourceFileExternalHelpersModuleName : Identifier ;
55
55
56
56
/**
57
57
* Keeps track of whether expression substitution has been enabled for specific edge cases.
@@ -432,22 +432,22 @@ namespace ts {
432
432
startLexicalEnvironment ( ) ;
433
433
const statements : Statement [ ] = [ ] ;
434
434
const statementOffset = addPrologueDirectives ( statements , node . statements ) ;
435
- const tslib = createUniqueName ( "tslib" ) ;
436
- const tslibImport = createImportDeclaration (
437
- createImportClause ( /*name*/ undefined , createNamespaceImport ( tslib ) ) ,
438
- createLiteral ( "tslib" )
435
+ const externalHelpersModuleName = createUniqueName ( externalHelpersModuleNameText ) ;
436
+ const externalHelpersModuleImport = createImportDeclaration (
437
+ createImportClause ( /*name*/ undefined , createNamespaceImport ( externalHelpersModuleName ) ) ,
438
+ createLiteral ( externalHelpersModuleNameText )
439
439
) ;
440
- tslibImport . parent = node ;
441
- tslibImport . flags &= ~ NodeFlags . Synthesized ;
442
- statements . push ( tslibImport ) ;
440
+ externalHelpersModuleImport . parent = node ;
441
+ externalHelpersModuleImport . flags &= ~ NodeFlags . Synthesized ;
442
+ statements . push ( externalHelpersModuleImport ) ;
443
443
444
- currentSourceFileTslib = tslib ;
444
+ currentSourceFileExternalHelpersModuleName = externalHelpersModuleName ;
445
445
addRange ( statements , visitNodes ( node . statements , visitor , isStatement , statementOffset ) ) ;
446
446
addRange ( statements , endLexicalEnvironment ( ) ) ;
447
- currentSourceFileTslib = undefined ;
447
+ currentSourceFileExternalHelpersModuleName = undefined ;
448
448
449
449
node = updateSourceFileNode ( node , createNodeArray ( statements , node . statements ) ) ;
450
- node . tslib = tslib ;
450
+ node . externalHelpersModuleName = externalHelpersModuleName ;
451
451
}
452
452
else {
453
453
node = visitEachChild ( node , visitor , context ) ;
@@ -1382,7 +1382,7 @@ namespace ts {
1382
1382
: undefined ;
1383
1383
1384
1384
const helper = createDecorateHelper (
1385
- currentSourceFileTslib ,
1385
+ currentSourceFileExternalHelpersModuleName ,
1386
1386
decoratorExpressions ,
1387
1387
prefix ,
1388
1388
memberName ,
@@ -1432,7 +1432,7 @@ namespace ts {
1432
1432
const expression = createAssignment (
1433
1433
decoratedClassAlias ,
1434
1434
createDecorateHelper (
1435
- currentSourceFileTslib ,
1435
+ currentSourceFileExternalHelpersModuleName ,
1436
1436
decoratorExpressions ,
1437
1437
getDeclarationName ( node )
1438
1438
)
@@ -1456,7 +1456,7 @@ namespace ts {
1456
1456
const result = createAssignment (
1457
1457
getDeclarationName ( node ) ,
1458
1458
createDecorateHelper (
1459
- currentSourceFileTslib ,
1459
+ currentSourceFileExternalHelpersModuleName ,
1460
1460
decoratorExpressions ,
1461
1461
getDeclarationName ( node )
1462
1462
) ,
@@ -1489,7 +1489,7 @@ namespace ts {
1489
1489
expressions = [ ] ;
1490
1490
for ( const decorator of decorators ) {
1491
1491
const helper = createParamHelper (
1492
- currentSourceFileTslib ,
1492
+ currentSourceFileExternalHelpersModuleName ,
1493
1493
transformDecorator ( decorator ) ,
1494
1494
parameterOffset ,
1495
1495
/*location*/ decorator . expression ) ;
@@ -1519,13 +1519,13 @@ namespace ts {
1519
1519
function addOldTypeMetadata ( node : Declaration , decoratorExpressions : Expression [ ] ) {
1520
1520
if ( compilerOptions . emitDecoratorMetadata ) {
1521
1521
if ( shouldAddTypeMetadata ( node ) ) {
1522
- decoratorExpressions . push ( createMetadataHelper ( currentSourceFileTslib , "design:type" , serializeTypeOfNode ( node ) ) ) ;
1522
+ decoratorExpressions . push ( createMetadataHelper ( currentSourceFileExternalHelpersModuleName , "design:type" , serializeTypeOfNode ( node ) ) ) ;
1523
1523
}
1524
1524
if ( shouldAddParamTypesMetadata ( node ) ) {
1525
- decoratorExpressions . push ( createMetadataHelper ( currentSourceFileTslib , "design:paramtypes" , serializeParameterTypesOfNode ( node ) ) ) ;
1525
+ decoratorExpressions . push ( createMetadataHelper ( currentSourceFileExternalHelpersModuleName , "design:paramtypes" , serializeParameterTypesOfNode ( node ) ) ) ;
1526
1526
}
1527
1527
if ( shouldAddReturnTypeMetadata ( node ) ) {
1528
- decoratorExpressions . push ( createMetadataHelper ( currentSourceFileTslib , "design:returntype" , serializeReturnTypeOfNode ( node ) ) ) ;
1528
+ decoratorExpressions . push ( createMetadataHelper ( currentSourceFileExternalHelpersModuleName , "design:returntype" , serializeReturnTypeOfNode ( node ) ) ) ;
1529
1529
}
1530
1530
}
1531
1531
}
@@ -1543,7 +1543,7 @@ namespace ts {
1543
1543
( properties || ( properties = [ ] ) ) . push ( createPropertyAssignment ( "returnType" , createArrowFunction ( /*modifiers*/ undefined , /*typeParameters*/ undefined , [ ] , /*type*/ undefined , /*equalsGreaterThanToken*/ undefined , serializeReturnTypeOfNode ( node ) ) ) ) ;
1544
1544
}
1545
1545
if ( properties ) {
1546
- decoratorExpressions . push ( createMetadataHelper ( currentSourceFileTslib , "design:typeinfo" , createObjectLiteral ( properties , /*location*/ undefined , /*multiLine*/ true ) ) ) ;
1546
+ decoratorExpressions . push ( createMetadataHelper ( currentSourceFileExternalHelpersModuleName , "design:typeinfo" , createObjectLiteral ( properties , /*location*/ undefined , /*multiLine*/ true ) ) ) ;
1547
1547
}
1548
1548
}
1549
1549
}
@@ -2234,7 +2234,7 @@ namespace ts {
2234
2234
statements . push (
2235
2235
createReturn (
2236
2236
createAwaiterHelper (
2237
- currentSourceFileTslib ,
2237
+ currentSourceFileExternalHelpersModuleName ,
2238
2238
hasLexicalArguments ,
2239
2239
promiseConstructor ,
2240
2240
transformFunctionBodyWorker ( < Block > node . body )
@@ -2261,7 +2261,7 @@ namespace ts {
2261
2261
}
2262
2262
else {
2263
2263
return createAwaiterHelper (
2264
- currentSourceFileTslib ,
2264
+ currentSourceFileExternalHelpersModuleName ,
2265
2265
hasLexicalArguments ,
2266
2266
promiseConstructor ,
2267
2267
< Block > transformConciseBodyWorker ( node . body , /*forceBlockFunctionBody*/ true )
0 commit comments