ngc-webpack
Version:
A wrapper for the @ngtools/webpack with hooks into the compilation process
30 lines • 1.24 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
/**
* This module will patch the `@angular/compiler-cli` so it will correctly lower expression to declarations in decorators.
* See https://github.com/angular/angular/issues/20216
*/
var ts = require("typescript");
require("@angular/compiler-cli");
var lowerExpressions = require('@angular/compiler-cli/src/transformers/lower_expressions');
function touchNode(node) {
if (!node.parent) {
var original = ts.getOriginalNode(node);
if (original !== node && original.parent) {
node.parent = original.parent;
ts.forEachChild(node, touchNode);
}
}
}
var getExpressionLoweringTransformFactory = lowerExpressions.getExpressionLoweringTransformFactory;
lowerExpressions.getExpressionLoweringTransformFactory = function (requestsMap, program) {
var fn = getExpressionLoweringTransformFactory(requestsMap, program);
return function (context) { return function (sourceFile) {
var result = fn(context)(sourceFile);
if (result !== sourceFile) {
ts.forEachChild(result, touchNode);
}
return result;
}; };
};
//# sourceMappingURL=patch-angular-compiler-cli.js.map