source: trip-planner-front/node_modules/@angular/compiler-cli/linker/src/file_linker/partial_linkers/partial_injectable_linker_1.js@ fa375fe

Last change on this file since fa375fe was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 9.5 KB
Line 
1(function (factory) {
2 if (typeof module === "object" && typeof module.exports === "object") {
3 var v = factory(require, exports);
4 if (v !== undefined) module.exports = v;
5 }
6 else if (typeof define === "function" && define.amd) {
7 define("@angular/compiler-cli/linker/src/file_linker/partial_linkers/partial_injectable_linker_1", ["require", "exports", "@angular/compiler", "@angular/compiler/src/output/output_ast", "@angular/compiler-cli/linker/src/fatal_linker_error", "@angular/compiler-cli/linker/src/file_linker/partial_linkers/util"], factory);
8 }
9})(function (require, exports) {
10 "use strict";
11 Object.defineProperty(exports, "__esModule", { value: true });
12 exports.toR3InjectableMeta = exports.PartialInjectableLinkerVersion1 = void 0;
13 /**
14 * @license
15 * Copyright Google LLC All Rights Reserved.
16 *
17 * Use of this source code is governed by an MIT-style license that can be
18 * found in the LICENSE file at https://angular.io/license
19 */
20 var compiler_1 = require("@angular/compiler");
21 var o = require("@angular/compiler/src/output/output_ast");
22 var fatal_linker_error_1 = require("@angular/compiler-cli/linker/src/fatal_linker_error");
23 var util_1 = require("@angular/compiler-cli/linker/src/file_linker/partial_linkers/util");
24 /**
25 * A `PartialLinker` that is designed to process `ɵɵngDeclareInjectable()` call expressions.
26 */
27 var PartialInjectableLinkerVersion1 = /** @class */ (function () {
28 function PartialInjectableLinkerVersion1() {
29 }
30 PartialInjectableLinkerVersion1.prototype.linkPartialDeclaration = function (constantPool, metaObj) {
31 var meta = toR3InjectableMeta(metaObj);
32 var def = compiler_1.compileInjectable(meta, /* resolveForwardRefs */ false);
33 return def.expression;
34 };
35 return PartialInjectableLinkerVersion1;
36 }());
37 exports.PartialInjectableLinkerVersion1 = PartialInjectableLinkerVersion1;
38 /**
39 * Derives the `R3InjectableMetadata` structure from the AST object.
40 */
41 function toR3InjectableMeta(metaObj) {
42 var typeExpr = metaObj.getValue('type');
43 var typeName = typeExpr.getSymbolName();
44 if (typeName === null) {
45 throw new fatal_linker_error_1.FatalLinkerError(typeExpr.expression, 'Unsupported type, its name could not be determined');
46 }
47 var meta = {
48 name: typeName,
49 type: util_1.wrapReference(typeExpr.getOpaque()),
50 internalType: typeExpr.getOpaque(),
51 typeArgumentCount: 0,
52 providedIn: metaObj.has('providedIn') ? util_1.extractForwardRef(metaObj.getValue('providedIn')) :
53 compiler_1.createR3ProviderExpression(o.literal(null), false),
54 };
55 if (metaObj.has('useClass')) {
56 meta.useClass = util_1.extractForwardRef(metaObj.getValue('useClass'));
57 }
58 if (metaObj.has('useFactory')) {
59 meta.useFactory = metaObj.getOpaque('useFactory');
60 }
61 if (metaObj.has('useExisting')) {
62 meta.useExisting = util_1.extractForwardRef(metaObj.getValue('useExisting'));
63 }
64 if (metaObj.has('useValue')) {
65 meta.useValue = util_1.extractForwardRef(metaObj.getValue('useValue'));
66 }
67 if (metaObj.has('deps')) {
68 meta.deps = metaObj.getArray('deps').map(function (dep) { return util_1.getDependency(dep.getObject()); });
69 }
70 return meta;
71 }
72 exports.toR3InjectableMeta = toR3InjectableMeta;
73});
74//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFydGlhbF9pbmplY3RhYmxlX2xpbmtlcl8xLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL2xpbmtlci9zcmMvZmlsZV9saW5rZXIvcGFydGlhbF9saW5rZXJzL3BhcnRpYWxfaW5qZWN0YWJsZV9saW5rZXJfMS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7SUFBQTs7Ozs7O09BTUc7SUFDSCw4Q0FBdUs7SUFDdkssMkRBQTZEO0lBRzdELDBGQUEwRDtJQUcxRCwwRkFBdUU7SUFFdkU7O09BRUc7SUFDSDtRQUFBO1FBUUEsQ0FBQztRQVBDLGdFQUFzQixHQUF0QixVQUNJLFlBQTBCLEVBQzFCLE9BQXFEO1lBQ3ZELElBQU0sSUFBSSxHQUFHLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3pDLElBQU0sR0FBRyxHQUFHLDRCQUFpQixDQUFDLElBQUksRUFBRSx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNwRSxPQUFPLEdBQUcsQ0FBQyxVQUFVLENBQUM7UUFDeEIsQ0FBQztRQUNILHNDQUFDO0lBQUQsQ0FBQyxBQVJELElBUUM7SUFSWSwwRUFBK0I7SUFVNUM7O09BRUc7SUFDSCxTQUFnQixrQkFBa0IsQ0FDOUIsT0FBNEQ7UUFDOUQsSUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxQyxJQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDMUMsSUFBSSxRQUFRLEtBQUssSUFBSSxFQUFFO1lBQ3JCLE1BQU0sSUFBSSxxQ0FBZ0IsQ0FDdEIsUUFBUSxDQUFDLFVBQVUsRUFBRSxvREFBb0QsQ0FBQyxDQUFDO1NBQ2hGO1FBRUQsSUFBTSxJQUFJLEdBQXlCO1lBQ2pDLElBQUksRUFBRSxRQUFRO1lBQ2QsSUFBSSxFQUFFLG9CQUFhLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3pDLFlBQVksRUFBRSxRQUFRLENBQUMsU0FBUyxFQUFFO1lBQ2xDLGlCQUFpQixFQUFFLENBQUM7WUFDcEIsVUFBVSxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLHdCQUFpQixDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNuRCxxQ0FBMEIsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssQ0FBQztTQUMzRixDQUFDO1FBRUYsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQzNCLElBQUksQ0FBQyxRQUFRLEdBQUcsd0JBQWlCLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1NBQ2pFO1FBQ0QsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQzdCLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUNuRDtRQUNELElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUM5QixJQUFJLENBQUMsV0FBVyxHQUFHLHdCQUFpQixDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztTQUN2RTtRQUNELElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUMzQixJQUFJLENBQUMsUUFBUSxHQUFHLHdCQUFpQixDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztTQUNqRTtRQUVELElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN2QixJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLFVBQUEsR0FBRyxJQUFJLE9BQUEsb0JBQWEsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUMsRUFBOUIsQ0FBOEIsQ0FBQyxDQUFDO1NBQ2pGO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBcENELGdEQW9DQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuaW1wb3J0IHtjb21waWxlSW5qZWN0YWJsZSwgQ29uc3RhbnRQb29sLCBjcmVhdGVSM1Byb3ZpZGVyRXhwcmVzc2lvbiwgUjNEZWNsYXJlSW5qZWN0YWJsZU1ldGFkYXRhLCBSM0luamVjdGFibGVNZXRhZGF0YSwgUjNQYXJ0aWFsRGVjbGFyYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyJztcbmltcG9ydCAqIGFzIG8gZnJvbSAnQGFuZ3VsYXIvY29tcGlsZXIvc3JjL291dHB1dC9vdXRwdXRfYXN0JztcblxuaW1wb3J0IHtBc3RPYmplY3R9IGZyb20gJy4uLy4uL2FzdC9hc3RfdmFsdWUnO1xuaW1wb3J0IHtGYXRhbExpbmtlckVycm9yfSBmcm9tICcuLi8uLi9mYXRhbF9saW5rZXJfZXJyb3InO1xuXG5pbXBvcnQge1BhcnRpYWxMaW5rZXJ9IGZyb20gJy4vcGFydGlhbF9saW5rZXInO1xuaW1wb3J0IHtleHRyYWN0Rm9yd2FyZFJlZiwgZ2V0RGVwZW5kZW5jeSwgd3JhcFJlZmVyZW5jZX0gZnJvbSAnLi91dGlsJztcblxuLyoqXG4gKiBBIGBQYXJ0aWFsTGlua2VyYCB0aGF0IGlzIGRlc2lnbmVkIHRvIHByb2Nlc3MgYMm1ybVuZ0RlY2xhcmVJbmplY3RhYmxlKClgIGNhbGwgZXhwcmVzc2lvbnMuXG4gKi9cbmV4cG9ydCBjbGFzcyBQYXJ0aWFsSW5qZWN0YWJsZUxpbmtlclZlcnNpb24xPFRFeHByZXNzaW9uPiBpbXBsZW1lbnRzIFBhcnRpYWxMaW5rZXI8VEV4cHJlc3Npb24+IHtcbiAgbGlua1BhcnRpYWxEZWNsYXJhdGlvbihcbiAgICAgIGNvbnN0YW50UG9vbDogQ29uc3RhbnRQb29sLFxuICAgICAgbWV0YU9iajogQXN0T2JqZWN0PFIzUGFydGlhbERlY2xhcmF0aW9uLCBURXhwcmVzc2lvbj4pOiBvLkV4cHJlc3Npb24ge1xuICAgIGNvbnN0IG1ldGEgPSB0b1IzSW5qZWN0YWJsZU1ldGEobWV0YU9iaik7XG4gICAgY29uc3QgZGVmID0gY29tcGlsZUluamVjdGFibGUobWV0YSwgLyogcmVzb2x2ZUZvcndhcmRSZWZzICovIGZhbHNlKTtcbiAgICByZXR1cm4gZGVmLmV4cHJlc3Npb247XG4gIH1cbn1cblxuLyoqXG4gKiBEZXJpdmVzIHRoZSBgUjNJbmplY3RhYmxlTWV0YWRhdGFgIHN0cnVjdHVyZSBmcm9tIHRoZSBBU1Qgb2JqZWN0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9SM0luamVjdGFibGVNZXRhPFRFeHByZXNzaW9uPihcbiAgICBtZXRhT2JqOiBBc3RPYmplY3Q8UjNEZWNsYXJlSW5qZWN0YWJsZU1ldGFkYXRhLCBURXhwcmVzc2lvbj4pOiBSM0luamVjdGFibGVNZXRhZGF0YSB7XG4gIGNvbnN0IHR5cGVFeHByID0gbWV0YU9iai5nZXRWYWx1ZSgndHlwZScpO1xuICBjb25zdCB0eXBlTmFtZSA9IHR5cGVFeHByLmdldFN5bWJvbE5hbWUoKTtcbiAgaWYgKHR5cGVOYW1lID09PSBudWxsKSB7XG4gICAgdGhyb3cgbmV3IEZhdGFsTGlua2VyRXJyb3IoXG4gICAgICAgIHR5cGVFeHByLmV4cHJlc3Npb24sICdVbnN1cHBvcnRlZCB0eXBlLCBpdHMgbmFtZSBjb3VsZCBub3QgYmUgZGV0ZXJtaW5lZCcpO1xuICB9XG5cbiAgY29uc3QgbWV0YTogUjNJbmplY3RhYmxlTWV0YWRhdGEgPSB7XG4gICAgbmFtZTogdHlwZU5hbWUsXG4gICAgdHlwZTogd3JhcFJlZmVyZW5jZSh0eXBlRXhwci5nZXRPcGFxdWUoKSksXG4gICAgaW50ZXJuYWxUeXBlOiB0eXBlRXhwci5nZXRPcGFxdWUoKSxcbiAgICB0eXBlQXJndW1lbnRDb3VudDogMCxcbiAgICBwcm92aWRlZEluOiBtZXRhT2JqLmhhcygncHJvdmlkZWRJbicpID8gZXh0cmFjdEZvcndhcmRSZWYobWV0YU9iai5nZXRWYWx1ZSgncHJvdmlkZWRJbicpKSA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyZWF0ZVIzUHJvdmlkZXJFeHByZXNzaW9uKG8ubGl0ZXJhbChudWxsKSwgZmFsc2UpLFxuICB9O1xuXG4gIGlmIChtZXRhT2JqLmhhcygndXNlQ2xhc3MnKSkge1xuICAgIG1ldGEudXNlQ2xhc3MgPSBleHRyYWN0Rm9yd2FyZFJlZihtZXRhT2JqLmdldFZhbHVlKCd1c2VDbGFzcycpKTtcbiAgfVxuICBpZiAobWV0YU9iai5oYXMoJ3VzZUZhY3RvcnknKSkge1xuICAgIG1ldGEudXNlRmFjdG9yeSA9IG1ldGFPYmouZ2V0T3BhcXVlKCd1c2VGYWN0b3J5Jyk7XG4gIH1cbiAgaWYgKG1ldGFPYmouaGFzKCd1c2VFeGlzdGluZycpKSB7XG4gICAgbWV0YS51c2VFeGlzdGluZyA9IGV4dHJhY3RGb3J3YXJkUmVmKG1ldGFPYmouZ2V0VmFsdWUoJ3VzZUV4aXN0aW5nJykpO1xuICB9XG4gIGlmIChtZXRhT2JqLmhhcygndXNlVmFsdWUnKSkge1xuICAgIG1ldGEudXNlVmFsdWUgPSBleHRyYWN0Rm9yd2FyZFJlZihtZXRhT2JqLmdldFZhbHVlKCd1c2VWYWx1ZScpKTtcbiAgfVxuXG4gIGlmIChtZXRhT2JqLmhhcygnZGVwcycpKSB7XG4gICAgbWV0YS5kZXBzID0gbWV0YU9iai5nZXRBcnJheSgnZGVwcycpLm1hcChkZXAgPT4gZ2V0RGVwZW5kZW5jeShkZXAuZ2V0T2JqZWN0KCkpKTtcbiAgfVxuXG4gIHJldHVybiBtZXRhO1xufVxuIl19
Note: See TracBrowser for help on using the repository browser.