@angular/core 13.0.0-rc.1 → 13.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/core.d.ts +224 -221
- package/esm2020/index.mjs +6 -5
- package/esm2020/src/application_module.mjs +2 -7
- package/esm2020/src/core_render3_private_export.mjs +2 -1
- package/esm2020/src/debug/debug_node.mjs +2 -3
- package/esm2020/src/linker/component_factory_resolver.mjs +5 -5
- package/esm2020/src/linker/ng_module_factory.mjs +1 -1
- package/esm2020/src/metadata/view.mjs +3 -1
- package/esm2020/src/render3/definition.mjs +2 -7
- package/esm2020/src/render3/di.mjs +3 -3
- package/esm2020/src/render3/di_setup.mjs +1 -1
- package/esm2020/src/render3/error_code.mjs +2 -5
- package/esm2020/src/render3/error_details_base_url.mjs +16 -0
- package/esm2020/src/render3/fields.mjs +1 -2
- package/esm2020/src/render3/instructions/lview_debug.mjs +36 -13
- package/esm2020/src/render3/instructions/shared.mjs +3 -5
- package/esm2020/src/render3/ng_module_ref.mjs +2 -5
- package/esm2020/src/render3/util/view_traversal_utils.mjs +1 -1
- package/esm2020/src/version.mjs +1 -1
- package/esm2020/testing/src/logger.mjs +3 -3
- package/esm2020/testing/src/ng_zone_mock.mjs +3 -3
- package/esm2020/testing/src/test_compiler.mjs +3 -3
- package/fesm2015/core.mjs +103 -78
- package/fesm2015/core.mjs.map +1 -1
- package/fesm2015/testing.mjs +4 -4
- package/fesm2020/core.mjs +103 -78
- package/fesm2020/core.mjs.map +1 -1
- package/fesm2020/testing.mjs +4 -4
- package/package.json +1 -1
- package/schematics/migrations/router-link-empty-expression/index.js +2 -2
- package/schematics/migrations.json +0 -100
- package/schematics/utils/ng_component_template.d.ts +4 -1
- package/schematics/utils/ng_component_template.js +28 -14
- package/testing/testing.d.ts +1 -1
- package/schematics/migrations/abstract-control-parent/index.d.ts +0 -11
- package/schematics/migrations/abstract-control-parent/index.js +0 -69
- package/schematics/migrations/abstract-control-parent/util.d.ts +0 -14
- package/schematics/migrations/abstract-control-parent/util.js +0 -67
- package/schematics/migrations/activated-route-snapshot-fragment/index.d.ts +0 -13
- package/schematics/migrations/activated-route-snapshot-fragment/index.js +0 -73
- package/schematics/migrations/activated-route-snapshot-fragment/util.d.ts +0 -16
- package/schematics/migrations/activated-route-snapshot-fragment/util.js +0 -51
- package/schematics/migrations/can-activate-with-redirect-to/index.d.ts +0 -11
- package/schematics/migrations/can-activate-with-redirect-to/index.js +0 -69
- package/schematics/migrations/can-activate-with-redirect-to/util.d.ts +0 -11
- package/schematics/migrations/can-activate-with-redirect-to/util.js +0 -73
- package/schematics/migrations/deep-shadow-piercing-selector/index.d.ts +0 -10
- package/schematics/migrations/deep-shadow-piercing-selector/index.js +0 -49
- package/schematics/migrations/dynamic-queries/index.d.ts +0 -13
- package/schematics/migrations/dynamic-queries/index.js +0 -76
- package/schematics/migrations/dynamic-queries/util.d.ts +0 -25
- package/schematics/migrations/dynamic-queries/util.js +0 -84
- package/schematics/migrations/initial-navigation/collector.d.ts +0 -22
- package/schematics/migrations/initial-navigation/collector.js +0 -122
- package/schematics/migrations/initial-navigation/index.d.ts +0 -11
- package/schematics/migrations/initial-navigation/index.js +0 -83
- package/schematics/migrations/initial-navigation/transform.d.ts +0 -20
- package/schematics/migrations/initial-navigation/transform.js +0 -71
- package/schematics/migrations/initial-navigation/update_recorder.d.ts +0 -18
- package/schematics/migrations/initial-navigation/update_recorder.js +0 -20
- package/schematics/migrations/initial-navigation/util.d.ts +0 -12
- package/schematics/migrations/initial-navigation/util.js +0 -46
- package/schematics/migrations/missing-injectable/definition_collector.d.ts +0 -37
- package/schematics/migrations/missing-injectable/definition_collector.js +0 -92
- package/schematics/migrations/missing-injectable/index.d.ts +0 -11
- package/schematics/migrations/missing-injectable/index.js +0 -136
- package/schematics/migrations/missing-injectable/providers_evaluator.d.ts +0 -26
- package/schematics/migrations/missing-injectable/providers_evaluator.js +0 -71
- package/schematics/migrations/missing-injectable/transform.d.ts +0 -70
- package/schematics/migrations/missing-injectable/transform.js +0 -203
- package/schematics/migrations/missing-injectable/update_recorder.d.ts +0 -21
- package/schematics/migrations/missing-injectable/update_recorder.js +0 -20
- package/schematics/migrations/module-with-providers/collector.d.ts +0 -34
- package/schematics/migrations/module-with-providers/collector.js +0 -76
- package/schematics/migrations/module-with-providers/index.d.ts +0 -13
- package/schematics/migrations/module-with-providers/index.js +0 -107
- package/schematics/migrations/module-with-providers/transform.d.ts +0 -50
- package/schematics/migrations/module-with-providers/transform.js +0 -149
- package/schematics/migrations/module-with-providers/util.d.ts +0 -13
- package/schematics/migrations/module-with-providers/util.js +0 -43
- package/schematics/migrations/move-document/document_import_visitor.d.ts +0 -27
- package/schematics/migrations/move-document/document_import_visitor.js +0 -77
- package/schematics/migrations/move-document/index.d.ts +0 -11
- package/schematics/migrations/move-document/index.js +0 -93
- package/schematics/migrations/move-document/move-import.d.ts +0 -12
- package/schematics/migrations/move-document/move-import.js +0 -64
- package/schematics/migrations/native-view-encapsulation/index.d.ts +0 -11
- package/schematics/migrations/native-view-encapsulation/index.js +0 -63
- package/schematics/migrations/native-view-encapsulation/util.d.ts +0 -11
- package/schematics/migrations/native-view-encapsulation/util.js +0 -51
- package/schematics/migrations/navigation-extras-omissions/index.d.ts +0 -11
- package/schematics/migrations/navigation-extras-omissions/index.js +0 -72
- package/schematics/migrations/navigation-extras-omissions/util.d.ts +0 -11
- package/schematics/migrations/navigation-extras-omissions/util.js +0 -129
- package/schematics/migrations/relative-link-resolution/collector.d.ts +0 -22
- package/schematics/migrations/relative-link-resolution/collector.js +0 -98
- package/schematics/migrations/relative-link-resolution/index.d.ts +0 -11
- package/schematics/migrations/relative-link-resolution/index.js +0 -84
- package/schematics/migrations/relative-link-resolution/transform.d.ts +0 -22
- package/schematics/migrations/relative-link-resolution/transform.js +0 -68
- package/schematics/migrations/relative-link-resolution/update_recorder.d.ts +0 -18
- package/schematics/migrations/relative-link-resolution/update_recorder.js +0 -20
- package/schematics/migrations/relative-link-resolution/util.d.ts +0 -12
- package/schematics/migrations/relative-link-resolution/util.js +0 -46
- package/schematics/migrations/renderer-to-renderer2/helpers.d.ts +0 -25
- package/schematics/migrations/renderer-to-renderer2/helpers.js +0 -241
- package/schematics/migrations/renderer-to-renderer2/index.d.ts +0 -14
- package/schematics/migrations/renderer-to-renderer2/index.js +0 -138
- package/schematics/migrations/renderer-to-renderer2/migration.d.ts +0 -18
- package/schematics/migrations/renderer-to-renderer2/migration.js +0 -228
- package/schematics/migrations/renderer-to-renderer2/util.d.ts +0 -18
- package/schematics/migrations/renderer-to-renderer2/util.js +0 -86
- package/schematics/migrations/router-preserve-query-params/index.d.ts +0 -14
- package/schematics/migrations/router-preserve-query-params/index.js +0 -75
- package/schematics/migrations/router-preserve-query-params/util.d.ts +0 -11
- package/schematics/migrations/router-preserve-query-params/util.js +0 -106
- package/schematics/migrations/static-queries/angular/directive_inputs.d.ts +0 -11
- package/schematics/migrations/static-queries/angular/directive_inputs.js +0 -87
- package/schematics/migrations/static-queries/angular/ng_query_visitor.d.ts +0 -45
- package/schematics/migrations/static-queries/angular/ng_query_visitor.js +0 -130
- package/schematics/migrations/static-queries/angular/query-definition.d.ts +0 -37
- package/schematics/migrations/static-queries/angular/query-definition.js +0 -33
- package/schematics/migrations/static-queries/angular/super_class.d.ts +0 -15
- package/schematics/migrations/static-queries/angular/super_class.js +0 -35
- package/schematics/migrations/static-queries/index.d.ts +0 -11
- package/schematics/migrations/static-queries/index.js +0 -244
- package/schematics/migrations/static-queries/strategies/template_strategy/template_strategy.d.ts +0 -41
- package/schematics/migrations/static-queries/strategies/template_strategy/template_strategy.js +0 -210
- package/schematics/migrations/static-queries/strategies/test_strategy/test_strategy.d.ts +0 -24
- package/schematics/migrations/static-queries/strategies/test_strategy/test_strategy.js +0 -38
- package/schematics/migrations/static-queries/strategies/timing-strategy.d.ts +0 -19
- package/schematics/migrations/static-queries/strategies/timing-strategy.js +0 -20
- package/schematics/migrations/static-queries/strategies/usage_strategy/declaration_usage_visitor.d.ts +0 -82
- package/schematics/migrations/static-queries/strategies/usage_strategy/declaration_usage_visitor.js +0 -372
- package/schematics/migrations/static-queries/strategies/usage_strategy/super_class_context.d.ts +0 -18
- package/schematics/migrations/static-queries/strategies/usage_strategy/super_class_context.js +0 -55
- package/schematics/migrations/static-queries/strategies/usage_strategy/template_usage_visitor.d.ts +0 -27
- package/schematics/migrations/static-queries/strategies/usage_strategy/template_usage_visitor.js +0 -93
- package/schematics/migrations/static-queries/strategies/usage_strategy/usage_strategy.d.ts +0 -34
- package/schematics/migrations/static-queries/strategies/usage_strategy/usage_strategy.js +0 -172
- package/schematics/migrations/static-queries/transform.d.ts +0 -21
- package/schematics/migrations/static-queries/transform.js +0 -105
- package/schematics/migrations/template-var-assignment/analyze_template.d.ts +0 -20
- package/schematics/migrations/template-var-assignment/analyze_template.js +0 -38
- package/schematics/migrations/template-var-assignment/angular/html_variable_assignment_visitor.d.ts +0 -28
- package/schematics/migrations/template-var-assignment/angular/html_variable_assignment_visitor.js +0 -80
- package/schematics/migrations/template-var-assignment/index.d.ts +0 -11
- package/schematics/migrations/template-var-assignment/index.js +0 -101
- package/schematics/migrations/undecorated-classes-with-decorated-fields/index.d.ts +0 -14
- package/schematics/migrations/undecorated-classes-with-decorated-fields/index.js +0 -128
- package/schematics/migrations/undecorated-classes-with-decorated-fields/transform.d.ts +0 -64
- package/schematics/migrations/undecorated-classes-with-decorated-fields/transform.js +0 -302
- package/schematics/migrations/undecorated-classes-with-decorated-fields/update_recorder.d.ts +0 -19
- package/schematics/migrations/undecorated-classes-with-decorated-fields/update_recorder.js +0 -20
- package/schematics/migrations/undecorated-classes-with-di/create_ngc_program.d.ts +0 -18
- package/schematics/migrations/undecorated-classes-with-di/create_ngc_program.js +0 -56
- package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/convert_directive_metadata.d.ts +0 -18
- package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/convert_directive_metadata.js +0 -99
- package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/decorator_rewriter.d.ts +0 -37
- package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/decorator_rewriter.js +0 -118
- package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/import_rewrite_visitor.d.ts +0 -37
- package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/import_rewrite_visitor.js +0 -129
- package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/path_format.d.ts +0 -10
- package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/path_format.js +0 -31
- package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/source_file_exports.d.ts +0 -16
- package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/source_file_exports.js +0 -68
- package/schematics/migrations/undecorated-classes-with-di/index.d.ts +0 -11
- package/schematics/migrations/undecorated-classes-with-di/index.js +0 -226
- package/schematics/migrations/undecorated-classes-with-di/ng_declaration_collector.d.ts +0 -38
- package/schematics/migrations/undecorated-classes-with-di/ng_declaration_collector.js +0 -135
- package/schematics/migrations/undecorated-classes-with-di/transform.d.ts +0 -97
- package/schematics/migrations/undecorated-classes-with-di/transform.js +0 -373
- package/schematics/migrations/undecorated-classes-with-di/update_recorder.d.ts +0 -20
- package/schematics/migrations/undecorated-classes-with-di/update_recorder.js +0 -20
- package/schematics/migrations/wait-for-async/index.d.ts +0 -11
- package/schematics/migrations/wait-for-async/index.js +0 -101
- package/schematics/migrations/wait-for-async/util.d.ts +0 -11
- package/schematics/migrations/wait-for-async/util.js +0 -40
- package/schematics/migrations/xhr-factory/index.d.ts +0 -10
- package/schematics/migrations/xhr-factory/index.js +0 -107
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC 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
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
-
};
|
|
11
|
-
(function (factory) {
|
|
12
|
-
if (typeof module === "object" && typeof module.exports === "object") {
|
|
13
|
-
var v = factory(require, exports);
|
|
14
|
-
if (v !== undefined) module.exports = v;
|
|
15
|
-
}
|
|
16
|
-
else if (typeof define === "function" && define.amd) {
|
|
17
|
-
define("@angular/core/schematics/migrations/router-preserve-query-params/util", ["require", "exports", "typescript", "@angular/core/schematics/utils/typescript/imports", "@angular/core/schematics/utils/typescript/symbol"], factory);
|
|
18
|
-
}
|
|
19
|
-
})(function (require, exports) {
|
|
20
|
-
"use strict";
|
|
21
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
exports.findLiteralsToMigrate = exports.migrateLiteral = void 0;
|
|
23
|
-
const typescript_1 = __importDefault(require("typescript"));
|
|
24
|
-
const imports_1 = require("@angular/core/schematics/utils/typescript/imports");
|
|
25
|
-
const symbol_1 = require("@angular/core/schematics/utils/typescript/symbol");
|
|
26
|
-
/**
|
|
27
|
-
* Configures the methods that the migration should be looking for
|
|
28
|
-
* and the properties from `NavigationExtras` that should be preserved.
|
|
29
|
-
*/
|
|
30
|
-
const methodConfig = new Set(['navigate', 'createUrlTree']);
|
|
31
|
-
const preserveQueryParamsKey = 'preserveQueryParams';
|
|
32
|
-
function migrateLiteral(methodName, node) {
|
|
33
|
-
var _a;
|
|
34
|
-
const isMigratableMethod = methodConfig.has(methodName);
|
|
35
|
-
if (!isMigratableMethod) {
|
|
36
|
-
throw Error(`Attempting to migrate unconfigured method called ${methodName}.`);
|
|
37
|
-
}
|
|
38
|
-
const propertiesToKeep = [];
|
|
39
|
-
let propertyToMigrate = undefined;
|
|
40
|
-
for (const property of node.properties) {
|
|
41
|
-
// Only look for regular and shorthand property assignments since resolving things
|
|
42
|
-
// like spread operators becomes too complicated for this migration.
|
|
43
|
-
if ((typescript_1.default.isPropertyAssignment(property) || typescript_1.default.isShorthandPropertyAssignment(property)) &&
|
|
44
|
-
(typescript_1.default.isStringLiteralLike(property.name) || typescript_1.default.isNumericLiteral(property.name) ||
|
|
45
|
-
typescript_1.default.isIdentifier(property.name)) &&
|
|
46
|
-
(property.name.text === preserveQueryParamsKey)) {
|
|
47
|
-
propertyToMigrate = property;
|
|
48
|
-
continue;
|
|
49
|
-
}
|
|
50
|
-
propertiesToKeep.push(property);
|
|
51
|
-
}
|
|
52
|
-
// Don't modify the node if there's nothing to migrate.
|
|
53
|
-
if (propertyToMigrate === undefined) {
|
|
54
|
-
return node;
|
|
55
|
-
}
|
|
56
|
-
if ((typescript_1.default.isShorthandPropertyAssignment(propertyToMigrate) &&
|
|
57
|
-
((_a = propertyToMigrate.objectAssignmentInitializer) === null || _a === void 0 ? void 0 : _a.kind) === typescript_1.default.SyntaxKind.TrueKeyword) ||
|
|
58
|
-
(typescript_1.default.isPropertyAssignment(propertyToMigrate) &&
|
|
59
|
-
propertyToMigrate.initializer.kind === typescript_1.default.SyntaxKind.TrueKeyword)) {
|
|
60
|
-
return typescript_1.default.updateObjectLiteral(node, propertiesToKeep.concat(typescript_1.default.createPropertyAssignment('queryParamsHandling', typescript_1.default.createIdentifier(`'preserve'`))));
|
|
61
|
-
}
|
|
62
|
-
return typescript_1.default.updateObjectLiteral(node, propertiesToKeep);
|
|
63
|
-
}
|
|
64
|
-
exports.migrateLiteral = migrateLiteral;
|
|
65
|
-
function findLiteralsToMigrate(sourceFile, typeChecker) {
|
|
66
|
-
const results = new Map(Array.from(methodConfig.keys(), key => [key, new Set()]));
|
|
67
|
-
const routerImport = (0, imports_1.getImportSpecifier)(sourceFile, '@angular/router', 'Router');
|
|
68
|
-
const seenLiterals = new Map();
|
|
69
|
-
if (routerImport) {
|
|
70
|
-
sourceFile.forEachChild(function visitNode(node) {
|
|
71
|
-
var _a;
|
|
72
|
-
// Look for calls that look like `foo.<method to migrate>` with more than one parameter.
|
|
73
|
-
if (typescript_1.default.isCallExpression(node) && node.arguments.length > 1 &&
|
|
74
|
-
typescript_1.default.isPropertyAccessExpression(node.expression) && typescript_1.default.isIdentifier(node.expression.name) &&
|
|
75
|
-
methodConfig.has(node.expression.name.text)) {
|
|
76
|
-
// Check whether the type of the object on which the
|
|
77
|
-
// function is called refers to the Router import.
|
|
78
|
-
if ((0, symbol_1.isReferenceToImport)(typeChecker, node.expression.expression, routerImport)) {
|
|
79
|
-
const methodName = node.expression.name.text;
|
|
80
|
-
const parameterDeclaration = (_a = typeChecker.getTypeAtLocation(node.arguments[1]).getSymbol()) === null || _a === void 0 ? void 0 : _a.valueDeclaration;
|
|
81
|
-
// Find the source of the object literal.
|
|
82
|
-
if (parameterDeclaration && typescript_1.default.isObjectLiteralExpression(parameterDeclaration)) {
|
|
83
|
-
if (!seenLiterals.has(parameterDeclaration)) {
|
|
84
|
-
results.get(methodName).add(parameterDeclaration);
|
|
85
|
-
seenLiterals.set(parameterDeclaration, methodName);
|
|
86
|
-
// If the same literal has been passed into multiple different methods, we can't
|
|
87
|
-
// migrate it, because the supported properties are different. When we detect such
|
|
88
|
-
// a case, we drop it from the results so that it gets ignored. If it's used multiple
|
|
89
|
-
// times for the same method, it can still be migrated.
|
|
90
|
-
}
|
|
91
|
-
else if (seenLiterals.get(parameterDeclaration) !== methodName) {
|
|
92
|
-
results.forEach(literals => literals.delete(parameterDeclaration));
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
else {
|
|
98
|
-
node.forEachChild(visitNode);
|
|
99
|
-
}
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
return results;
|
|
103
|
-
}
|
|
104
|
-
exports.findLiteralsToMigrate = findLiteralsToMigrate;
|
|
105
|
-
});
|
|
106
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc2NoZW1hdGljcy9taWdyYXRpb25zL3JvdXRlci1wcmVzZXJ2ZS1xdWVyeS1wYXJhbXMvdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7Ozs7SUFFSCw0REFBNEI7SUFFNUIsK0VBQWtFO0lBQ2xFLDZFQUFrRTtJQUVsRTs7O09BR0c7SUFDSCxNQUFNLFlBQVksR0FBRyxJQUFJLEdBQUcsQ0FBUyxDQUFDLFVBQVUsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDO0lBRXBFLE1BQU0sc0JBQXNCLEdBQUcscUJBQXFCLENBQUM7SUFFckQsU0FBZ0IsY0FBYyxDQUMxQixVQUFrQixFQUFFLElBQWdDOztRQUN0RCxNQUFNLGtCQUFrQixHQUFHLFlBQVksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFeEQsSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQ3ZCLE1BQU0sS0FBSyxDQUFDLG9EQUFvRCxVQUFVLEdBQUcsQ0FBQyxDQUFDO1NBQ2hGO1FBR0QsTUFBTSxnQkFBZ0IsR0FBa0MsRUFBRSxDQUFDO1FBQzNELElBQUksaUJBQWlCLEdBQW1FLFNBQVMsQ0FBQztRQUVsRyxLQUFLLE1BQU0sUUFBUSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDdEMsa0ZBQWtGO1lBQ2xGLG9FQUFvRTtZQUNwRSxJQUFJLENBQUMsb0JBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxvQkFBRSxDQUFDLDZCQUE2QixDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNqRixDQUFDLG9CQUFFLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLG9CQUFFLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztvQkFDM0Usb0JBQUUsQ0FBQyxZ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WUFBWSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFO2dDQUMzQyxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBRSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO2dDQUNuRCxZQUFZLENBQUMsR0FBRyxDQUFDLG9CQUFvQixFQUFFLFVBQVUsQ0FBQyxDQUFDO2dDQUNuRCxnRkFBZ0Y7Z0NBQ2hGLGtGQUFrRjtnQ0FDbEYscUZBQXFGO2dDQUNyRix1REFBdUQ7NkJBQ3hEO2lDQUFNLElBQUksWUFBWSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLFVBQVUsRUFBRTtnQ0FDaEUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDOzZCQUNwRTt5QkFDRjtxQkFDRjtpQkFDRjtxQkFBTTtvQkFDTCxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2lCQUM5QjtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFFRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBeENELHNEQXdDQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbmltcG9ydCB7Z2V0SW1wb3J0U3BlY2lmaWVyfSBmcm9tICcuLi8uLi91dGlscy90eXBlc2NyaXB0L2ltcG9ydHMnO1xuaW1wb3J0IHtpc1JlZmVyZW5jZVRvSW1wb3J0fSBmcm9tICcuLi8uLi91dGlscy90eXBlc2NyaXB0L3N5bWJvbCc7XG5cbi8qKlxuICogQ29uZmlndXJlcyB0aGUgbWV0aG9kcyB0aGF0IHRoZSBtaWdyYXRpb24gc2hvdWxkIGJlIGxvb2tpbmcgZm9yXG4gKiBhbmQgdGhlIHByb3BlcnRpZXMgZnJvbSBgTmF2aWdhdGlvbkV4dHJhc2AgdGhhdCBzaG91bGQgYmUgcHJlc2VydmVkLlxuICovXG5jb25zdCBtZXRob2RDb25maWcgPSBuZXcgU2V0PHN0cmluZz4oWyduYXZpZ2F0ZScsICdjcmVhdGVVcmxUcmVlJ10pO1xuXG5jb25zdCBwcmVzZXJ2ZVF1ZXJ5UGFyYW1zS2V5ID0gJ3ByZXNlcnZlUXVlcnlQYXJhbXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gbWlncmF0ZUxpdGVyYWwoXG4gICAgbWV0aG9kTmFtZTogc3RyaW5nLCBub2RlOiB0cy5PYmplY3RMaXRlcmFsRXhwcmVzc2lvbik6IHRzLk9iamVjdExpdGVyYWxFeHByZXNzaW9uIHtcbiAgY29uc3QgaXNNaWdyYXRhYmxlTWV0aG9kID0gbWV0aG9kQ29uZmlnLmhhcyhtZXRob2ROYW1lKTtcblxuICBpZiAoIWlzTWlncmF0YWJsZU1ldGhvZCkge1xuICAgIHRocm93IEVycm9yKGBBdHRlbXB0aW5nIHRvIG1pZ3JhdGUgdW5jb25maWd1cmVkIG1ldGhvZCBjYWxsZWQgJHttZXRob2ROYW1lfS5gKTtcbiAgfVxuXG5cbiAgY29uc3QgcHJvcGVydGllc1RvS2VlcDogdHMuT2JqZWN0TGl0ZXJhbEVsZW1lbnRMaWtlW10gPSBbXTtcbiAgbGV0IHByb3BlcnR5VG9NaWdyYXRlOiB0cy5Qcm9wZXJ0eUFzc2lnbm1lbnR8dHMuU2hvcnRoYW5kUHJvcGVydHlBc3NpZ25tZW50fHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcblxuICBmb3IgKGNvbnN0IHByb3BlcnR5IG9mIG5vZGUucHJvcGVydGllcykge1xuICAgIC8vIE9ubHkgbG9vayBmb3IgcmVndWxhciBhbmQgc2hvcnRoYW5kIHByb3BlcnR5IGFzc2lnbm1lbnRzIHNpbmNlIHJlc29sdmluZyB0aGluZ3NcbiAgICAvLyBsaWtlIHNwcmVhZCBvcGVyYXRvcnMgYmVjb21lcyB0b28gY29tcGxpY2F0ZWQgZm9yIHRoaXMgbWlncmF0aW9uLlxuICAgIGlmICgodHMuaXNQcm9wZXJ0eUFzc2lnbm1lbnQocHJvcGVydHkpIHx8IHRzLmlzU2hvcnRoYW5kUHJvcGVydHlBc3NpZ25tZW50KHByb3BlcnR5KSkgJiZcbiAgICAgICAgKHRzLmlzU3RyaW5nTGl0ZXJhbExpa2UocHJvcGVydHkubmFtZSkgfHwgdHMuaXNOdW1lcmljTGl0ZXJhbChwcm9wZXJ0eS5uYW1lKSB8fFxuICAgICAgICAgdHMuaXNJZGVudGlmaWVyKHByb3BlcnR5Lm5hbWUpKSAmJlxuICAgICAgICAocHJvcGVydHkubmFtZS50ZXh0ID09PSBwcmVzZXJ2ZVF1ZXJ5UGFyYW1zS2V5KSkge1xuICAgICAgcHJvcGVydHlUb01pZ3JhdGUgPSBwcm9wZXJ0eTtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgICBwcm9wZXJ0aWVzVG9LZWVwLnB1c2gocHJvcGVydHkpO1xuICB9XG5cbiAgLy8gRG9uJ3QgbW9kaWZ5IHRoZSBub2RlIGlmIHRoZXJlJ3Mgbm90aGluZyB0byBtaWdyYXRlLlxuICBpZiAocHJvcGVydHlUb01pZ3JhdGUgPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiBub2RlO1xuICB9XG5cbiAgaWYgKCh0cy5pc1Nob3J0aGFuZFByb3BlcnR5QXNzaWdubWVudChwcm9wZXJ0eVRvTWlncmF0ZSkgJiZcbiAgICAgICBwcm9wZXJ0eVRvTWlncmF0ZS5vYmplY3RBc3NpZ25tZW50SW5pdGlhbGl6ZXI/LmtpbmQgPT09IHRzLlN5bnRheEtpbmQuVHJ1ZUtleXdvcmQpIHx8XG4gICAgICAodHMuaXNQcm9wZXJ0eUFzc2lnbm1lbnQocHJvcGVydHlUb01pZ3JhdGUpICYmXG4gICAgICAgcHJvcGVydHlUb01pZ3JhdGUuaW5pdGlhbGl6ZXIua2luZCA9PT0gdHMuU3ludGF4S2luZC5UcnVlS2V5d29yZCkpIHtcbiAgICByZXR1cm4gdHMudXBkYXRlT2JqZWN0TGl0ZXJhbChcbiAgICAgICAgbm9kZSxcbiAgICAgICAgcHJvcGVydGllc1RvS2VlcC5jb25jYXQoXG4gICAgICAgICAgICB0cy5jcmVhdGVQcm9wZXJ0eUFzc2lnbm1lbnQoJ3F1ZXJ5UGFyYW1zSGFuZGxpbmcnLCB0cy5jcmVhdGVJZGVudGlmaWVyKGAncHJlc2VydmUnYCkpKSk7XG4gIH1cblxuICByZXR1cm4gdHMudXBkYXRlT2JqZWN0TGl0ZXJhbChub2RlLCBwcm9wZXJ0aWVzVG9LZWVwKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbmRMaXRlcmFsc1RvTWlncmF0ZShzb3VyY2VGaWxlOiB0cy5Tb3VyY2VGaWxlLCB0eXBlQ2hlY2tlcjogdHMuVHlwZUNoZWNrZXIpIHtcbiAgY29uc3QgcmVzdWx0cyA9IG5ldyBNYXA8c3RyaW5nLCBTZXQ8dHMuT2JqZWN0TGl0ZXJhbEV4cHJlc3Npb24+PihcbiAgICAgIEFycmF5LmZyb20obWV0aG9kQ29uZmlnLmtleXMoKSwga2V5ID0+IFtrZXksIG5ldyBTZXQoKV0pKTtcbiAgY29uc3Qgcm91dGVySW1wb3J0ID0gZ2V0SW1wb3J0U3BlY2lmaWVyKHNvdXJjZUZpbGUsICdAYW5ndWxhci9yb3V0ZXInLCAnUm91dGVyJyk7XG4gIGNvbnN0IHNlZW5MaXRlcmFscyA9IG5ldyBNYXA8dHMuT2JqZWN0TGl0ZXJhbEV4cHJlc3Npb24sIHN0cmluZz4oKTtcblxuICBpZiAocm91dGVySW1wb3J0KSB7XG4gICAgc291cmNlRmlsZS5mb3JFYWNoQ2hpbGQoZnVuY3Rpb24gdmlzaXROb2RlKG5vZGU6IHRzLk5vZGUpIHtcbiAgICAgIC8vIExvb2sgZm9yIGNhbGxzIHRoYXQgbG9vayBsaWtlIGBmb28uPG1ldGhvZCB0byBtaWdyYXRlPmAgd2l0aCBtb3JlIHRoYW4gb25lIHBhcmFtZXRlci5cbiAgICAgIGlmICh0cy5pc0NhbGxFeHByZXNzaW9uKG5vZGUpICYmIG5vZGUuYXJndW1lbnRzLmxlbmd0aCA+IDEgJiZcbiAgICAgICAgICB0cy5pc1Byb3BlcnR5QWNjZXNzRXhwcmVzc2lvbihub2RlLmV4cHJlc3Npb24pICYmIHRzLmlzSWRlbnRpZmllcihub2RlLmV4cHJlc3Npb24ubmFtZSkgJiZcbiAgICAgICAgICBtZXRob2RDb25maWcuaGFzKG5vZGUuZXhwcmVzc2lvbi5uYW1lLnRleHQpKSB7XG4gICAgICAgIC8vIENoZWNrIHdoZXRoZXIgdGhlIHR5cGUgb2YgdGhlIG9iamVjdCBvbiB3aGljaCB0aGVcbiAgICAgICAgLy8gZnVuY3Rpb24gaXMgY2FsbGVkIHJlZmVycyB0byB0aGUgUm91dGVyIGltcG9ydC5cbiAgICAgICAgaWYgKGlzUmVmZXJlbmNlVG9JbXBvcnQodHlwZUNoZWNrZXIsIG5vZGUuZXhwcmVzc2lvbi5leHByZXNzaW9uLCByb3V0ZXJJbXBvcnQpKSB7XG4gICAgICAgICAgY29uc3QgbWV0aG9kTmFtZSA9IG5vZGUuZXhwcmVzc2lvbi5uYW1lLnRleHQ7XG4gICAgICAgICAgY29uc3QgcGFyYW1ldGVyRGVjbGFyYXRpb24gPVxuICAgICAgICAgICAgICB0eXBlQ2hlY2tlci5nZXRUeXBlQXRMb2NhdGlvbihub2RlLmFyZ3VtZW50c1sxXSkuZ2V0U3ltYm9sKCk/LnZhbHVlRGVjbGFyYXRpb247XG5cbiAgICAgICAgICAvLyBGaW5kIHRoZSBzb3VyY2Ugb2YgdGhlIG9iamVjdCBsaXRlcmFsLlxuICAgICAgICAgIGlmIChwYXJhbWV0ZXJEZWNsYXJhdGlvbiAmJiB0cy5pc09iamVjdExpdGVyYWxFeHByZXNzaW9uKHBhcmFtZXRlckRlY2xhcmF0aW9uKSkge1xuICAgICAgICAgICAgaWYgKCFzZWVuTGl0ZXJhbHMuaGFzKHBhcmFtZXRlckRlY2xhcmF0aW9uKSkge1xuICAgICAgICAgICAgICByZXN1bHRzLmdldChtZXRob2ROYW1lKSEuYWRkKHBhcmFtZXRlckRlY2xhcmF0aW9uKTtcbiAgICAgICAgICAgICAgc2VlbkxpdGVyYWxzLnNldChwYXJhbWV0ZXJEZWNsYXJhdGlvbiwgbWV0aG9kTmFtZSk7XG4gICAgICAgICAgICAgIC8vIElmIHRoZSBzYW1lIGxpdGVyYWwgaGFzIGJlZW4gcGFzc2VkIGludG8gbXVsdGlwbGUgZGlmZmVyZW50IG1ldGhvZHMsIHdlIGNhbid0XG4gICAgICAgICAgICAgIC8vIG1pZ3JhdGUgaXQsIGJlY2F1c2UgdGhlIHN1cHBvcnRlZCBwcm9wZXJ0aWVzIGFyZSBkaWZmZXJlbnQuIFdoZW4gd2UgZGV0ZWN0IHN1Y2hcbiAgICAgICAgICAgICAgLy8gYSBjYXNlLCB3ZSBkcm9wIGl0IGZyb20gdGhlIHJlc3VsdHMgc28gdGhhdCBpdCBnZXRzIGlnbm9yZWQuIElmIGl0J3MgdXNlZCBtdWx0aXBsZVxuICAgICAgICAgICAgICAvLyB0aW1lcyBmb3IgdGhlIHNhbWUgbWV0aG9kLCBpdCBjYW4gc3RpbGwgYmUgbWlncmF0ZWQuXG4gICAgICAgICAgICB9IGVsc2UgaWYgKHNlZW5MaXRlcmFscy5nZXQocGFyYW1ldGVyRGVjbGFyYXRpb24pICE9PSBtZXRob2ROYW1lKSB7XG4gICAgICAgICAgICAgIHJlc3VsdHMuZm9yRWFjaChsaXRlcmFscyA9PiBsaXRlcmFscy5kZWxldGUocGFyYW1ldGVyRGVjbGFyYXRpb24pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5vZGUuZm9yRWFjaENoaWxkKHZpc2l0Tm9kZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gcmVzdWx0cztcbn1cbiJdfQ==
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC 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
|
-
/// <amd-module name="@angular/core/schematics/migrations/static-queries/angular/directive_inputs" />
|
|
9
|
-
import ts from 'typescript';
|
|
10
|
-
/** Analyzes the given class and resolves the name of all inputs which are declared. */
|
|
11
|
-
export declare function getInputNamesOfClass(node: ts.ClassDeclaration, typeChecker: ts.TypeChecker): string[];
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC 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
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
-
};
|
|
11
|
-
(function (factory) {
|
|
12
|
-
if (typeof module === "object" && typeof module.exports === "object") {
|
|
13
|
-
var v = factory(require, exports);
|
|
14
|
-
if (v !== undefined) module.exports = v;
|
|
15
|
-
}
|
|
16
|
-
else if (typeof define === "function" && define.amd) {
|
|
17
|
-
define("@angular/core/schematics/migrations/static-queries/angular/directive_inputs", ["require", "exports", "typescript", "@angular/core/schematics/utils/ng_decorators", "@angular/core/schematics/utils/typescript/property_name"], factory);
|
|
18
|
-
}
|
|
19
|
-
})(function (require, exports) {
|
|
20
|
-
"use strict";
|
|
21
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
exports.getInputNamesOfClass = void 0;
|
|
23
|
-
const typescript_1 = __importDefault(require("typescript"));
|
|
24
|
-
const ng_decorators_1 = require("@angular/core/schematics/utils/ng_decorators");
|
|
25
|
-
const property_name_1 = require("@angular/core/schematics/utils/typescript/property_name");
|
|
26
|
-
/** Analyzes the given class and resolves the name of all inputs which are declared. */
|
|
27
|
-
function getInputNamesOfClass(node, typeChecker) {
|
|
28
|
-
const resolvedInputSetters = [];
|
|
29
|
-
// Determines the names of all inputs defined in the current class declaration by
|
|
30
|
-
// checking whether a given property/getter/setter has the "@Input" decorator applied.
|
|
31
|
-
node.members.forEach(m => {
|
|
32
|
-
if (!m.decorators || !m.decorators.length ||
|
|
33
|
-
!typescript_1.default.isPropertyDeclaration(m) && !typescript_1.default.isSetAccessor(m) && !typescript_1.default.isGetAccessor(m)) {
|
|
34
|
-
return;
|
|
35
|
-
}
|
|
36
|
-
const inputDecorator = (0, ng_decorators_1.getAngularDecorators)(typeChecker, m.decorators).find(d => d.name === 'Input');
|
|
37
|
-
if (inputDecorator && (0, property_name_1.hasPropertyNameText)(m.name)) {
|
|
38
|
-
resolvedInputSetters.push(m.name.text);
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
// Besides looking for immediate setters in the current class declaration, developers
|
|
42
|
-
// can also define inputs in the directive metadata using the "inputs" property. We
|
|
43
|
-
// also need to determine these inputs which are declared in the directive metadata.
|
|
44
|
-
const metadataInputs = getInputNamesFromMetadata(node, typeChecker);
|
|
45
|
-
if (metadataInputs) {
|
|
46
|
-
resolvedInputSetters.push(...metadataInputs);
|
|
47
|
-
}
|
|
48
|
-
return resolvedInputSetters;
|
|
49
|
-
}
|
|
50
|
-
exports.getInputNamesOfClass = getInputNamesOfClass;
|
|
51
|
-
/**
|
|
52
|
-
* Determines the names of all inputs declared in the directive/component metadata
|
|
53
|
-
* of the given class.
|
|
54
|
-
*/
|
|
55
|
-
function getInputNamesFromMetadata(node, typeChecker) {
|
|
56
|
-
if (!node.decorators || !node.decorators.length) {
|
|
57
|
-
return null;
|
|
58
|
-
}
|
|
59
|
-
const decorator = (0, ng_decorators_1.getAngularDecorators)(typeChecker, node.decorators)
|
|
60
|
-
.find(d => d.name === 'Directive' || d.name === 'Component');
|
|
61
|
-
// In case no directive/component decorator could be found for this class, just
|
|
62
|
-
// return null as there is no metadata where an input could be declared.
|
|
63
|
-
if (!decorator) {
|
|
64
|
-
return null;
|
|
65
|
-
}
|
|
66
|
-
const decoratorCall = decorator.node.expression;
|
|
67
|
-
// In case the decorator does define any metadata, there is no metadata
|
|
68
|
-
// where inputs could be declared. This is an edge case because there
|
|
69
|
-
// always needs to be an object literal, but in case there isn't we just
|
|
70
|
-
// want to skip the invalid decorator and return null.
|
|
71
|
-
if (decoratorCall.arguments.length !== 1 ||
|
|
72
|
-
!typescript_1.default.isObjectLiteralExpression(decoratorCall.arguments[0])) {
|
|
73
|
-
return null;
|
|
74
|
-
}
|
|
75
|
-
const metadata = decoratorCall.arguments[0];
|
|
76
|
-
const inputs = metadata.properties.filter(typescript_1.default.isPropertyAssignment)
|
|
77
|
-
.find(p => (0, property_name_1.getPropertyNameText)(p.name) === 'inputs');
|
|
78
|
-
// In case there is no "inputs" property in the directive metadata,
|
|
79
|
-
// just return "null" as no inputs can be declared for this class.
|
|
80
|
-
if (!inputs || !typescript_1.default.isArrayLiteralExpression(inputs.initializer)) {
|
|
81
|
-
return null;
|
|
82
|
-
}
|
|
83
|
-
return inputs.initializer.elements.filter(typescript_1.default.isStringLiteralLike)
|
|
84
|
-
.map(element => element.text.split(':')[0].trim());
|
|
85
|
-
}
|
|
86
|
-
});
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aXZlX2lucHV0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc2NoZW1hdGljcy9taWdyYXRpb25zL3N0YXRpYy1xdWVyaWVzL2FuZ3VsYXIvZGlyZWN0aXZlX2lucHV0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7Ozs7SUFFSCw0REFBNEI7SUFDNUIsZ0ZBQWtFO0lBQ2xFLDJGQUFpRztJQUVqRyx1RkFBdUY7SUFDdkYsU0FBZ0Isb0JBQW9CLENBQ2hDLElBQXlCLEVBQUUsV0FBMkI7UUFDeEQsTUFBTSxvQkFBb0IsR0FBYSxFQUFFLENBQUM7UUFFMUMsaUZBQWlGO1FBQ2pGLHNGQUFzRjtRQUN0RixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUN2QixJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTTtnQkFDckMsQ0FBQyxvQkFBRSxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDaEYsT0FBTzthQUNSO1lBRUQsTUFBTSxjQUFjLEdBQ2hCLElBQUEsb0NBQW9CLEVBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxVQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxDQUFDO1lBRW5GLElBQUksY0FBYyxJQUFJLElBQUEsbUNBQW1CLEVBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNqRCxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUN4QztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgscUZBQXFGO1FBQ3JGLG1GQUFtRjtRQUNuRixvRkFBb0Y7UUFDcEYsTUFBTSxjQUFjLEdBQUcseUJBQXlCLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBRXBFLElBQUksY0FBYyxFQUFFO1lBQ2xCLG9CQUFvQixDQUFDLElBQUksQ0FBQyxHQUFHLGNBQWMsQ0FBQyxDQUFDO1NBQzlDO1FBRUQsT0FBTyxvQkFBb0IsQ0FBQztJQUM5QixDQUFDO0lBOUJELG9EQThCQztJQUVEOzs7T0FHRztJQUNILFNBQVMseUJBQXlCLENBQzlCLElBQXlCLEVBQUUsV0FBMkI7UUFDeEQsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRTtZQUMvQyxPQUFPLElBQUksQ0FBQztTQUNiO1FBRUQsTUFBTSxTQUFTLEdBQUcsSUFBQSxvQ0FBb0IsRUFBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQzthQUM3QyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFdBQVcsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLFdBQVcsQ0FBQyxDQUFDO1FBRW5GLCtFQUErRTtRQUMvRSx3RUFBd0U7UUFDeEUsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNkLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxNQUFNLGFBQWEsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUVoRCx1RUFBdUU7UUFDdkUscUVBQXFFO1FBQ3JFLHdFQUF3RTtRQUN4RSxzREFBc0Q7UUFDdEQsSUFBSSxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDO1lBQ3BDLENBQUMsb0JBQUUsQ0FBQyx5QkFBeUIsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDN0QsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE1BQU0sUUFBUSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUErQixDQUFDO1FBQzFFLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLG9CQUFFLENBQUMsb0JBQW9CLENBQUM7YUFDOUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBQSxtQ0FBbUIsRUFBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUM7UUFFeEUsbUVBQW1FO1FBQ25FLGtFQUFrRTtRQUNsRSxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsb0JBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDL0QsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE9BQU8sTUFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLG9CQUFFLENBQUMsbUJBQW1CLENBQUM7YUFDNUQsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN6RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7Z2V0QW5ndWxhckRlY29yYXRvcnN9IGZyb20gJy4uLy4uLy4uL3V0aWxzL25nX2RlY29yYXRvcnMnO1xuaW1wb3J0IHtnZXRQcm9wZXJ0eU5hbWVUZXh0LCBoYXNQcm9wZXJ0eU5hbWVUZXh0fSBmcm9tICcuLi8uLi8uLi91dGlscy90eXBlc2NyaXB0L3Byb3BlcnR5X25hbWUnO1xuXG4vKiogQW5hbHl6ZXMgdGhlIGdpdmVuIGNsYXNzIGFuZCByZXNvbHZlcyB0aGUgbmFtZSBvZiBhbGwgaW5wdXRzIHdoaWNoIGFyZSBkZWNsYXJlZC4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRJbnB1dE5hbWVzT2ZDbGFzcyhcbiAgICBub2RlOiB0cy5DbGFzc0RlY2xhcmF0aW9uLCB0eXBlQ2hlY2tlcjogdHMuVHlwZUNoZWNrZXIpOiBzdHJpbmdbXSB7XG4gIGNvbnN0IHJlc29sdmVkSW5wdXRTZXR0ZXJzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIC8vIERldGVybWluZXMgdGhlIG5hbWVzIG9mIGFsbCBpbnB1dHMgZGVmaW5lZCBpbiB0aGUgY3VycmVudCBjbGFzcyBkZWNsYXJhdGlvbiBieVxuICAvLyBjaGVja2luZyB3aGV0aGVyIGEgZ2l2ZW4gcHJvcGVydHkvZ2V0dGVyL3NldHRlciBoYXMgdGhlIFwiQElucHV0XCIgZGVjb3JhdG9yIGFwcGxpZWQuXG4gIG5vZGUubWVtYmVycy5mb3JFYWNoKG0gPT4ge1xuICAgIGlmICghbS5kZWNvcmF0b3JzIHx8ICFtLmRlY29yYXRvcnMubGVuZ3RoIHx8XG4gICAgICAgICF0cy5pc1Byb3BlcnR5RGVjbGFyYXRpb24obSkgJiYgIXRzLmlzU2V0QWNjZXNzb3IobSkgJiYgIXRzLmlzR2V0QWNjZXNzb3IobSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBpbnB1dERlY29yYXRvciA9XG4gICAgICAgIGdldEFuZ3VsYXJEZWNvcmF0b3JzKHR5cGVDaGVja2VyLCBtLmRlY29yYXRvcnMhKS5maW5kKGQgPT4gZC5uYW1lID09PSAnSW5wdXQnKTtcblxuICAgIGlmIChpbnB1dERlY29yYXRvciAmJiBoYXNQcm9wZXJ0eU5hbWVUZXh0KG0ubmFtZSkpIHtcbiAgICAgIHJlc29sdmVkSW5wdXRTZXR0ZXJzLnB1c2gobS5uYW1lLnRleHQpO1xuICAgIH1cbiAgfSk7XG5cbiAgLy8gQmVzaWRlcyBsb29raW5nIGZvciBpbW1lZGlhdGUgc2V0dGVycyBpbiB0aGUgY3VycmVudCBjbGFzcyBkZWNsYXJhdGlvbiwgZGV2ZWxvcGVyc1xuICAvLyBjYW4gYWxzbyBkZWZpbmUgaW5wdXRzIGluIHRoZSBkaXJlY3RpdmUgbWV0YWRhdGEgdXNpbmcgdGhlIFwiaW5wdXRzXCIgcHJvcGVydHkuIFdlXG4gIC8vIGFsc28gbmVlZCB0byBkZXRlcm1pbmUgdGhlc2UgaW5wdXRzIHdoaWNoIGFyZSBkZWNsYXJlZCBpbiB0aGUgZGlyZWN0aXZlIG1ldGFkYXRhLlxuICBjb25zdCBtZXRhZGF0YUlucHV0cyA9IGdldElucHV0TmFtZXNGcm9tTWV0YWRhdGEobm9kZSwgdHlwZUNoZWNrZXIpO1xuXG4gIGlmIChtZXRhZGF0YUlucHV0cykge1xuICAgIHJlc29sdmVkSW5wdXRTZXR0ZXJzLnB1c2goLi4ubWV0YWRhdGFJbnB1dHMpO1xuICB9XG5cbiAgcmV0dXJuIHJlc29sdmVkSW5wdXRTZXR0ZXJzO1xufVxuXG4vKipcbiAqIERldGVybWluZXMgdGhlIG5hbWVzIG9mIGFsbCBpbnB1dHMgZGVjbGFyZWQgaW4gdGhlIGRpcmVjdGl2ZS9jb21wb25lbnQgbWV0YWRhdGFcbiAqIG9mIHRoZSBnaXZlbiBjbGFzcy5cbiAqL1xuZnVuY3Rpb24gZ2V0SW5wdXROYW1lc0Zyb21NZXRhZGF0YShcbiAgICBub2RlOiB0cy5DbGFzc0RlY2xhcmF0aW9uLCB0eXBlQ2hlY2tlcjogdHMuVHlwZUNoZWNrZXIpOiBzdHJpbmdbXXxudWxsIHtcbiAgaWYgKCFub2RlLmRlY29yYXRvcnMgfHwgIW5vZGUuZGVjb3JhdG9ycy5sZW5ndGgpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGNvbnN0IGRlY29yYXRvciA9IGdldEFuZ3VsYXJEZWNvcmF0b3JzKHR5cGVDaGVja2VyLCBub2RlLmRlY29yYXRvcnMpXG4gICAgICAgICAgICAgICAgICAgICAgICAuZmluZChkID0+IGQubmFtZSA9PT0gJ0RpcmVjdGl2ZScgfHwgZC5uYW1lID09PSAnQ29tcG9uZW50Jyk7XG5cbiAgLy8gSW4gY2FzZSBubyBkaXJlY3RpdmUvY29tcG9uZW50IGRlY29yYXRvciBjb3VsZCBiZSBmb3VuZCBmb3IgdGhpcyBjbGFzcywganVzdFxuICAvLyByZXR1cm4gbnVsbCBhcyB0aGVyZSBpcyBubyBtZXRhZGF0YSB3aGVyZSBhbiBpbnB1dCBjb3VsZCBiZSBkZWNsYXJlZC5cbiAgaWYgKCFkZWNvcmF0b3IpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGNvbnN0IGRlY29yYXRvckNhbGwgPSBkZWNvcmF0b3Iubm9kZS5leHByZXNzaW9uO1xuXG4gIC8vIEluIGNhc2UgdGhlIGRlY29yYXRvciBkb2VzIGRlZmluZSBhbnkgbWV0YWRhdGEsIHRoZXJlIGlzIG5vIG1ldGFkYXRhXG4gIC8vIHdoZXJlIGlucHV0cyBjb3VsZCBiZSBkZWNsYXJlZC4gVGhpcyBpcyBhbiBlZGdlIGNhc2UgYmVjYXVzZSB0aGVyZVxuICAvLyBhbHdheXMgbmVlZHMgdG8gYmUgYW4gb2JqZWN0IGxpdGVyYWwsIGJ1dCBpbiBjYXNlIHRoZXJlIGlzbid0IHdlIGp1c3RcbiAgLy8gd2FudCB0byBza2lwIHRoZSBpbnZhbGlkIGRlY29yYXRvciBhbmQgcmV0dXJuIG51bGwuXG4gIGlmIChkZWNvcmF0b3JDYWxsLmFyZ3VtZW50cy5sZW5ndGggIT09IDEgfHxcbiAgICAgICF0cy5pc09iamVjdExpdGVyYWxFeHByZXNzaW9uKGRlY29yYXRvckNhbGwuYXJndW1lbnRzWzBdKSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3QgbWV0YWRhdGEgPSBkZWNvcmF0b3JDYWxsLmFyZ3VtZW50c1swXSBhcyB0cy5PYmplY3RMaXRlcmFsRXhwcmVzc2lvbjtcbiAgY29uc3QgaW5wdXRzID0gbWV0YWRhdGEucHJvcGVydGllcy5maWx0ZXIodHMuaXNQcm9wZXJ0eUFzc2lnbm1lbnQpXG4gICAgICAgICAgICAgICAgICAgICAuZmluZChwID0+IGdldFByb3BlcnR5TmFtZVRleHQocC5uYW1lKSA9PT0gJ2lucHV0cycpO1xuXG4gIC8vIEluIGNhc2UgdGhlcmUgaXMgbm8gXCJpbnB1dHNcIiBwcm9wZXJ0eSBpbiB0aGUgZGlyZWN0aXZlIG1ldGFkYXRhLFxuICAvLyBqdXN0IHJldHVybiBcIm51bGxcIiBhcyBubyBpbnB1dHMgY2FuIGJlIGRlY2xhcmVkIGZvciB0aGlzIGNsYXNzLlxuICBpZiAoIWlucHV0cyB8fCAhdHMuaXNBcnJheUxpdGVyYWxFeHByZXNzaW9uKGlucHV0cy5pbml0aWFsaXplcikpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiBpbnB1dHMuaW5pdGlhbGl6ZXIuZWxlbWVudHMuZmlsdGVyKHRzLmlzU3RyaW5nTGl0ZXJhbExpa2UpXG4gICAgICAubWFwKGVsZW1lbnQgPT4gZWxlbWVudC50ZXh0LnNwbGl0KCc6JylbMF0udHJpbSgpKTtcbn1cbiJdfQ==
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC 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
|
-
/// <amd-module name="@angular/core/schematics/migrations/static-queries/angular/ng_query_visitor" />
|
|
9
|
-
import ts from 'typescript';
|
|
10
|
-
import { ResolvedTemplate } from '../../../utils/ng_component_template';
|
|
11
|
-
import { NgQueryDefinition } from './query-definition';
|
|
12
|
-
/** Resolved metadata of a given class. */
|
|
13
|
-
export interface ClassMetadata {
|
|
14
|
-
/** List of class declarations that derive from the given class. */
|
|
15
|
-
derivedClasses: ts.ClassDeclaration[];
|
|
16
|
-
/** Super class of the given class. */
|
|
17
|
-
superClass: ts.ClassDeclaration | null;
|
|
18
|
-
/** List of property names that declare an Angular input within the given class. */
|
|
19
|
-
ngInputNames: string[];
|
|
20
|
-
/** Component template that belongs to that class if present. */
|
|
21
|
-
template?: ResolvedTemplate;
|
|
22
|
-
}
|
|
23
|
-
/** Type that describes a map which can be used to get a class declaration's metadata. */
|
|
24
|
-
export declare type ClassMetadataMap = Map<ts.ClassDeclaration, ClassMetadata>;
|
|
25
|
-
/**
|
|
26
|
-
* Visitor that can be used to determine Angular queries within given TypeScript nodes.
|
|
27
|
-
* Besides resolving queries, the visitor also records class relations and searches for
|
|
28
|
-
* Angular input setters which can be used to analyze the timing usage of a given query.
|
|
29
|
-
*/
|
|
30
|
-
export declare class NgQueryResolveVisitor {
|
|
31
|
-
typeChecker: ts.TypeChecker;
|
|
32
|
-
/** Resolved Angular query definitions. */
|
|
33
|
-
resolvedQueries: Map<ts.SourceFile, NgQueryDefinition[]>;
|
|
34
|
-
/** Maps a class declaration to its class metadata. */
|
|
35
|
-
classMetadata: ClassMetadataMap;
|
|
36
|
-
constructor(typeChecker: ts.TypeChecker);
|
|
37
|
-
visitNode(node: ts.Node): void;
|
|
38
|
-
private visitPropertyDeclaration;
|
|
39
|
-
private visitAccessorDeclaration;
|
|
40
|
-
private visitClassDeclaration;
|
|
41
|
-
private _recordQueryDeclaration;
|
|
42
|
-
private _recordClassInputSetters;
|
|
43
|
-
private _recordClassInheritances;
|
|
44
|
-
private _getClassMetadata;
|
|
45
|
-
}
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC 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
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
-
};
|
|
11
|
-
(function (factory) {
|
|
12
|
-
if (typeof module === "object" && typeof module.exports === "object") {
|
|
13
|
-
var v = factory(require, exports);
|
|
14
|
-
if (v !== undefined) module.exports = v;
|
|
15
|
-
}
|
|
16
|
-
else if (typeof define === "function" && define.amd) {
|
|
17
|
-
define("@angular/core/schematics/migrations/static-queries/angular/ng_query_visitor", ["require", "exports", "typescript", "@angular/core/schematics/utils/ng_decorators", "@angular/core/schematics/utils/typescript/class_declaration", "@angular/core/schematics/utils/typescript/property_name", "@angular/core/schematics/migrations/static-queries/angular/directive_inputs", "@angular/core/schematics/migrations/static-queries/angular/query-definition"], factory);
|
|
18
|
-
}
|
|
19
|
-
})(function (require, exports) {
|
|
20
|
-
"use strict";
|
|
21
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
exports.NgQueryResolveVisitor = void 0;
|
|
23
|
-
const typescript_1 = __importDefault(require("typescript"));
|
|
24
|
-
const ng_decorators_1 = require("@angular/core/schematics/utils/ng_decorators");
|
|
25
|
-
const class_declaration_1 = require("@angular/core/schematics/utils/typescript/class_declaration");
|
|
26
|
-
const property_name_1 = require("@angular/core/schematics/utils/typescript/property_name");
|
|
27
|
-
const directive_inputs_1 = require("@angular/core/schematics/migrations/static-queries/angular/directive_inputs");
|
|
28
|
-
const query_definition_1 = require("@angular/core/schematics/migrations/static-queries/angular/query-definition");
|
|
29
|
-
/**
|
|
30
|
-
* Visitor that can be used to determine Angular queries within given TypeScript nodes.
|
|
31
|
-
* Besides resolving queries, the visitor also records class relations and searches for
|
|
32
|
-
* Angular input setters which can be used to analyze the timing usage of a given query.
|
|
33
|
-
*/
|
|
34
|
-
class NgQueryResolveVisitor {
|
|
35
|
-
constructor(typeChecker) {
|
|
36
|
-
this.typeChecker = typeChecker;
|
|
37
|
-
/** Resolved Angular query definitions. */
|
|
38
|
-
this.resolvedQueries = new Map();
|
|
39
|
-
/** Maps a class declaration to its class metadata. */
|
|
40
|
-
this.classMetadata = new Map();
|
|
41
|
-
}
|
|
42
|
-
visitNode(node) {
|
|
43
|
-
switch (node.kind) {
|
|
44
|
-
case typescript_1.default.SyntaxKind.PropertyDeclaration:
|
|
45
|
-
this.visitPropertyDeclaration(node);
|
|
46
|
-
break;
|
|
47
|
-
case typescript_1.default.SyntaxKind.ClassDeclaration:
|
|
48
|
-
this.visitClassDeclaration(node);
|
|
49
|
-
break;
|
|
50
|
-
case typescript_1.default.SyntaxKind.GetAccessor:
|
|
51
|
-
case typescript_1.default.SyntaxKind.SetAccessor:
|
|
52
|
-
this.visitAccessorDeclaration(node);
|
|
53
|
-
break;
|
|
54
|
-
}
|
|
55
|
-
typescript_1.default.forEachChild(node, n => this.visitNode(n));
|
|
56
|
-
}
|
|
57
|
-
visitPropertyDeclaration(node) {
|
|
58
|
-
this._recordQueryDeclaration(node, node, (0, property_name_1.getPropertyNameText)(node.name));
|
|
59
|
-
}
|
|
60
|
-
visitAccessorDeclaration(node) {
|
|
61
|
-
this._recordQueryDeclaration(node, null, (0, property_name_1.getPropertyNameText)(node.name));
|
|
62
|
-
}
|
|
63
|
-
visitClassDeclaration(node) {
|
|
64
|
-
this._recordClassInputSetters(node);
|
|
65
|
-
this._recordClassInheritances(node);
|
|
66
|
-
}
|
|
67
|
-
_recordQueryDeclaration(node, property, queryName) {
|
|
68
|
-
if (!node.decorators || !node.decorators.length) {
|
|
69
|
-
return;
|
|
70
|
-
}
|
|
71
|
-
const ngDecorators = (0, ng_decorators_1.getAngularDecorators)(this.typeChecker, node.decorators);
|
|
72
|
-
const queryDecorator = ngDecorators.find(({ name }) => name === 'ViewChild' || name === 'ContentChild');
|
|
73
|
-
// Ensure that the current property declaration is defining a query.
|
|
74
|
-
if (!queryDecorator) {
|
|
75
|
-
return;
|
|
76
|
-
}
|
|
77
|
-
const queryContainer = (0, class_declaration_1.findParentClassDeclaration)(node);
|
|
78
|
-
// If the query is not located within a class declaration, skip this node.
|
|
79
|
-
if (!queryContainer) {
|
|
80
|
-
return;
|
|
81
|
-
}
|
|
82
|
-
const sourceFile = node.getSourceFile();
|
|
83
|
-
const newQueries = this.resolvedQueries.get(sourceFile) || [];
|
|
84
|
-
this.resolvedQueries.set(sourceFile, newQueries.concat({
|
|
85
|
-
name: queryName,
|
|
86
|
-
type: queryDecorator.name === 'ViewChild' ? query_definition_1.QueryType.ViewChild : query_definition_1.QueryType.ContentChild,
|
|
87
|
-
node,
|
|
88
|
-
property,
|
|
89
|
-
decorator: queryDecorator,
|
|
90
|
-
container: queryContainer,
|
|
91
|
-
}));
|
|
92
|
-
}
|
|
93
|
-
_recordClassInputSetters(node) {
|
|
94
|
-
const resolvedInputNames = (0, directive_inputs_1.getInputNamesOfClass)(node, this.typeChecker);
|
|
95
|
-
if (resolvedInputNames) {
|
|
96
|
-
const classMetadata = this._getClassMetadata(node);
|
|
97
|
-
classMetadata.ngInputNames = resolvedInputNames;
|
|
98
|
-
this.classMetadata.set(node, classMetadata);
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
_recordClassInheritances(node) {
|
|
102
|
-
const baseTypes = (0, class_declaration_1.getBaseTypeIdentifiers)(node);
|
|
103
|
-
if (!baseTypes || baseTypes.length !== 1) {
|
|
104
|
-
return;
|
|
105
|
-
}
|
|
106
|
-
const superClass = baseTypes[0];
|
|
107
|
-
const baseClassMetadata = this._getClassMetadata(node);
|
|
108
|
-
// We need to resolve the value declaration through the resolved type as the base
|
|
109
|
-
// class could be declared in different source files and the local symbol won't
|
|
110
|
-
// contain a value declaration as the value is not declared locally.
|
|
111
|
-
const symbol = this.typeChecker.getTypeAtLocation(superClass).getSymbol();
|
|
112
|
-
if (symbol && symbol.valueDeclaration && typescript_1.default.isClassDeclaration(symbol.valueDeclaration)) {
|
|
113
|
-
const extendedClass = symbol.valueDeclaration;
|
|
114
|
-
const classMetadataExtended = this._getClassMetadata(extendedClass);
|
|
115
|
-
// Record all classes that derive from the given class. This makes it easy to
|
|
116
|
-
// determine all classes that could potentially use inherited queries statically.
|
|
117
|
-
classMetadataExtended.derivedClasses.push(node);
|
|
118
|
-
this.classMetadata.set(extendedClass, classMetadataExtended);
|
|
119
|
-
// Record the super class of the current class.
|
|
120
|
-
baseClassMetadata.superClass = extendedClass;
|
|
121
|
-
this.classMetadata.set(node, baseClassMetadata);
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
_getClassMetadata(node) {
|
|
125
|
-
return this.classMetadata.get(node) || { derivedClasses: [], superClass: null, ngInputNames: [] };
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
exports.NgQueryResolveVisitor = NgQueryResolveVisitor;
|
|
129
|
-
});
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdfcXVlcnlfdmlzaXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc2NoZW1hdGljcy9taWdyYXRpb25zL3N0YXRpYy1xdWVyaWVzL2FuZ3VsYXIvbmdfcXVlcnlfdmlzaXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7Ozs7SUFFSCw0REFBNEI7SUFHNUIsZ0ZBQWtFO0lBQ2xFLG1HQUErRztJQUMvRywyRkFBNEU7SUFFNUUsa0hBQXdEO0lBQ3hELGtIQUFnRTtJQWtCaEU7Ozs7T0FJRztJQUNILE1BQWEscUJBQXFCO1FBT2hDLFlBQW1CLFdBQTJCO1lBQTNCLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtZQU45QywwQ0FBMEM7WUFDMUMsb0JBQWUsR0FBRyxJQUFJLEdBQUcsRUFBc0MsQ0FBQztZQUVoRSxzREFBc0Q7WUFDdEQsa0JBQWEsR0FBcUIsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUVLLENBQUM7UUFFbEQsU0FBUyxDQUFDLElBQWE7WUFDckIsUUFBUSxJQUFJLENBQUMsSUFBSSxFQUFFO2dCQUNqQixLQUFLLG9CQUFFLENBQUMsVUFBVSxDQUFDLG1CQUFtQjtvQkFDcEMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLElBQThCLENBQUMsQ0FBQztvQkFDOUQsTUFBTTtnQkFDUixLQUFLLG9CQUFFLENBQUMsVUFBVSxDQUFDLGdCQUFnQjtvQkFDakMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQTJCLENBQUMsQ0FBQztvQkFDeEQsTUFBTTtnQkFDUixLQUFLLG9CQUFFLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQztnQkFDL0IsS0FBSyxvQkFBRSxDQUFDLFVBQVUsQ0FBQyxXQUFXO29CQUM1QixJQUFJLENBQUMsd0JBQXdCLENBQUMsSUFBOEIsQ0FBQyxDQUFDO29CQUM5RCxNQUFNO2FBQ1Q7WUFFRCxvQkFBRSxDQUFD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LHNEQXNIQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbmltcG9ydCB7UmVzb2x2ZWRUZW1wbGF0ZX0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvbmdfY29tcG9uZW50X3RlbXBsYXRlJztcbmltcG9ydCB7Z2V0QW5ndWxhckRlY29yYXRvcnN9IGZyb20gJy4uLy4uLy4uL3V0aWxzL25nX2RlY29yYXRvcnMnO1xuaW1wb3J0IHtmaW5kUGFyZW50Q2xhc3NEZWNsYXJhdGlvbiwgZ2V0QmFzZVR5cGVJZGVudGlmaWVyc30gZnJvbSAnLi4vLi4vLi4vdXRpbHMvdHlwZXNjcmlwdC9jbGFzc19kZWNsYXJhdGlvbic7XG5pbXBvcnQge2dldFByb3BlcnR5TmFtZVRleHR9IGZyb20gJy4uLy4uLy4uL3V0aWxzL3R5cGVzY3JpcHQvcHJvcGVydHlfbmFtZSc7XG5cbmltcG9ydCB7Z2V0SW5wdXROYW1lc09mQ2xhc3N9IGZyb20gJy4vZGlyZWN0aXZlX2lucHV0cyc7XG5pbXBvcnQge05nUXVlcnlEZWZpbml0aW9uLCBRdWVyeVR5cGV9IGZyb20gJy4vcXVlcnktZGVmaW5pdGlvbic7XG5cblxuLyoqIFJlc29sdmVkIG1ldGFkYXRhIG9mIGEgZ2l2ZW4gY2xhc3MuICovXG5leHBvcnQgaW50ZXJmYWNlIENsYXNzTWV0YWRhdGEge1xuICAvKiogTGlzdCBvZiBjbGFzcyBkZWNsYXJhdGlvbnMgdGhhdCBkZXJpdmUgZnJvbSB0aGUgZ2l2ZW4gY2xhc3MuICovXG4gIGRlcml2ZWRDbGFzc2VzOiB0cy5DbGFzc0RlY2xhcmF0aW9uW107XG4gIC8qKiBTdXBlciBjbGFzcyBvZiB0aGUgZ2l2ZW4gY2xhc3MuICovXG4gIHN1cGVyQ2xhc3M6IHRzLkNsYXNzRGVjbGFyYXRpb258bnVsbDtcbiAgLyoqIExpc3Qgb2YgcHJvcGVydHkgbmFtZXMgdGhhdCBkZWNsYXJlIGFuIEFuZ3VsYXIgaW5wdXQgd2l0aGluIHRoZSBnaXZlbiBjbGFzcy4gKi9cbiAgbmdJbnB1dE5hbWVzOiBzdHJpbmdbXTtcbiAgLyoqIENvbXBvbmVudCB0ZW1wbGF0ZSB0aGF0IGJlbG9uZ3MgdG8gdGhhdCBjbGFzcyBpZiBwcmVzZW50LiAqL1xuICB0ZW1wbGF0ZT86IFJlc29sdmVkVGVtcGxhdGU7XG59XG5cbi8qKiBUeXBlIHRoYXQgZGVzY3JpYmVzIGEgbWFwIHdoaWNoIGNhbiBiZSB1c2VkIHRvIGdldCBhIGNsYXNzIGRlY2xhcmF0aW9uJ3MgbWV0YWRhdGEuICovXG5leHBvcnQgdHlwZSBDbGFzc01ldGFkYXRhTWFwID0gTWFwPHRzLkNsYXNzRGVjbGFyYXRpb24sIENsYXNzTWV0YWRhdGE+O1xuXG4vKipcbiAqIFZpc2l0b3IgdGhhdCBjYW4gYmUgdXNlZCB0byBkZXRlcm1pbmUgQW5ndWxhciBxdWVyaWVzIHdpdGhpbiBnaXZlbiBUeXBlU2NyaXB0IG5vZGVzLlxuICogQmVzaWRlcyByZXNvbHZpbmcgcXVlcmllcywgdGhlIHZpc2l0b3IgYWxzbyByZWNvcmRzIGNsYXNzIHJlbGF0aW9ucyBhbmQgc2VhcmNoZXMgZm9yXG4gKiBBbmd1bGFyIGlucHV0IHNldHRlcnMgd2hpY2ggY2FuIGJlIHVzZWQgdG8gYW5hbHl6ZSB0aGUgdGltaW5nIHVzYWdlIG9mIGEgZ2l2ZW4gcXVlcnkuXG4gKi9cbmV4cG9ydCBjbGFzcyBOZ1F1ZXJ5UmVzb2x2ZVZpc2l0b3Ige1xuICAvKiogUmVzb2x2ZWQgQW5ndWxhciBxdWVyeSBkZWZpbml0aW9ucy4gKi9cbiAgcmVzb2x2ZWRRdWVyaWVzID0gbmV3IE1hcDx0cy5Tb3VyY2VGaWxlLCBOZ1F1ZXJ5RGVmaW5pdGlvbltdPigpO1xuXG4gIC8qKiBNYXBzIGEgY2xhc3MgZGVjbGFyYXRpb24gdG8gaXRzIGNsYXNzIG1ldGFkYXRhLiAqL1xuICBjbGFzc01ldGFkYXRhOiBDbGFzc01ldGFkYXRhTWFwID0gbmV3IE1hcCgpO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB0eXBlQ2hlY2tlcjogdHMuVHlwZUNoZWNrZXIpIHt9XG5cbiAgdmlzaXROb2RlKG5vZGU6IHRzLk5vZGUpIHtcbiAgICBzd2l0Y2ggKG5vZGUua2luZCkge1xuICAgICAgY2FzZSB0cy5TeW50YXhLaW5kLlByb3BlcnR5RGVjbGFyYXRpb246XG4gICAgICAgIHRoaXMudmlzaXRQcm9wZXJ0eURlY2xhcmF0aW9uKG5vZGUgYXMgdHMuUHJvcGVydHlEZWNsYXJhdGlvbik7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSB0cy5TeW50YXhLaW5kLkNsYXNzRGVjbGFyYXRpb246XG4gICAgICAgIHRoaXMudmlzaXRDbGFzc0RlY2xhcmF0aW9uKG5vZGUgYXMgdHMuQ2xhc3NEZWNsYXJhdGlvbik7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSB0cy5TeW50YXhLaW5kLkdldEFjY2Vzc29yOlxuICAgICAgY2FzZSB0cy5TeW50YXhLaW5kLlNldEFjY2Vzc29yOlxuICAgICAgICB0aGlzLnZpc2l0QWNjZXNzb3JEZWNsYXJhdGlvbihub2RlIGFzIHRzLkFjY2Vzc29yRGVjbGFyYXRpb24pO1xuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICB0cy5mb3JFYWNoQ2hpbGQobm9kZSwgbiA9PiB0aGlzLnZpc2l0Tm9kZShuKSk7XG4gIH1cblxuICBwcml2YXRlIHZpc2l0UHJvcGVydHlEZWNsYXJhdGlvbihub2RlOiB0cy5Qcm9wZXJ0eURlY2xhcmF0aW9uKSB7XG4gICAgdGhpcy5fcmVjb3JkUXVlcnlEZWNsYXJhdGlvbihub2RlLCBub2RlLCBnZXRQcm9wZXJ0eU5hbWVUZXh0KG5vZGUubmFtZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSB2aXNpdEFjY2Vzc29yRGVjbGFyYXRpb24obm9kZTogdHMuQWNjZXNzb3JEZWNsYXJhdGlvbikge1xuICAgIHRoaXMuX3JlY29yZFF1ZXJ5RGVjbGFyYXRpb24obm9kZSwgbnVsbCwgZ2V0UHJvcGVydHlOYW1lVGV4dChub2RlLm5hbWUpKTtcbiAgfVxuXG4gIHByaXZhdGUgdmlzaXRDbGFzc0RlY2xhcmF0aW9uKG5vZGU6IHRzLkNsYXNzRGVjbGFyYXRpb24pIHtcbiAgICB0aGlzLl9yZWNvcmRDbGFzc0lucHV0U2V0dGVycyhub2RlKTtcbiAgICB0aGlzLl9yZWNvcmRDbGFzc0luaGVyaXRhbmNlcyhub2RlKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlY29yZFF1ZXJ5RGVjbGFyYXRpb24oXG4gICAgICBub2RlOiB0cy5Ob2RlLCBwcm9wZXJ0eTogdHMuUHJvcGVydHlEZWNsYXJhdGlvbnxudWxsLCBxdWVyeU5hbWU6IHN0cmluZ3xudWxsKSB7XG4gICAgaWYgKCFub2RlLmRlY29yYXRvcnMgfHwgIW5vZGUuZGVjb3JhdG9ycy5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBuZ0RlY29yYXRvcnMgPSBnZXRBbmd1bGFyRGVjb3JhdG9ycyh0aGlzLnR5cGVDaGVja2VyLCBub2RlLmRlY29yYXRvcnMpO1xuICAgIGNvbnN0IHF1ZXJ5RGVjb3JhdG9yID1cbiAgICAgICAgbmdEZWNvcmF0b3JzLmZpbmQoKHtuYW1lfSkgPT4gbmFtZSA9PT0gJ1ZpZXdDaGlsZCcgfHwgbmFtZSA9PT0gJ0NvbnRlbnRDaGlsZCcpO1xuXG4gICAgLy8gRW5zdXJlIHRoYXQgdGhlIGN1cnJlbnQgcHJvcGVydHkgZGVjbGFyYXRpb24gaXMgZGVmaW5pbmcgYSBxdWVyeS5cbiAgICBpZiAoIXF1ZXJ5RGVjb3JhdG9yKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcXVlcnlDb250YWluZXIgPSBmaW5kUGFyZW50Q2xhc3NEZWNsYXJhdGlvbihub2RlKTtcblxuICAgIC8vIElmIHRoZSBxdWVyeSBpcyBub3QgbG9jYXRlZCB3aXRoaW4gYSBjbGFzcyBkZWNsYXJhdGlvbiwgc2tpcCB0aGlzIG5vZGUuXG4gICAgaWYgKCFxdWVyeUNvbnRhaW5lcikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHNvdXJjZUZpbGUgPSBub2RlLmdldFNvdXJjZUZpbGUoKTtcbiAgICBjb25zdCBuZXdRdWVyaWVzID0gdGhpcy5yZXNvbHZlZFF1ZXJpZXMuZ2V0KHNvdXJjZUZpbGUpIHx8IFtdO1xuXG4gICAgdGhpcy5yZXNvbHZlZFF1ZXJpZXMuc2V0KHNvdXJjZUZpbGUsIG5ld1F1ZXJpZXMuY29uY2F0KHtcbiAgICAgIG5hbWU6IHF1ZXJ5TmFtZSxcbiAgICAgIHR5cGU6IHF1ZXJ5RGVjb3JhdG9yLm5hbWUgPT09ICdWaWV3Q2hpbGQnID8gUXVlcnlUeXBlLlZpZXdDaGlsZCA6IFF1ZXJ5VHlwZS5Db250ZW50Q2hpbGQsXG4gICAgICBub2RlLFxuICAgICAgcHJvcGVydHksXG4gICAgICBkZWNvcmF0b3I6IHF1ZXJ5RGVjb3JhdG9yLFxuICAgICAgY29udGFpbmVyOiBxdWVyeUNvbnRhaW5lcixcbiAgICB9KSk7XG4gIH1cblxuICBwcml2YXRlIF9yZWNvcmRDbGFzc0lucHV0U2V0dGVycyhub2RlOiB0cy5DbGFzc0RlY2xhcmF0aW9uKSB7XG4gICAgY29uc3QgcmVzb2x2ZWRJbnB1dE5hbWVzID0gZ2V0SW5wdXROYW1lc09mQ2xhc3Mobm9kZSwgdGhpcy50eXBlQ2hlY2tlcik7XG5cbiAgICBpZiAocmVzb2x2ZWRJbnB1dE5hbWVzKSB7XG4gICAgICBjb25zdCBjbGFzc01ldGFkYXRhID0gdGhpcy5fZ2V0Q2xhc3NNZXRhZGF0YShub2RlKTtcblxuICAgICAgY2xhc3NNZXRhZGF0YS5uZ0lucHV0TmFtZXMgPSByZXNvbHZlZElucHV0TmFtZXM7XG4gICAgICB0aGlzLmNsYXNzTWV0YWRhdGEuc2V0KG5vZGUsIGNsYXNzTWV0YWRhdGEpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3JlY29yZENsYXNzSW5oZXJpdGFuY2VzKG5vZGU6IHRzLkNsYXNzRGVjbGFyYXRpb24pIHtcbiAgICBjb25zdCBiYXNlVHlwZXMgPSBnZXRCYXNlVHlwZUlkZW50aWZpZXJzKG5vZGUpO1xuXG4gICAgaWYgKCFiYXNlVHlwZXMgfHwgYmFzZVR5cGVzLmxlbmd0aCAhPT0gMSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHN1cGVyQ2xhc3MgPSBiYXNlVHlwZXNbMF07XG4gICAgY29uc3QgYmFzZUNsYXNzTWV0YWRhdGEgPSB0aGlzLl9nZXRDbGFzc01ldGFkYXRhKG5vZGUpO1xuXG4gICAgLy8gV2UgbmVlZCB0byByZXNvbHZlIHRoZSB2YWx1ZSBkZWNsYXJhdGlvbiB0aHJvdWdoIHRoZSByZXNvbHZlZCB0eXBlIGFzIHRoZSBiYXNlXG4gICAgLy8gY2xhc3MgY291bGQgYmUgZGVjbGFyZWQgaW4gZGlmZmVyZW50IHNvdXJjZSBmaWxlcyBhbmQgdGhlIGxvY2FsIHN5bWJvbCB3b24ndFxuICAgIC8vIGNvbnRhaW4gYSB2YWx1ZSBkZWNsYXJhdGlvbiBhcyB0aGUgdmFsdWUgaXMgbm90IGRlY2xhcmVkIGxvY2FsbHkuXG4gICAgY29uc3Qgc3ltYm9sID0gdGhpcy50eXBlQ2hlY2tlci5nZXRUeXBlQXRMb2NhdGlvbihzdXBlckNsYXNzKS5nZXRTeW1ib2woKTtcblxuICAgIGlmIChzeW1ib2wgJiYgc3ltYm9sLnZhbHVlRGVjbGFyYXRpb24gJiYgdHMuaXNDbGFzc0RlY2xhcmF0aW9uKHN5bWJvbC52YWx1ZURlY2xhcmF0aW9uKSkge1xuICAgICAgY29uc3QgZXh0ZW5kZWRDbGFzcyA9IHN5bWJvbC52YWx1ZURlY2xhcmF0aW9uO1xuICAgICAgY29uc3QgY2xhc3NNZXRhZGF0YUV4dGVuZGVkID0gdGhpcy5fZ2V0Q2xhc3NNZXRhZGF0YShleHRlbmRlZENsYXNzKTtcblxuICAgICAgLy8gUmVjb3JkIGFsbCBjbGFzc2VzIHRoYXQgZGVyaXZlIGZyb20gdGhlIGdpdmVuIGNsYXNzLiBUaGlzIG1ha2VzIGl0IGVhc3kgdG9cbiAgICAgIC8vIGRldGVybWluZSBhbGwgY2xhc3NlcyB0aGF0IGNvdWxkIHBvdGVudGlhbGx5IHVzZSBpbmhlcml0ZWQgcXVlcmllcyBzdGF0aWNhbGx5LlxuICAgICAgY2xhc3NNZXRhZGF0YUV4dGVuZGVkLmRlcml2ZWRDbGFzc2VzLnB1c2gobm9kZSk7XG4gICAgICB0aGlzLmNsYXNzTWV0YWRhdGEuc2V0KGV4dGVuZGVkQ2xhc3MsIGNsYXNzTWV0YWRhdGFFeHRlbmRlZCk7XG5cbiAgICAgIC8vIFJlY29yZCB0aGUgc3VwZXIgY2xhc3Mgb2YgdGhlIGN1cnJlbnQgY2xhc3MuXG4gICAgICBiYXNlQ2xhc3NNZXRhZGF0YS5zdXBlckNsYXNzID0gZXh0ZW5kZWRDbGFzcztcbiAgICAgIHRoaXMuY2xhc3NNZXRhZGF0YS5zZXQobm9kZSwgYmFzZUNsYXNzTWV0YWRhdGEpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2dldENsYXNzTWV0YWRhdGEobm9kZTogdHMuQ2xhc3NEZWNsYXJhdGlvbik6IENsYXNzTWV0YWRhdGEge1xuICAgIHJldHVybiB0aGlzLmNsYXNzTWV0YWRhdGEuZ2V0KG5vZGUpIHx8IHtkZXJpdmVkQ2xhc3NlczogW10sIHN1cGVyQ2xhc3M6IG51bGwsIG5nSW5wdXROYW1lczogW119O1xuICB9XG59XG4iXX0=
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC 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
|
-
/// <amd-module name="@angular/core/schematics/migrations/static-queries/angular/query-definition" />
|
|
9
|
-
import ts from 'typescript';
|
|
10
|
-
import { NgDecorator } from '../../../utils/ng_decorators';
|
|
11
|
-
/** Timing of a given query. Either static or dynamic. */
|
|
12
|
-
export declare enum QueryTiming {
|
|
13
|
-
STATIC = 0,
|
|
14
|
-
DYNAMIC = 1
|
|
15
|
-
}
|
|
16
|
-
/** Type of a given query. */
|
|
17
|
-
export declare enum QueryType {
|
|
18
|
-
ViewChild = 0,
|
|
19
|
-
ContentChild = 1
|
|
20
|
-
}
|
|
21
|
-
export interface NgQueryDefinition {
|
|
22
|
-
/** Name of the query. Set to "null" in case the query name is not statically analyzable. */
|
|
23
|
-
name: string | null;
|
|
24
|
-
/** Type of the query definition. */
|
|
25
|
-
type: QueryType;
|
|
26
|
-
/** Node that declares this query. */
|
|
27
|
-
node: ts.Node;
|
|
28
|
-
/**
|
|
29
|
-
* Property declaration that refers to the query value. For accessors there
|
|
30
|
-
* is no property that is guaranteed to access the query value.
|
|
31
|
-
*/
|
|
32
|
-
property: ts.PropertyDeclaration | null;
|
|
33
|
-
/** Decorator that declares this as a query. */
|
|
34
|
-
decorator: NgDecorator;
|
|
35
|
-
/** Class declaration that holds this query. */
|
|
36
|
-
container: ts.ClassDeclaration;
|
|
37
|
-
}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC 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/core/schematics/migrations/static-queries/angular/query-definition", ["require", "exports"], factory);
|
|
15
|
-
}
|
|
16
|
-
})(function (require, exports) {
|
|
17
|
-
"use strict";
|
|
18
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.QueryType = exports.QueryTiming = void 0;
|
|
20
|
-
/** Timing of a given query. Either static or dynamic. */
|
|
21
|
-
var QueryTiming;
|
|
22
|
-
(function (QueryTiming) {
|
|
23
|
-
QueryTiming[QueryTiming["STATIC"] = 0] = "STATIC";
|
|
24
|
-
QueryTiming[QueryTiming["DYNAMIC"] = 1] = "DYNAMIC";
|
|
25
|
-
})(QueryTiming = exports.QueryTiming || (exports.QueryTiming = {}));
|
|
26
|
-
/** Type of a given query. */
|
|
27
|
-
var QueryType;
|
|
28
|
-
(function (QueryType) {
|
|
29
|
-
QueryType[QueryType["ViewChild"] = 0] = "ViewChild";
|
|
30
|
-
QueryType[QueryType["ContentChild"] = 1] = "ContentChild";
|
|
31
|
-
})(QueryType = exports.QueryType || (exports.QueryType = {}));
|
|
32
|
-
});
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktZGVmaW5pdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc2NoZW1hdGljcy9taWdyYXRpb25zL3N0YXRpYy1xdWVyaWVzL2FuZ3VsYXIvcXVlcnktZGVmaW5pdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7SUFLSCx5REFBeUQ7SUFDekQsSUFBWSxXQUdYO0lBSEQsV0FBWSxXQUFXO1FBQ3JCLGlEQUFNLENBQUE7UUFDTixtREFBTyxDQUFBO0lBQ1QsQ0FBQyxFQUhXLFdBQVcsR0FBWCxtQkFBVyxLQUFYLG1CQUFXLFFBR3RCO0lBRUQsNkJBQTZCO0lBQzdCLElBQVksU0FHWDtJQUhELFdBQVksU0FBUztRQUNuQixtREFBUyxDQUFBO1FBQ1QseURBQVksQ0FBQTtJQUNkLENBQUMsRUFIVyxTQUFTLEdBQVQsaUJBQVMsS0FBVCxpQkFBUyxRQUdwQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5pbXBvcnQge05nRGVjb3JhdG9yfSBmcm9tICcuLi8uLi8uLi91dGlscy9uZ19kZWNvcmF0b3JzJztcblxuLyoqIFRpbWluZyBvZiBhIGdpdmVuIHF1ZXJ5LiBFaXRoZXIgc3RhdGljIG9yIGR5bmFtaWMuICovXG5leHBvcnQgZW51bSBRdWVyeVRpbWluZyB7XG4gIFNUQVRJQyxcbiAgRFlOQU1JQyxcbn1cblxuLyoqIFR5cGUgb2YgYSBnaXZlbiBxdWVyeS4gKi9cbmV4cG9ydCBlbnVtIFF1ZXJ5VHlwZSB7XG4gIFZpZXdDaGlsZCxcbiAgQ29udGVudENoaWxkXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmdRdWVyeURlZmluaXRpb24ge1xuICAvKiogTmFtZSBvZiB0aGUgcXVlcnkuIFNldCB0byBcIm51bGxcIiBpbiBjYXNlIHRoZSBxdWVyeSBuYW1lIGlzIG5vdCBzdGF0aWNhbGx5IGFuYWx5emFibGUuICovXG4gIG5hbWU6IHN0cmluZ3xudWxsO1xuICAvKiogVHlwZSBvZiB0aGUgcXVlcnkgZGVmaW5pdGlvbi4gKi9cbiAgdHlwZTogUXVlcnlUeXBlO1xuICAvKiogTm9kZSB0aGF0IGRlY2xhcmVzIHRoaXMgcXVlcnkuICovXG4gIG5vZGU6IHRzLk5vZGU7XG4gIC8qKlxuICAgKiBQcm9wZXJ0eSBkZWNsYXJhdGlvbiB0aGF0IHJlZmVycyB0byB0aGUgcXVlcnkgdmFsdWUuIEZvciBhY2Nlc3NvcnMgdGhlcmVcbiAgICogaXMgbm8gcHJvcGVydHkgdGhhdCBpcyBndWFyYW50ZWVkIHRvIGFjY2VzcyB0aGUgcXVlcnkgdmFsdWUuXG4gICAqL1xuICBwcm9wZXJ0eTogdHMuUHJvcGVydHlEZWNsYXJhdGlvbnxudWxsO1xuICAvKiogRGVjb3JhdG9yIHRoYXQgZGVjbGFyZXMgdGhpcyBhcyBhIHF1ZXJ5LiAqL1xuICBkZWNvcmF0b3I6IE5nRGVjb3JhdG9yO1xuICAvKiogQ2xhc3MgZGVjbGFyYXRpb24gdGhhdCBob2xkcyB0aGlzIHF1ZXJ5LiAqL1xuICBjb250YWluZXI6IHRzLkNsYXNzRGVjbGFyYXRpb247XG59XG4iXX0=
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC 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
|
-
/// <amd-module name="@angular/core/schematics/migrations/static-queries/angular/super_class" />
|
|
9
|
-
import ts from 'typescript';
|
|
10
|
-
import { ClassMetadataMap } from './ng_query_visitor';
|
|
11
|
-
/**
|
|
12
|
-
* Gets all chained super-class TypeScript declarations for the given class
|
|
13
|
-
* by using the specified class metadata map.
|
|
14
|
-
*/
|
|
15
|
-
export declare function getSuperClassDeclarations(classDecl: ts.ClassDeclaration, classMetadataMap: ClassMetadataMap): ts.ClassDeclaration[];
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC 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/core/schematics/migrations/static-queries/angular/super_class", ["require", "exports"], factory);
|
|
15
|
-
}
|
|
16
|
-
})(function (require, exports) {
|
|
17
|
-
"use strict";
|
|
18
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.getSuperClassDeclarations = void 0;
|
|
20
|
-
/**
|
|
21
|
-
* Gets all chained super-class TypeScript declarations for the given class
|
|
22
|
-
* by using the specified class metadata map.
|
|
23
|
-
*/
|
|
24
|
-
function getSuperClassDeclarations(classDecl, classMetadataMap) {
|
|
25
|
-
const declarations = [];
|
|
26
|
-
let current = classMetadataMap.get(classDecl);
|
|
27
|
-
while (current && current.superClass) {
|
|
28
|
-
declarations.push(current.superClass);
|
|
29
|
-
current = classMetadataMap.get(current.superClass);
|
|
30
|
-
}
|
|
31
|
-
return declarations;
|
|
32
|
-
}
|
|
33
|
-
exports.getSuperClassDeclarations = getSuperClassDeclarations;
|
|
34
|
-
});
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwZXJfY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NjaGVtYXRpY3MvbWlncmF0aW9ucy9zdGF0aWMtcXVlcmllcy9hbmd1bGFyL3N1cGVyX2NsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7OztJQUtIOzs7T0FHRztJQUNILFNBQWdCLHlCQUF5QixDQUNyQyxTQUE4QixFQUFFLGdCQUFrQztRQUNwRSxNQUFNLFlBQVksR0FBMEIsRUFBRSxDQUFDO1FBRS9DLElBQUksT0FBTyxHQUFHLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM5QyxPQUFPLE9BQU8sSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFO1lBQ3BDLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3RDLE9BQU8sR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3BEO1FBRUQsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztJQVhELDhEQVdDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7Q2xhc3NNZXRhZGF0YU1hcH0gZnJvbSAnLi9uZ19xdWVyeV92aXNpdG9yJztcblxuLyoqXG4gKiBHZXRzIGFsbCBjaGFpbmVkIHN1cGVyLWNsYXNzIFR5cGVTY3JpcHQgZGVjbGFyYXRpb25zIGZvciB0aGUgZ2l2ZW4gY2xhc3NcbiAqIGJ5IHVzaW5nIHRoZSBzcGVjaWZpZWQgY2xhc3MgbWV0YWRhdGEgbWFwLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0U3VwZXJDbGFzc0RlY2xhcmF0aW9ucyhcbiAgICBjbGFzc0RlY2w6IHRzLkNsYXNzRGVjbGFyYXRpb24sIGNsYXNzTWV0YWRhdGFNYXA6IENsYXNzTWV0YWRhdGFNYXApIHtcbiAgY29uc3QgZGVjbGFyYXRpb25zOiB0cy5DbGFzc0RlY2xhcmF0aW9uW10gPSBbXTtcblxuICBsZXQgY3VycmVudCA9IGNsYXNzTWV0YWRhdGFNYXAuZ2V0KGNsYXNzRGVjbCk7XG4gIHdoaWxlIChjdXJyZW50ICYmIGN1cnJlbnQuc3VwZXJDbGFzcykge1xuICAgIGRlY2xhcmF0aW9ucy5wdXNoKGN1cnJlbnQuc3VwZXJDbGFzcyk7XG4gICAgY3VycmVudCA9IGNsYXNzTWV0YWRhdGFNYXAuZ2V0KGN1cnJlbnQuc3VwZXJDbGFzcyk7XG4gIH1cblxuICByZXR1cm4gZGVjbGFyYXRpb25zO1xufVxuIl19
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC 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
|
-
/// <amd-module name="@angular/core/schematics/migrations/static-queries" />
|
|
9
|
-
import { Rule } from '@angular-devkit/schematics';
|
|
10
|
-
/** Entry point for the V8 static-query migration. */
|
|
11
|
-
export default function (): Rule;
|