Angular Build Optimizer
Angular Build Optimizer contains Angular optimizations applicable to JavaScript code as a TypeScript transform pipeline.
Available optimizations
Transformations applied depend on file content:
- Class fold, Scrub file and Prefix functions: applied to Angular apps and libraries.
- Import tslib: applied when TypeScript helpers are found.
Some of these optimizations add /*@__PURE__*/ comments.
These are used by JS optimization tools to identify pure functions that can potentially be dropped.
Class fold
Static properties are folded into ES5 classes:
// input;Clazz.prop = 1; // output;Scrub file
Angular decorators, property decorators and constructor parameters are removed, while leaving non-Angular ones intact.
// input;;;Clazz.decorators = ;Clazz.propDecorators =;Clazz.ctorParameters = ;; // output;;;Clazz.decorators = ;;Prefix functions
Adds /*@__PURE__*/ comments to top level downleveled class declarations and instantiation.
Warning: this transform assumes the file is a pure module. It should not be used with unpure modules.
// input;;; // output;;;Prefix Classes
Adds /*@__PURE__*/ to downleveled TypeScript classes.
// input; // output;Import tslib
TypeScript helpers (__extends/__decorate/__metadata/__param) are replaced with tslib imports whenever found.
// input; // output;Wrap enums
Wrap downleveled TypeScript enums in a function, and adds /*@__PURE__*/ comment.
// input;ChangeDetectionStrategy || ChangeDetectionStrategy = ; // output;Library Usage
; ;Available options:
Webpack loader usage:
; module.exports =CLI usage
build-optimizer input.jsbuild-optimizer input.js output.js
