1 | /**
|
2 | * @license
|
3 | * Copyright Google Inc. All Rights Reserved.
|
4 | *
|
5 | * Use of this source code is governed by an MIT-style license that can be
|
6 | * found in the LICENSE file at https://angular.io/license
|
7 | */
|
8 | (function (factory) {
|
9 | if (typeof module === "object" && typeof module.exports === "object") {
|
10 | var v = factory(require, exports);
|
11 | if (v !== undefined) module.exports = v;
|
12 | }
|
13 | else if (typeof define === "function" && define.amd) {
|
14 | define("@angular/compiler-cli/src/ngtools_api", ["require", "exports", "@angular/compiler-cli/src/transformers/compiler_host", "@angular/compiler-cli/src/transformers/entry_points"], factory);
|
15 | }
|
16 | })(function (require, exports) {
|
17 | ;
|
18 | Object.defineProperty(exports, "__esModule", { value: true });
|
19 | const compiler_host_1 = require("@angular/compiler-cli/src/transformers/compiler_host");
|
20 | const entry_points_1 = require("@angular/compiler-cli/src/transformers/entry_points");
|
21 | /**
|
22 | * @internal
|
23 | * @deprecatd Use ngtools_api2 instead!
|
24 | */
|
25 | class NgTools_InternalApi_NG_2 {
|
26 | /**
|
27 | * @internal
|
28 | */
|
29 | static codeGen(options) {
|
30 | throw throwNotSupportedError();
|
31 | }
|
32 | /**
|
33 | * @internal
|
34 | */
|
35 | static listLazyRoutes(options) {
|
36 | // TODO(tbosch): Also throwNotSupportedError once Angular CLI 1.5.1 ships,
|
37 | // as we only needed this to support Angular CLI 1.5.0 rc.*
|
38 | const ngProgram = entry_points_1.createProgram({
|
39 | rootNames: options.program.getRootFileNames(),
|
40 | options: Object.assign({}, options.angularCompilerOptions, { collectAllErrors: true }),
|
41 | host: options.host
|
42 | });
|
43 | const lazyRoutes = ngProgram.listLazyRoutes(options.entryModule);
|
44 | // reset the referencedFiles that the ng.Program added to the SourceFiles
|
45 | // as the host might be caching the source files!
|
46 | for (const sourceFile of options.program.getSourceFiles()) {
|
47 | const originalReferences = compiler_host_1.getOriginalReferences(sourceFile);
|
48 | if (originalReferences) {
|
49 | sourceFile.referencedFiles = originalReferences;
|
50 | }
|
51 | }
|
52 | const result = {};
|
53 | lazyRoutes.forEach(lazyRoute => {
|
54 | const route = lazyRoute.route;
|
55 | const referencedFilePath = lazyRoute.referencedModule.filePath;
|
56 | if (result[route] && result[route] != referencedFilePath) {
|
57 | throw new Error(`Duplicated path in loadChildren detected: "${route}" is used in 2 loadChildren, ` +
|
58 | `but they point to different modules "(${result[route]} and ` +
|
59 | `"${referencedFilePath}"). Webpack cannot distinguish on context and would fail to ` +
|
60 | 'load the proper one.');
|
61 | }
|
62 | result[route] = referencedFilePath;
|
63 | });
|
64 | return result;
|
65 | }
|
66 | /**
|
67 | * @internal
|
68 | */
|
69 | static extractI18n(options) {
|
70 | throw throwNotSupportedError();
|
71 | }
|
72 | }
|
73 | exports.NgTools_InternalApi_NG_2 = NgTools_InternalApi_NG_2;
|
74 | function throwNotSupportedError() {
|
75 | throw new Error(`Please update @angular/cli. Angular 5+ requires at least Angular CLI 1.5+`);
|
76 | }
|
77 | });
|
78 | //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0b29sc19hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvc3JjL25ndG9vbHNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7O0lBa0JILHdGQUFtRTtJQUNuRSxzRkFBMEQ7SUE2QzFEOzs7T0FHRztJQUNILE1BQWEsd0JBQXdCO1FBQ25DOztXQUVHO1FBQ0gsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFnRDtZQUM3RCxNQUFNLHNCQUFzQixFQUFFLENBQUM7UUFDakMsQ0FBQztRQUVEOztXQUVHO1FBQ0gsTUFBTSxDQUFDLGNBQWMsQ0FBQyxPQUF1RDtZQUUzRSwwRUFBMEU7WUFDMUUsMkRBQTJEO1lBQzNELE1BQU0sU0FBUyxHQUFHLDRCQUFhLENBQUM7Z0JBQzlCLFNBQVMsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUFFO2dCQUM3QyxPQUFPLG9CQUFNLE9BQU8sQ0FBQyxzQkFBc0IsSUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEdBQUM7Z0JBQ3BFLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSTthQUNuQixDQUFDLENBQUM7WUFDSCxNQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUVqRSx5RUFBeUU7WUFDekUsaURBQWlEO1lBQ2pELEtBQUssTUFBTSxVQUFVLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsRUFBRTtnQkFDekQsTUFBTSxrQkFBa0IsR0FBRyxxQ0FBcUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDN0QsSUFBSSxrQkFBa0IsRUFBRTtvQkFDdEIsVUFBVSxDQUFDLGVBQWUsR0FBRyxrQkFBa0IsQ0FBQztpQkFDakQ7YUFDRjtZQUVELE1BQU0sTUFBTSxHQUEwQyxFQUFFLENBQUM7WUFDekQsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDN0IsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQztnQkFDOUIsTUFBTSxrQkFBa0IsR0FBRyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDO2dCQUMvRCxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksa0JBQWtCLEVBQUU7b0JBQ3hELE1BQU0sSUFBSSxLQUFLLENBQ1gsOENBQThDLEtBQUssK0JBQStCO3dCQUNsRix5Q0FBeUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPO3dCQUM3RCxJQUFJLGtCQUFrQiw4REFBOEQ7d0JBQ3BGLHNCQUFzQixDQUFDLENBQUM7aUJBQzdCO2dCQUNELE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxrQkFBa0IsQ0FBQztZQUNyQyxDQUFDLENBQUMsQ0FBQztZQUVILE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUM7UUFFRDs7V0FFRztRQUNILE1BQU0sQ0FBQyxXQUFXLENBQUMsT0FBb0Q7WUFDckUsTUFBTSxzQkFBc0IsRUFBRSxDQUFDO1FBQ2pDLENBQUM7S0FDRjtJQXRERCw0REFzREM7SUFFRCxTQUFTLHNCQUFzQjtRQUM3QixNQUFNLElBQUksS0FBSyxDQUFDLDJFQUEyRSxDQUFDLENBQUM7SUFDL0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuLyoqXG4gKiBUaGlzIGlzIGEgcHJpdmF0ZSBBUEkgZm9yIHRoZSBuZ3Rvb2xzIHRvb2xraXQuXG4gKlxuICogVGhpcyBBUEkgc2hvdWxkIGJlIHN0YWJsZSBmb3IgTkcgMi4gSXQgY2FuIGJlIHJlbW92ZWQgaW4gTkcgNC4uLiwgYnV0IHNob3VsZCBiZSByZXBsYWNlZCBieVxuICogc29tZXRoaW5nIGVsc2UuXG4gKi9cblxuLyoqXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBDaGFuZ2VzIHRvIHRoaXMgZmlsZSBuZWVkIHRvIGJlIGFwcHJvdmVkIGJ5IHRoZSBBbmd1bGFyIENMSSB0ZWFtLiAqXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbmltcG9ydCB7Q29tcGlsZXJPcHRpb25zfSBmcm9tICcuL3RyYW5zZm9ybWVycy9hcGknO1xuaW1wb3J0IHtnZXRPcmlnaW5hbFJlZmVyZW5jZXN9IGZyb20gJy4vdHJhbnNmb3JtZXJzL2NvbXBpbGVyX2hvc3QnO1xuaW1wb3J0IHtjcmVhdGVQcm9ncmFtfSBmcm9tICcuL3RyYW5zZm9ybWVycy9lbnRyeV9wb2ludHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5nVG9vbHNfSW50ZXJuYWxBcGlfTkcyX0NvZGVHZW5fT3B0aW9ucyB7XG4gIGJhc2VQYXRoOiBzdHJpbmc7XG4gIGNvbXBpbGVyT3B0aW9uczogdHMuQ29tcGlsZXJPcHRpb25zO1xuICBwcm9ncmFtOiB0cy5Qcm9ncmFtO1xuICBob3N0OiB0cy5Db21waWxlckhvc3Q7XG5cbiAgYW5ndWxhckNvbXBpbGVyT3B0aW9uczogQ29tcGlsZXJPcHRpb25zO1xuXG4gIC8vIGkxOG4gb3B0aW9ucy5cbiAgaTE4bkZvcm1hdD86IHN0cmluZztcbiAgaTE4bkZpbGU/OiBzdHJpbmc7XG4gIGxvY2FsZT86IHN0cmluZztcbiAgbWlzc2luZ1RyYW5zbGF0aW9uPzogc3RyaW5nO1xuXG4gIHJlYWRSZXNvdXJjZTogKGZpbGVOYW1lOiBzdHJpbmcpID0+IFByb21pc2U8c3RyaW5nPjtcblxuICAvLyBFdmVyeSBuZXcgcHJvcGVydHkgdW5kZXIgdGhpcyBsaW5lIHNob3VsZCBiZSBvcHRpb25hbC5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBOZ1Rvb2xzX0ludGVybmFsQXBpX05HMl9MaXN0TGF6eVJvdXRlc19PcHRpb25zIHtcbiAgcHJvZ3JhbTogdHMuUHJvZ3JhbTtcbiAgaG9zdDogdHMuQ29tcGlsZXJIb3N0O1xuICBhbmd1bGFyQ29tcGlsZXJPcHRpb25zOiBDb21waWxlck9wdGlvbnM7XG4gIGVudHJ5TW9kdWxlOiBzdHJpbmc7XG5cbiAgLy8gRXZlcnkgbmV3IHByb3BlcnR5IHVuZGVyIHRoaXMgbGluZSBzaG91bGQgYmUgb3B0aW9uYWwuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmdUb29sc19JbnRlcm5hbEFwaV9OR18yX0xhenlSb3V0ZU1hcCB7IFtyb3V0ZTogc3RyaW5nXTogc3RyaW5nOyB9XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmdUb29sc19JbnRlcm5hbEFwaV9ORzJfRXh0cmFjdEkxOG5fT3B0aW9ucyB7XG4gIGJhc2VQYXRoOiBzdHJpbmc7XG4gIGNvbXBpbGVyT3B0aW9uczogdHMuQ29tcGlsZXJPcHRpb25zO1xuICBwcm9ncmFtOiB0cy5Qcm9ncmFtO1xuICBob3N0OiB0cy5Db21waWxlckhvc3Q7XG4gIGFuZ3VsYXJDb21waWxlck9wdGlvbnM6IENvbXBpbGVyT3B0aW9ucztcbiAgaTE4bkZvcm1hdD86IHN0cmluZztcbiAgcmVhZFJlc291cmNlOiAoZmlsZU5hbWU6IHN0cmluZykgPT4gUHJvbWlzZTxzdHJpbmc+O1xuICAvLyBFdmVyeSBuZXcgcHJvcGVydHkgdW5kZXIgdGhpcyBsaW5lIHNob3VsZCBiZSBvcHRpb25hbC5cbiAgbG9jYWxlPzogc3RyaW5nO1xuICBvdXRGaWxlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICogQGRlcHJlY2F0ZCBVc2Ugbmd0b29sc19hcGkyIGluc3RlYWQhXG4gKi9cbmV4cG9ydCBjbGFzcyBOZ1Rvb2xzX0ludGVybmFsQXBpX05HXzIge1xuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBzdGF0aWMgY29kZUdlbihvcHRpb25zOiBOZ1Rvb2xzX0ludGVybmFsQXBpX05HMl9Db2RlR2VuX09wdGlvbnMpOiBQcm9taXNlPGFueT4ge1xuICAgIHRocm93IHRocm93Tm90U3VwcG9ydGVkRXJyb3IoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHN0YXRpYyBsaXN0TGF6eVJvdXRlcyhvcHRpb25zOiBOZ1Rvb2xzX0ludGVybmFsQXBpX05HMl9MaXN0TGF6eVJvdXRlc19PcHRpb25zKTpcbiAgICAgIE5nVG9vbHNfSW50ZXJuYWxBcGlfTkdfMl9MYXp5Um91dGVNYXAge1xuICAgIC8vIFRPRE8odGJvc2NoKTogQWxzbyB0aHJvd05vdFN1cHBvcnRlZEVycm9yIG9uY2UgQW5ndWxhciBDTEkgMS41LjEgc2hpcHMsXG4gICAgLy8gYXMgd2Ugb25seSBuZWVkZWQgdGhpcyB0byBzdXBwb3J0IEFuZ3VsYXIgQ0xJIDEuNS4wIHJjLipcbiAgICBjb25zdCBuZ1Byb2dyYW0gPSBjcmVhdGVQcm9ncmFtKHtcbiAgICAgIHJvb3ROYW1lczogb3B0aW9ucy5wcm9ncmFtLmdldFJvb3RGaWxlTmFtZXMoKSxcbiAgICAgIG9wdGlvbnM6IHsuLi5vcHRpb25zLmFuZ3VsYXJDb21waWxlck9wdGlvbnMsIGNvbGxlY3RBbGxFcnJvcnM6IHRydWV9LFxuICAgICAgaG9zdDogb3B0aW9ucy5ob3N0XG4gICAgfSk7XG4gICAgY29uc3QgbGF6eVJvdXRlcyA9IG5nUHJvZ3JhbS5saXN0TGF6eVJvdXRlcyhvcHRpb25zLmVudHJ5TW9kdWxlKTtcblxuICAgIC8vIHJlc2V0IHRoZSByZWZlcmVuY2VkRmlsZXMgdGhhdCB0aGUgbmcuUHJvZ3JhbSBhZGRlZCB0byB0aGUgU291cmNlRmlsZXNcbiAgICAvLyBhcyB0aGUgaG9zdCBtaWdodCBiZSBjYWNoaW5nIHRoZSBzb3VyY2UgZmlsZXMhXG4gICAgZm9yIChjb25zdCBzb3VyY2VGaWxlIG9mIG9wdGlvbnMucHJvZ3JhbS5nZXRTb3VyY2VGaWxlcygpKSB7XG4gICAgICBjb25zdCBvcmlnaW5hbFJlZmVyZW5jZXMgPSBnZXRPcmlnaW5hbFJlZmVyZW5jZXMoc291cmNlRmlsZSk7XG4gICAgICBpZiAob3JpZ2luYWxSZWZlcmVuY2VzKSB7XG4gICAgICAgIHNvdXJjZUZpbGUucmVmZXJlbmNlZEZpbGVzID0gb3JpZ2luYWxSZWZlcmVuY2VzO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IHJlc3VsdDogTmdUb29sc19JbnRlcm5hbEFwaV9OR18yX0xhenlSb3V0ZU1hcCA9IHt9O1xuICAgIGxhenlSb3V0ZXMuZm9yRWFjaChsYXp5Um91dGUgPT4ge1xuICAgICAgY29uc3Qgcm91dGUgPSBsYXp5Um91dGUucm91dGU7XG4gICAgICBjb25zdCByZWZlcmVuY2VkRmlsZVBhdGggPSBsYXp5Um91dGUucmVmZXJlbmNlZE1vZHVsZS5maWxlUGF0aDtcbiAgICAgIGlmIChyZXN1bHRbcm91dGVdICYmIHJlc3VsdFtyb3V0ZV0gIT0gcmVmZXJlbmNlZEZpbGVQYXRoKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgIGBEdXBsaWNhdGVkIHBhdGggaW4gbG9hZENoaWxkcmVuIGRldGVjdGVkOiBcIiR7cm91dGV9XCIgaXMgdXNlZCBpbiAyIGxvYWRDaGlsZHJlbiwgYCArXG4gICAgICAgICAgICBgYnV0IHRoZXkgcG9pbnQgdG8gZGlmZmVyZW50IG1vZHVsZXMgXCIoJHtyZXN1bHRbcm91dGVdfSBhbmQgYCArXG4gICAgICAgICAgICBgXCIke3JlZmVyZW5jZWRGaWxlUGF0aH1cIikuIFdlYnBhY2sgY2Fubm90IGRpc3Rpbmd1aXNoIG9uIGNvbnRleHQgYW5kIHdvdWxkIGZhaWwgdG8gYCArXG4gICAgICAgICAgICAnbG9hZCB0aGUgcHJvcGVyIG9uZS4nKTtcbiAgICAgIH1cbiAgICAgIHJlc3VsdFtyb3V0ZV0gPSByZWZlcmVuY2VkRmlsZVBhdGg7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgc3RhdGljIGV4dHJhY3RJMThuKG9wdGlvbnM6IE5nVG9vbHNfSW50ZXJuYWxBcGlfTkcyX0V4dHJhY3RJMThuX09wdGlvbnMpOiBQcm9taXNlPGFueT4ge1xuICAgIHRocm93IHRocm93Tm90U3VwcG9ydGVkRXJyb3IoKTtcbiAgfVxufVxuXG5mdW5jdGlvbiB0aHJvd05vdFN1cHBvcnRlZEVycm9yKCkge1xuICB0aHJvdyBuZXcgRXJyb3IoYFBsZWFzZSB1cGRhdGUgQGFuZ3VsYXIvY2xpLiBBbmd1bGFyIDUrIHJlcXVpcmVzIGF0IGxlYXN0IEFuZ3VsYXIgQ0xJIDEuNStgKTtcbn1cbiJdfQ== |
\ | No newline at end of file |