@@ -5614,24 +5614,28 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
56145614
56155615 // emit prologue directives prior to __extends
56165616 var startIndex = emitDirectivePrologues ( node . statements , /*startWithNewLine*/ false ) ;
5617- // Only Emit __extends function when target ES5.
5618- // For target ES6 and above, we can emit classDeclaration as is.
5619- if ( ( languageVersion < ScriptTarget . ES6 ) && ( ! extendsEmitted && resolver . getNodeCheckFlags ( node ) & NodeCheckFlags . EmitExtends ) ) {
5620- writeLines ( extendsHelper ) ;
5621- extendsEmitted = true ;
5622- }
56235617
5624- if ( ! decorateEmitted && resolver . getNodeCheckFlags ( node ) & NodeCheckFlags . EmitDecorate ) {
5625- writeLines ( decorateHelper ) ;
5626- if ( compilerOptions . emitDecoratorMetadata ) {
5627- writeLines ( metadataHelper ) ;
5618+ // Only emit helpers if the user did not say otherwise.
5619+ if ( ! compilerOptions . noEmitHelpers ) {
5620+ // Only Emit __extends function when target ES5.
5621+ // For target ES6 and above, we can emit classDeclaration as is.
5622+ if ( ( languageVersion < ScriptTarget . ES6 ) && ( ! extendsEmitted && resolver . getNodeCheckFlags ( node ) & NodeCheckFlags . EmitExtends ) ) {
5623+ writeLines ( extendsHelper ) ;
5624+ extendsEmitted = true ;
5625+ }
5626+
5627+ if ( ! decorateEmitted && resolver . getNodeCheckFlags ( node ) & NodeCheckFlags . EmitDecorate ) {
5628+ writeLines ( decorateHelper ) ;
5629+ if ( compilerOptions . emitDecoratorMetadata ) {
5630+ writeLines ( metadataHelper ) ;
5631+ }
5632+ decorateEmitted = true ;
56285633 }
5629- decorateEmitted = true ;
5630- }
56315634
5632- if ( ! paramEmitted && resolver . getNodeCheckFlags ( node ) & NodeCheckFlags . EmitParam ) {
5633- writeLines ( paramHelper ) ;
5634- paramEmitted = true ;
5635+ if ( ! paramEmitted && resolver . getNodeCheckFlags ( node ) & NodeCheckFlags . EmitParam ) {
5636+ writeLines ( paramHelper ) ;
5637+ paramEmitted = true ;
5638+ }
56355639 }
56365640
56375641 if ( isExternalModule ( node ) || compilerOptions . separateCompilation ) {
0 commit comments