diff --git a/packages/angular_devkit/build_optimizer/src/transforms/prefix-functions.ts b/packages/angular_devkit/build_optimizer/src/transforms/prefix-functions.ts index d2414bb98970..a692862a87bb 100644 --- a/packages/angular_devkit/build_optimizer/src/transforms/prefix-functions.ts +++ b/packages/angular_devkit/build_optimizer/src/transforms/prefix-functions.ts @@ -47,6 +47,7 @@ export function findTopLevelFunctions(parentNode: ts.Node): Set { if (ts.isFunctionDeclaration(node) || ts.isFunctionExpression(node) || ts.isClassDeclaration(node) + || ts.isClassExpression(node) || ts.isArrowFunction(node) || ts.isMethodDeclaration(node) ) { diff --git a/packages/angular_devkit/build_optimizer/src/transforms/prefix-functions_spec.ts b/packages/angular_devkit/build_optimizer/src/transforms/prefix-functions_spec.ts index d8b55c65a5d4..10c444afb057 100644 --- a/packages/angular_devkit/build_optimizer/src/transforms/prefix-functions_spec.ts +++ b/packages/angular_devkit/build_optimizer/src/transforms/prefix-functions_spec.ts @@ -167,4 +167,23 @@ describe('prefix-functions', () => { expect(tags.oneLine`${transform(input)}`).toEqual(tags.oneLine`${output}`); }); + + it('doesn\'t add comment when inside class expression', () => { + const input = tags.stripIndent` + let Foo = class Foo { + constructor() { + this.isExpandedChange = new EventEmitter(); + } + + set isExpanded(value) { + this.isExpandedChange.emit(value); + } + }; + `; + const output = tags.stripIndent` + ${input} + `; + + expect(tags.oneLine`${transform(input)}`).toEqual(tags.oneLine`${output}`); + }); });