@angular/compiler-cli 12.2.0-next.2 → 12.2.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/linker/src/file_linker/partial_linkers/partial_linker_selector.js +2 -2
- package/ngcc/src/packages/build_marker.d.ts +1 -1
- package/ngcc/src/packages/build_marker.js +1 -1
- package/package.json +2 -2
- package/src/ngtsc/cycles/src/analyzer.d.ts +7 -0
- package/src/ngtsc/cycles/src/analyzer.js +89 -4
- package/src/ngtsc/cycles/src/imports.d.ts +1 -6
- package/src/ngtsc/cycles/src/imports.js +5 -23
- package/src/ngtsc/diagnostics/src/error_code.d.ts +9 -0
- package/src/ngtsc/diagnostics/src/error_code.js +10 -1
- package/src/ngtsc/metadata/src/dts.js +4 -5
- package/src/ngtsc/metadata/src/util.d.ts +2 -2
- package/src/ngtsc/metadata/src/util.js +9 -6
- package/src/ngtsc/partial_evaluator/src/interpreter.js +6 -5
- package/src/ngtsc/transform/src/compilation.d.ts +5 -0
- package/src/ngtsc/transform/src/compilation.js +95 -72
- package/src/ngtsc/typecheck/api/checker.d.ts +18 -1
- package/src/ngtsc/typecheck/api/checker.js +1 -1
- package/src/ngtsc/typecheck/src/checker.d.ts +11 -1
- package/src/ngtsc/typecheck/src/checker.js +20 -5
- package/src/ngtsc/typecheck/src/completion.d.ts +3 -1
- package/src/ngtsc/typecheck/src/completion.js +52 -2
- package/src/version.js +1 -1
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
*/
|
|
67
67
|
function createLinkerMap(environment, sourceUrl, code) {
|
|
68
68
|
var linkers = new Map();
|
|
69
|
-
var LATEST_VERSION_RANGE = getRange('<=', '12.2.
|
|
69
|
+
var LATEST_VERSION_RANGE = getRange('<=', '12.2.1');
|
|
70
70
|
linkers.set(exports.ɵɵngDeclareDirective, [
|
|
71
71
|
{ range: LATEST_VERSION_RANGE, linker: new partial_directive_linker_1_1.PartialDirectiveLinkerVersion1(sourceUrl, code) },
|
|
72
72
|
]);
|
|
@@ -137,7 +137,7 @@
|
|
|
137
137
|
throw new Error("Unknown partial declaration function " + functionName + ".");
|
|
138
138
|
}
|
|
139
139
|
var linkerRanges = this.linkers.get(functionName);
|
|
140
|
-
if (version === '12.2.
|
|
140
|
+
if (version === '12.2.1') {
|
|
141
141
|
// Special case if the `version` is the same as the current compiler version.
|
|
142
142
|
// This helps with compliance tests where the version placeholders have not been replaced.
|
|
143
143
|
return linkerRanges[linkerRanges.length - 1].linker;
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
import { AbsoluteFsPath } from '../../../src/ngtsc/file_system';
|
|
10
10
|
import { PackageJsonUpdater } from '../writing/package_json_updater';
|
|
11
11
|
import { EntryPointPackageJson, PackageJsonFormatProperties } from './entry_point';
|
|
12
|
-
export declare const NGCC_VERSION = "12.2.
|
|
12
|
+
export declare const NGCC_VERSION = "12.2.1";
|
|
13
13
|
/**
|
|
14
14
|
* Returns true if there is a format in this entry-point that was compiled with an outdated version
|
|
15
15
|
* of ngcc.
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
exports.markAsProcessed = exports.hasBeenProcessed = exports.cleanPackageJson = exports.needsCleaning = exports.NGCC_VERSION = void 0;
|
|
13
13
|
var tslib_1 = require("tslib");
|
|
14
14
|
var new_entry_point_file_writer_1 = require("@angular/compiler-cli/ngcc/src/writing/new_entry_point_file_writer");
|
|
15
|
-
exports.NGCC_VERSION = '12.2.
|
|
15
|
+
exports.NGCC_VERSION = '12.2.1';
|
|
16
16
|
/**
|
|
17
17
|
* Returns true if there is a format in this entry-point that was compiled with an outdated version
|
|
18
18
|
* of ngcc.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@angular/compiler-cli",
|
|
3
|
-
"version": "12.2.
|
|
3
|
+
"version": "12.2.1",
|
|
4
4
|
"description": "Angular - the compiler CLI for Node.js",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"typings": "index.d.ts",
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"yargs": "^17.0.0"
|
|
28
28
|
},
|
|
29
29
|
"peerDependencies": {
|
|
30
|
-
"@angular/compiler": "12.2.
|
|
30
|
+
"@angular/compiler": "12.2.1",
|
|
31
31
|
"typescript": ">=4.2.3 <4.4"
|
|
32
32
|
},
|
|
33
33
|
"repository": {
|
|
@@ -13,6 +13,13 @@ import { ImportGraph } from './imports';
|
|
|
13
13
|
*/
|
|
14
14
|
export declare class CycleAnalyzer {
|
|
15
15
|
private importGraph;
|
|
16
|
+
/**
|
|
17
|
+
* Cycle detection is requested with the same `from` source file for all used directives and pipes
|
|
18
|
+
* within a component, which makes it beneficial to cache the results as long as the `from` source
|
|
19
|
+
* file has not changed. This avoids visiting the import graph that is reachable from multiple
|
|
20
|
+
* directives/pipes more than once.
|
|
21
|
+
*/
|
|
22
|
+
private cachedResults;
|
|
16
23
|
constructor(importGraph: ImportGraph);
|
|
17
24
|
/**
|
|
18
25
|
* Check for a cycle to be created in the `ts.Program` by adding an import between `from` and
|
|
@@ -24,6 +24,13 @@
|
|
|
24
24
|
var CycleAnalyzer = /** @class */ (function () {
|
|
25
25
|
function CycleAnalyzer(importGraph) {
|
|
26
26
|
this.importGraph = importGraph;
|
|
27
|
+
/**
|
|
28
|
+
* Cycle detection is requested with the same `from` source file for all used directives and pipes
|
|
29
|
+
* within a component, which makes it beneficial to cache the results as long as the `from` source
|
|
30
|
+
* file has not changed. This avoids visiting the import graph that is reachable from multiple
|
|
31
|
+
* directives/pipes more than once.
|
|
32
|
+
*/
|
|
33
|
+
this.cachedResults = null;
|
|
27
34
|
}
|
|
28
35
|
/**
|
|
29
36
|
* Check for a cycle to be created in the `ts.Program` by adding an import between `from` and
|
|
@@ -33,10 +40,12 @@
|
|
|
33
40
|
* otherwise.
|
|
34
41
|
*/
|
|
35
42
|
CycleAnalyzer.prototype.wouldCreateCycle = function (from, to) {
|
|
43
|
+
// Try to reuse the cached results as long as the `from` source file is the same.
|
|
44
|
+
if (this.cachedResults === null || this.cachedResults.from !== from) {
|
|
45
|
+
this.cachedResults = new CycleResults(from, this.importGraph);
|
|
46
|
+
}
|
|
36
47
|
// Import of 'from' -> 'to' is illegal if an edge 'to' -> 'from' already exists.
|
|
37
|
-
return this.
|
|
38
|
-
new Cycle(this.importGraph, from, to) :
|
|
39
|
-
null;
|
|
48
|
+
return this.cachedResults.wouldBeCyclic(to) ? new Cycle(this.importGraph, from, to) : null;
|
|
40
49
|
};
|
|
41
50
|
/**
|
|
42
51
|
* Record a synthetic import from `from` to `to`.
|
|
@@ -45,11 +54,87 @@
|
|
|
45
54
|
* import graph for cycle creation.
|
|
46
55
|
*/
|
|
47
56
|
CycleAnalyzer.prototype.recordSyntheticImport = function (from, to) {
|
|
57
|
+
this.cachedResults = null;
|
|
48
58
|
this.importGraph.addSyntheticImport(from, to);
|
|
49
59
|
};
|
|
50
60
|
return CycleAnalyzer;
|
|
51
61
|
}());
|
|
52
62
|
exports.CycleAnalyzer = CycleAnalyzer;
|
|
63
|
+
var NgCyclicResult = Symbol('NgCyclicResult');
|
|
64
|
+
/**
|
|
65
|
+
* Stores the results of cycle detection in a memory efficient manner. A symbol is attached to
|
|
66
|
+
* source files that indicate what the cyclic analysis result is, as indicated by two markers that
|
|
67
|
+
* are unique to this instance. This alleviates memory pressure in large import graphs, as each
|
|
68
|
+
* execution is able to store its results in the same memory location (i.e. in the symbol
|
|
69
|
+
* on the source file) as earlier executions.
|
|
70
|
+
*/
|
|
71
|
+
var CycleResults = /** @class */ (function () {
|
|
72
|
+
function CycleResults(from, importGraph) {
|
|
73
|
+
this.from = from;
|
|
74
|
+
this.importGraph = importGraph;
|
|
75
|
+
this.cyclic = {};
|
|
76
|
+
this.acyclic = {};
|
|
77
|
+
}
|
|
78
|
+
CycleResults.prototype.wouldBeCyclic = function (sf) {
|
|
79
|
+
var e_1, _a;
|
|
80
|
+
var cached = this.getCachedResult(sf);
|
|
81
|
+
if (cached !== null) {
|
|
82
|
+
// The result for this source file has already been computed, so return its result.
|
|
83
|
+
return cached;
|
|
84
|
+
}
|
|
85
|
+
if (sf === this.from) {
|
|
86
|
+
// We have reached the source file that we want to create an import from, which means that
|
|
87
|
+
// doing so would create a cycle.
|
|
88
|
+
return true;
|
|
89
|
+
}
|
|
90
|
+
// Assume for now that the file will be acyclic; this prevents infinite recursion in the case
|
|
91
|
+
// that `sf` is visited again as part of an existing cycle in the graph.
|
|
92
|
+
this.markAcyclic(sf);
|
|
93
|
+
var imports = this.importGraph.importsOf(sf);
|
|
94
|
+
try {
|
|
95
|
+
for (var imports_1 = tslib_1.__values(imports), imports_1_1 = imports_1.next(); !imports_1_1.done; imports_1_1 = imports_1.next()) {
|
|
96
|
+
var imported = imports_1_1.value;
|
|
97
|
+
if (this.wouldBeCyclic(imported)) {
|
|
98
|
+
this.markCyclic(sf);
|
|
99
|
+
return true;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
104
|
+
finally {
|
|
105
|
+
try {
|
|
106
|
+
if (imports_1_1 && !imports_1_1.done && (_a = imports_1.return)) _a.call(imports_1);
|
|
107
|
+
}
|
|
108
|
+
finally { if (e_1) throw e_1.error; }
|
|
109
|
+
}
|
|
110
|
+
return false;
|
|
111
|
+
};
|
|
112
|
+
/**
|
|
113
|
+
* Returns whether the source file is already known to be cyclic, or `null` if the result is not
|
|
114
|
+
* yet known.
|
|
115
|
+
*/
|
|
116
|
+
CycleResults.prototype.getCachedResult = function (sf) {
|
|
117
|
+
var result = sf[NgCyclicResult];
|
|
118
|
+
if (result === this.cyclic) {
|
|
119
|
+
return true;
|
|
120
|
+
}
|
|
121
|
+
else if (result === this.acyclic) {
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
// Either the symbol is missing or its value does not correspond with one of the current
|
|
126
|
+
// result markers. As such, the result is unknown.
|
|
127
|
+
return null;
|
|
128
|
+
}
|
|
129
|
+
};
|
|
130
|
+
CycleResults.prototype.markCyclic = function (sf) {
|
|
131
|
+
sf[NgCyclicResult] = this.cyclic;
|
|
132
|
+
};
|
|
133
|
+
CycleResults.prototype.markAcyclic = function (sf) {
|
|
134
|
+
sf[NgCyclicResult] = this.acyclic;
|
|
135
|
+
};
|
|
136
|
+
return CycleResults;
|
|
137
|
+
}());
|
|
53
138
|
/**
|
|
54
139
|
* Represents an import cycle between `from` and `to` in the program.
|
|
55
140
|
*
|
|
@@ -75,4 +160,4 @@
|
|
|
75
160
|
}());
|
|
76
161
|
exports.Cycle = Cycle;
|
|
77
162
|
});
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl6ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvc3JjL25ndHNjL2N5Y2xlcy9zcmMvYW5hbHl6ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7OztJQU1IOztPQUVHO0lBQ0g7UUFDRSx1QkFBb0IsV0FBd0I7WUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFBRyxDQUFDO1FBRWhEOzs7Ozs7V0FNRztRQUNILHdDQUFnQixHQUFoQixVQUFpQixJQUFtQixFQUFFLEVBQWlCO1lBQ3JELGdGQUFnRjtZQUNoRixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsbUJBQW1CLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7Z0JBQ3ZELElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQztRQUNYLENBQUM7UUFFRDs7Ozs7V0FLRztRQUNILDZDQUFxQixHQUFyQixVQUFzQixJQUFtQixFQUFFLEVBQWlCO1lBQzFELElBQUksQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hELENBQUM7UUFDSCxvQkFBQztJQUFELENBQUMsQUExQkQsSUEwQkM7SUExQlksc0NBQWE7SUE0QjFCOzs7OztPQUtHO0lBQ0g7UUFDRSxlQUNZLFdBQXdCLEVBQVcsSUFBbUIsRUFBVyxFQUFpQjtZQUFsRixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtZQUFXLFNBQUksR0FBSixJQUFJLENBQWU7WUFBVyxPQUFFLEdBQUYsRUFBRSxDQUFlO1FBQUcsQ0FBQztRQUVsRzs7Ozs7V0FLRztRQUNILHVCQUFPLEdBQVA7WUFDRSw4QkFBUSxJQUFJLENBQUMsSUFBSSxrQkFBSyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUUsR0FBRTtRQUN4RSxDQUFDO1FBQ0gsWUFBQztJQUFELENBQUMsQUFiRCxJQWFDO0lBYlksc0JBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbmltcG9ydCB7SW1wb3J0R3JhcGh9IGZyb20gJy4vaW1wb3J0cyc7XG5cbi8qKlxuICogQW5hbHl6ZXMgYSBgdHMuUHJvZ3JhbWAgZm9yIGN5Y2xlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIEN5Y2xlQW5hbHl6ZXIge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGltcG9ydEdyYXBoOiBJbXBvcnRHcmFwaCkge31cblxuICAvKipcbiAgICogQ2hlY2sgZm9yIGEgY3ljbGUgdG8gYmUgY3JlYXRlZCBpbiB0aGUgYHRzLlByb2dyYW1gIGJ5IGFkZGluZyBhbiBpbXBvcnQgYmV0d2VlbiBgZnJvbWAgYW5kXG4gICAqIGB0b2AuXG4gICAqXG4gICAqIEByZXR1cm5zIGEgYEN5Y2xlYCBvYmplY3QgaWYgYW4gaW1wb3J0IGJldHdlZW4gYGZyb21gIGFuZCBgdG9gIHdvdWxkIGNyZWF0ZSBhIGN5Y2xlOyBgbnVsbGBcbiAgICogICAgIG90aGVyd2lzZS5cbiAgICovXG4gIHdvdWxkQ3JlYXRlQ3ljbGUoZnJvbTogdHMuU291cmNlRmlsZSwgdG86IHRzLlNvdXJjZUZpbGUpOiBDeWNsZXxudWxsIHtcbiAgICAvLyBJbXBvcnQgb2YgJ2Zyb20nIC0+ICd0bycgaXMgaWxsZWdhbCBpZiBhbiBlZGdlICd0bycgLT4gJ2Zyb20nIGFscmVhZHkgZXhpc3RzLlxuICAgIHJldHVybiB0aGlzLmltcG9ydEdyYXBoLnRyYW5zaXRpdmVJbXBvcnRzT2YodG8pLmhhcyhmcm9tKSA/XG4gICAgICAgIG5ldyBDeWNsZSh0aGlzLmltcG9ydEdyYXBoLCBmcm9tLCB0bykgOlxuICAgICAgICBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlY29yZCBhIHN5bnRoZXRpYyBpbXBvcnQgZnJvbSBgZnJvbWAgdG8gYHRvYC5cbiAgICpcbiAgICogVGhpcyBpcyBhbiBpbXBvcnQgdGhhdCBkb2Vzbid0IGV4aXN0IGluIHRoZSBgdHMuUHJvZ3JhbWAgYnV0IHdpbGwgYmUgY29uc2lkZXJlZCBhcyBwYXJ0IG9mIHRoZVxuICAgKiBpbXBvcnQgZ3JhcGggZm9yIGN5Y2xlIGNyZWF0aW9uLlxuICAgKi9cbiAgcmVjb3JkU3ludGhldGljSW1wb3J0KGZyb206IHRzLlNvdXJjZUZpbGUsIHRvOiB0cy5Tb3VyY2VGaWxlKTogdm9pZCB7XG4gICAgdGhpcy5pbXBvcnRHcmFwaC5hZGRTeW50aGV0aWNJbXBvcnQoZnJvbSwgdG8pO1xuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhbiBpbXBvcnQgY3ljbGUgYmV0d2VlbiBgZnJvbWAgYW5kIGB0b2AgaW4gdGhlIHByb2dyYW0uXG4gKlxuICogVGhpcyBjbGFzcyBhbGxvd3MgdXMgdG8gZG8gdGhlIHdvcmsgdG8gY29tcHV0ZSB0aGUgY3ljbGljIHBhdGggYmV0d2VlbiBgZnJvbWAgYW5kIGB0b2Agb25seSBpZlxuICogbmVlZGVkLlxuICovXG5leHBvcnQgY2xhc3MgQ3ljbGUge1xuICBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgaW1wb3J0R3JhcGg6IEltcG9ydEdyYXBoLCByZWFkb25seSBmcm9tOiB0cy5Tb3VyY2VGaWxlLCByZWFkb25seSB0bzogdHMuU291cmNlRmlsZSkge31cblxuICAvKipcbiAgICogQ29tcHV0ZSBhbiBhcnJheSBvZiBzb3VyY2UtZmlsZXMgdGhhdCBpbGx1c3RyYXRlcyB0aGUgY3ljbGljIHBhdGggYmV0d2VlbiBgZnJvbWAgYW5kIGB0b2AuXG4gICAqXG4gICAqIE5vdGUgdGhhdCBhIGBDeWNsZWAgd2lsbCBub3QgYmUgY3JlYXRlZCB1bmxlc3MgYSBwYXRoIGlzIGF2YWlsYWJsZSBiZXR3ZWVuIGB0b2AgYW5kIGBmcm9tYCxcbiAgICogc28gYGZpbmRQYXRoKClgIHdpbGwgbmV2ZXIgcmV0dXJuIGBudWxsYC5cbiAgICovXG4gIGdldFBhdGgoKTogdHMuU291cmNlRmlsZVtdIHtcbiAgICByZXR1cm4gW3RoaXMuZnJvbSwgLi4udGhpcy5pbXBvcnRHcmFwaC5maW5kUGF0aCh0aGlzLnRvLCB0aGlzLmZyb20pIV07XG4gIH1cbn1cblxuXG4vKipcbiAqIFdoYXQgdG8gZG8gaWYgYSBjeWNsZSBpcyBkZXRlY3RlZC5cbiAqL1xuZXhwb3J0IGNvbnN0IGVudW0gQ3ljbGVIYW5kbGluZ1N0cmF0ZWd5IHtcbiAgLyoqIEFkZCBcInJlbW90ZSBzY29waW5nXCIgY29kZSB0byBhdm9pZCBjcmVhdGluZyBhIGN5Y2xlLiAqL1xuICBVc2VSZW1vdGVTY29waW5nLFxuICAvKiogRmFpbCB0aGUgY29tcGlsYXRpb24gd2l0aCBhbiBlcnJvci4gKi9cbiAgRXJyb3IsXG59XG4iXX0=
|
|
163
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl6ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvc3JjL25ndHNjL2N5Y2xlcy9zcmMvYW5hbHl6ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7OztJQU1IOztPQUVHO0lBQ0g7UUFTRSx1QkFBb0IsV0FBd0I7WUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7WUFSNUM7Ozs7O2VBS0c7WUFDSyxrQkFBYSxHQUFzQixJQUFJLENBQUM7UUFFRCxDQUFDO1FBRWhEOzs7Ozs7V0FNRztRQUNILHdDQUFnQixHQUFoQixVQUFpQixJQUFtQixFQUFFLEVBQWlCO1lBQ3JELGlGQUFpRjtZQUNqRixJQUFJLElBQUksQ0FBQyxhQUFhLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRTtnQkFDbkUsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLFlBQVksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQy9EO1lBRUQsZ0ZBQWdGO1lBQ2hGLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDN0YsQ0FBQztRQUVEOzs7OztXQUtHO1FBQ0gsNkNBQXFCLEdBQXJCLFVBQXNCLElBQW1CLEVBQUUsRUFBaUI7WUFDMUQsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7WUFDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDaEQsQ0FBQztRQUNILG9CQUFDO0lBQUQsQ0FBQyxBQXRDRCxJQXNDQztJQXRDWSxzQ0FBYTtJQXdDMUIsSUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFNaEQ7Ozs7OztPQU1HO0lBQ0g7UUFJRSxzQkFBcUIsSUFBbUIsRUFBVSxXQUF3QjtZQUFyRCxTQUFJLEdBQUosSUFBSSxDQUFlO1lBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7WUFIekQsV0FBTSxHQUFHLEVBQXdCLENBQUM7WUFDbEMsWUFBTyxHQUFHLEVBQXdCLENBQUM7UUFFeUIsQ0FBQztRQUU5RSxvQ0FBYSxHQUFiLFVBQWMsRUFBaUI7O1lBQzdCLElBQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDeEMsSUFBSSxNQUFNLEtBQUssSUFBSSxFQUFFO2dCQUNuQixtRkFBbUY7Z0JBQ25GLE9BQU8sTUFBTSxDQUFDO2FBQ2Y7WUFFRCxJQUFJLEVBQUUsS0FBSyxJQUFJLENBQUMsSUFBSSxFQUFFO2dCQUNwQiwwRkFBMEY7Z0JBQzFGLGlDQUFpQztnQkFDakMsT0FBTyxJQUFJLENBQUM7YUFDYjtZQUVELDZGQUE2RjtZQUM3Rix3RUFBd0U7WUFDeEUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUVyQixJQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQzs7Z0JBQy9DLEtBQXVCLElBQUEsWUFBQSxpQkFBQSxPQUFPLENBQUEsZ0NBQUEscURBQUU7b0JBQTNCLElBQU0sUUFBUSxvQkFBQTtvQkFDakIsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxFQUFFO3dCQUNoQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDO3dCQUNwQixPQUFPLElBQUksQ0FBQztxQkFDYjtpQkFDRjs7Ozs7Ozs7O1lBQ0QsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQ7OztXQUdHO1FBQ0ssc0NBQWUsR0FBdkIsVUFBd0IsRUFBb0I7WUFDMUMsSUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ2xDLElBQUksTUFBTSxLQUFLLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQzFCLE9BQU8sSUFBSSxDQUFDO2FBQ2I7aUJBQU0sSUFBSSxNQUFNLEtBQUssSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDbEMsT0FBTyxLQUFLLENBQUM7YUFDZDtpQkFBTTtnQkFDTCx3RkFBd0Y7Z0JBQ3hGLGtEQUFrRDtnQkFDbEQsT0FBTyxJQUFJLENBQUM7YUFDYjtRQUNILENBQUM7UUFFTyxpQ0FBVSxHQUFsQixVQUFtQixFQUFvQjtZQUNyQyxFQUFFLENBQUMsY0FBYyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNuQyxDQUFDO1FBRU8sa0NBQVcsR0FBbkIsVUFBb0IsRUFBb0I7WUFDdEMsRUFBRSxDQUFDLGNBQWMsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDcEMsQ0FBQztRQUNILG1CQUFDO0lBQUQsQ0FBQyxBQXpERCxJQXlEQztJQUVEOzs7OztPQUtHO0lBQ0g7UUFDRSxlQUNZLFdBQXdCLEVBQVcsSUFBbUIsRUFBVyxFQUFpQjtZQUFsRixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtZQUFXLFNBQUksR0FBSixJQUFJLENBQWU7WUFBVyxPQUFFLEdBQUYsRUFBRSxDQUFlO1FBQUcsQ0FBQztRQUVsRzs7Ozs7V0FLRztRQUNILHVCQUFPLEdBQVA7WUFDRSw4QkFBUSxJQUFJLENBQUMsSUFBSSxrQkFBSyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUUsR0FBRTtRQUN4RSxDQUFDO1FBQ0gsWUFBQztJQUFELENBQUMsQUFiRCxJQWFDO0lBYlksc0JBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbmltcG9ydCB7SW1wb3J0R3JhcGh9IGZyb20gJy4vaW1wb3J0cyc7XG5cbi8qKlxuICogQW5hbHl6ZXMgYSBgdHMuUHJvZ3JhbWAgZm9yIGN5Y2xlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIEN5Y2xlQW5hbHl6ZXIge1xuICAvKipcbiAgICogQ3ljbGUgZGV0ZWN0aW9uIGlzIHJlcXVlc3RlZCB3aXRoIHRoZSBzYW1lIGBmcm9tYCBzb3VyY2UgZmlsZSBmb3IgYWxsIHVzZWQgZGlyZWN0aXZlcyBhbmQgcGlwZXNcbiAgICogd2l0aGluIGEgY29tcG9uZW50LCB3aGljaCBtYWtlcyBpdCBiZW5lZmljaWFsIHRvIGNhY2hlIHRoZSByZXN1bHRzIGFzIGxvbmcgYXMgdGhlIGBmcm9tYCBzb3VyY2VcbiAgICogZmlsZSBoYXMgbm90IGNoYW5nZWQuIFRoaXMgYXZvaWRzIHZpc2l0aW5nIHRoZSBpbXBvcnQgZ3JhcGggdGhhdCBpcyByZWFjaGFibGUgZnJvbSBtdWx0aXBsZVxuICAgKiBkaXJlY3RpdmVzL3BpcGVzIG1vcmUgdGhhbiBvbmNlLlxuICAgKi9cbiAgcHJpdmF0ZSBjYWNoZWRSZXN1bHRzOiBDeWNsZVJlc3VsdHN8bnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpbXBvcnRHcmFwaDogSW1wb3J0R3JhcGgpIHt9XG5cbiAgLyoqXG4gICAqIENoZWNrIGZvciBhIGN5Y2xlIHRvIGJlIGNyZWF0ZWQgaW4gdGhlIGB0cy5Qcm9ncmFtYCBieSBhZGRpbmcgYW4gaW1wb3J0IGJldHdlZW4gYGZyb21gIGFuZFxuICAgKiBgdG9gLlxuICAgKlxuICAgKiBAcmV0dXJucyBhIGBDeWNsZWAgb2JqZWN0IGlmIGFuIGltcG9ydCBiZXR3ZWVuIGBmcm9tYCBhbmQgYHRvYCB3b3VsZCBjcmVhdGUgYSBjeWNsZTsgYG51bGxgXG4gICAqICAgICBvdGhlcndpc2UuXG4gICAqL1xuICB3b3VsZENyZWF0ZUN5Y2xlKGZyb206IHRzLlNvdXJjZUZpbGUsIHRvOiB0cy5Tb3VyY2VGaWxlKTogQ3ljbGV8bnVsbCB7XG4gICAgLy8gVHJ5IHRvIHJldXNlIHRoZSBjYWNoZWQgcmVzdWx0cyBhcyBsb25nIGFzIHRoZSBgZnJvbWAgc291cmNlIGZpbGUgaXMgdGhlIHNhbWUuXG4gICAgaWYgKHRoaXMuY2FjaGVkUmVzdWx0cyA9PT0gbnVsbCB8fCB0aGlzLmNhY2hlZFJlc3VsdHMuZnJvbSAhPT0gZnJvbSkge1xuICAgICAgdGhpcy5jYWNoZWRSZXN1bHRzID0gbmV3IEN5Y2xlUmVzdWx0cyhmcm9tLCB0aGlzLmltcG9ydEdyYXBoKTtcbiAgICB9XG5cbiAgICAvLyBJbXBvcnQgb2YgJ2Zyb20nIC0+ICd0bycgaXMgaWxsZWdhbCBpZiBhbiBlZGdlICd0bycgLT4gJ2Zyb20nIGFscmVhZHkgZXhpc3RzLlxuICAgIHJldHVybiB0aGlzLmNhY2hlZFJlc3VsdHMud291bGRCZUN5Y2xpYyh0bykgPyBuZXcgQ3ljbGUodGhpcy5pbXBvcnRHcmFwaCwgZnJvbSwgdG8pIDogbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWNvcmQgYSBzeW50aGV0aWMgaW1wb3J0IGZyb20gYGZyb21gIHRvIGB0b2AuXG4gICAqXG4gICAqIFRoaXMgaXMgYW4gaW1wb3J0IHRoYXQgZG9lc24ndCBleGlzdCBpbiB0aGUgYHRzLlByb2dyYW1gIGJ1dCB3aWxsIGJlIGNvbnNpZGVyZWQgYXMgcGFydCBvZiB0aGVcbiAgICogaW1wb3J0IGdyYXBoIGZvciBjeWNsZSBjcmVhdGlvbi5cbiAgICovXG4gIHJlY29yZFN5bnRoZXRpY0ltcG9ydChmcm9tOiB0cy5Tb3VyY2VGaWxlLCB0bzogdHMuU291cmNlRmlsZSk6IHZvaWQge1xuICAgIHRoaXMuY2FjaGVkUmVzdWx0cyA9IG51bGw7XG4gICAgdGhpcy5pbXBvcnRHcmFwaC5hZGRTeW50aGV0aWNJbXBvcnQoZnJvbSwgdG8pO1xuICB9XG59XG5cbmNvbnN0IE5nQ3ljbGljUmVzdWx0ID0gU3ltYm9sKCdOZ0N5Y2xpY1Jlc3VsdCcpO1xudHlwZSBDeWNsaWNSZXN1bHRNYXJrZXIgPSB7XG4gIF9fYnJhbmQ6ICdDeWNsaWNSZXN1bHRNYXJrZXInO1xufTtcbnR5cGUgQ3ljbGljU291cmNlRmlsZSA9IHRzLlNvdXJjZUZpbGUme1tOZ0N5Y2xpY1Jlc3VsdF0/OiBDeWNsaWNSZXN1bHRNYXJrZXJ9O1xuXG4vKipcbiAqIFN0b3JlcyB0aGUgcmVzdWx0cyBvZiBjeWNsZSBkZXRlY3Rpb24gaW4gYSBtZW1vcnkgZWZmaWNpZW50IG1hbm5lci4gQSBzeW1ib2wgaXMgYXR0YWNoZWQgdG9cbiAqIHNvdXJjZSBmaWxlcyB0aGF0IGluZGljYXRlIHdoYXQgdGhlIGN5Y2xpYyBhbmFseXNpcyByZXN1bHQgaXMsIGFzIGluZGljYXRlZCBieSB0d28gbWFya2VycyB0aGF0XG4gKiBhcmUgdW5pcXVlIHRvIHRoaXMgaW5zdGFuY2UuIFRoaXMgYWxsZXZpYXRlcyBtZW1vcnkgcHJlc3N1cmUgaW4gbGFyZ2UgaW1wb3J0IGdyYXBocywgYXMgZWFjaFxuICogZXhlY3V0aW9uIGlzIGFibGUgdG8gc3RvcmUgaXRzIHJlc3VsdHMgaW4gdGhlIHNhbWUgbWVtb3J5IGxvY2F0aW9uIChpLmUuIGluIHRoZSBzeW1ib2xcbiAqIG9uIHRoZSBzb3VyY2UgZmlsZSkgYXMgZWFybGllciBleGVjdXRpb25zLlxuICovXG5jbGFzcyBDeWNsZVJlc3VsdHMge1xuICBwcml2YXRlIHJlYWRvbmx5IGN5Y2xpYyA9IHt9IGFzIEN5Y2xpY1Jlc3VsdE1hcmtlcjtcbiAgcHJpdmF0ZSByZWFkb25seSBhY3ljbGljID0ge30gYXMgQ3ljbGljUmVzdWx0TWFya2VyO1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGZyb206IHRzLlNvdXJjZUZpbGUsIHByaXZhdGUgaW1wb3J0R3JhcGg6IEltcG9ydEdyYXBoKSB7fVxuXG4gIHdvdWxkQmVDeWNsaWMoc2Y6IHRzLlNvdXJjZUZpbGUpOiBib29sZWFuIHtcbiAgICBjb25zdCBjYWNoZWQgPSB0aGlzLmdldENhY2hlZFJlc3VsdChzZik7XG4gICAgaWYgKGNhY2hlZCAhPT0gbnVsbCkge1xuICAgICAgLy8gVGhlIHJlc3VsdCBmb3IgdGhpcyBzb3VyY2UgZmlsZSBoYXMgYWxyZWFkeSBiZWVuIGNvbXB1dGVkLCBzbyByZXR1cm4gaXRzIHJlc3VsdC5cbiAgICAgIHJldHVybiBjYWNoZWQ7XG4gICAgfVxuXG4gICAgaWYgKHNmID09PSB0aGlzLmZyb20pIHtcbiAgICAgIC8vIFdlIGhhdmUgcmVhY2hlZCB0aGUgc291cmNlIGZpbGUgdGhhdCB3ZSB3YW50IHRvIGNyZWF0ZSBhbiBpbXBvcnQgZnJvbSwgd2hpY2ggbWVhbnMgdGhhdFxuICAgICAgLy8gZG9pbmcgc28gd291bGQgY3JlYXRlIGEgY3ljbGUuXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBBc3N1bWUgZm9yIG5vdyB0aGF0IHRoZSBmaWxlIHdpbGwgYmUgYWN5Y2xpYzsgdGhpcyBwcmV2ZW50cyBpbmZpbml0ZSByZWN1cnNpb24gaW4gdGhlIGNhc2VcbiAgICAvLyB0aGF0IGBzZmAgaXMgdmlzaXRlZCBhZ2FpbiBhcyBwYXJ0IG9mIGFuIGV4aXN0aW5nIGN5Y2xlIGluIHRoZSBncmFwaC5cbiAgICB0aGlzLm1hcmtBY3ljbGljKHNmKTtcblxuICAgIGNvbnN0IGltcG9ydHMgPSB0aGlzLmltcG9ydEdyYXBoLmltcG9ydHNPZihzZik7XG4gICAgZm9yIChjb25zdCBpbXBvcnRlZCBvZiBpbXBvcnRzKSB7XG4gICAgICBpZiAodGhpcy53b3VsZEJlQ3ljbGljKGltcG9ydGVkKSkge1xuICAgICAgICB0aGlzLm1hcmtDeWNsaWMoc2YpO1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgd2hldGhlciB0aGUgc291cmNlIGZpbGUgaXMgYWxyZWFkeSBrbm93biB0byBiZSBjeWNsaWMsIG9yIGBudWxsYCBpZiB0aGUgcmVzdWx0IGlzIG5vdFxuICAgKiB5ZXQga25vd24uXG4gICAqL1xuICBwcml2YXRlIGdldENhY2hlZFJlc3VsdChzZjogQ3ljbGljU291cmNlRmlsZSk6IGJvb2xlYW58bnVsbCB7XG4gICAgY29uc3QgcmVzdWx0ID0gc2ZbTmdDeWNsaWNSZXN1bHRdO1xuICAgIGlmIChyZXN1bHQgPT09IHRoaXMuY3ljbGljKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGVsc2UgaWYgKHJlc3VsdCA9PT0gdGhpcy5hY3ljbGljKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEVpdGhlciB0aGUgc3ltYm9sIGlzIG1pc3Npbmcgb3IgaXRzIHZhbHVlIGRvZXMgbm90IGNvcnJlc3BvbmQgd2l0aCBvbmUgb2YgdGhlIGN1cnJlbnRcbiAgICAgIC8vIHJlc3VsdCBtYXJrZXJzLiBBcyBzdWNoLCB0aGUgcmVzdWx0IGlzIHVua25vd24uXG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG1hcmtDeWNsaWMoc2Y6IEN5Y2xpY1NvdXJjZUZpbGUpOiB2b2lkIHtcbiAgICBzZltOZ0N5Y2xpY1Jlc3VsdF0gPSB0aGlzLmN5Y2xpYztcbiAgfVxuXG4gIHByaXZhdGUgbWFya0FjeWNsaWMoc2Y6IEN5Y2xpY1NvdXJjZUZpbGUpOiB2b2lkIHtcbiAgICBzZltOZ0N5Y2xpY1Jlc3VsdF0gPSB0aGlzLmFjeWNsaWM7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGFuIGltcG9ydCBjeWNsZSBiZXR3ZWVuIGBmcm9tYCBhbmQgYHRvYCBpbiB0aGUgcHJvZ3JhbS5cbiAqXG4gKiBUaGlzIGNsYXNzIGFsbG93cyB1cyB0byBkbyB0aGUgd29yayB0byBjb21wdXRlIHRoZSBjeWNsaWMgcGF0aCBiZXR3ZWVuIGBmcm9tYCBhbmQgYHRvYCBvbmx5IGlmXG4gKiBuZWVkZWQuXG4gKi9cbmV4cG9ydCBjbGFzcyBDeWNsZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBpbXBvcnRHcmFwaDogSW1wb3J0R3JhcGgsIHJlYWRvbmx5IGZyb206IHRzLlNvdXJjZUZpbGUsIHJlYWRvbmx5IHRvOiB0cy5Tb3VyY2VGaWxlKSB7fVxuXG4gIC8qKlxuICAgKiBDb21wdXRlIGFuIGFycmF5IG9mIHNvdXJjZS1maWxlcyB0aGF0IGlsbHVzdHJhdGVzIHRoZSBjeWNsaWMgcGF0aCBiZXR3ZWVuIGBmcm9tYCBhbmQgYHRvYC5cbiAgICpcbiAgICogTm90ZSB0aGF0IGEgYEN5Y2xlYCB3aWxsIG5vdCBiZSBjcmVhdGVkIHVubGVzcyBhIHBhdGggaXMgYXZhaWxhYmxlIGJldHdlZW4gYHRvYCBhbmQgYGZyb21gLFxuICAgKiBzbyBgZmluZFBhdGgoKWAgd2lsbCBuZXZlciByZXR1cm4gYG51bGxgLlxuICAgKi9cbiAgZ2V0UGF0aCgpOiB0cy5Tb3VyY2VGaWxlW10ge1xuICAgIHJldHVybiBbdGhpcy5mcm9tLCAuLi50aGlzLmltcG9ydEdyYXBoLmZpbmRQYXRoKHRoaXMudG8sIHRoaXMuZnJvbSkhXTtcbiAgfVxufVxuXG5cbi8qKlxuICogV2hhdCB0byBkbyBpZiBhIGN5Y2xlIGlzIGRldGVjdGVkLlxuICovXG5leHBvcnQgY29uc3QgZW51bSBDeWNsZUhhbmRsaW5nU3RyYXRlZ3kge1xuICAvKiogQWRkIFwicmVtb3RlIHNjb3BpbmdcIiBjb2RlIHRvIGF2b2lkIGNyZWF0aW5nIGEgY3ljbGUuICovXG4gIFVzZVJlbW90ZVNjb3BpbmcsXG4gIC8qKiBGYWlsIHRoZSBjb21waWxhdGlvbiB3aXRoIGFuIGVycm9yLiAqL1xuICBFcnJvcixcbn1cbiJdfQ==
|
|
@@ -17,7 +17,7 @@ import { PerfRecorder } from '../../perf';
|
|
|
17
17
|
export declare class ImportGraph {
|
|
18
18
|
private checker;
|
|
19
19
|
private perf;
|
|
20
|
-
private
|
|
20
|
+
private imports;
|
|
21
21
|
constructor(checker: ts.TypeChecker, perf: PerfRecorder);
|
|
22
22
|
/**
|
|
23
23
|
* List the direct (not transitive) imports of a given `ts.SourceFile`.
|
|
@@ -25,11 +25,6 @@ export declare class ImportGraph {
|
|
|
25
25
|
* This operation is cached.
|
|
26
26
|
*/
|
|
27
27
|
importsOf(sf: ts.SourceFile): Set<ts.SourceFile>;
|
|
28
|
-
/**
|
|
29
|
-
* Lists the transitive imports of a given `ts.SourceFile`.
|
|
30
|
-
*/
|
|
31
|
-
transitiveImportsOf(sf: ts.SourceFile): Set<ts.SourceFile>;
|
|
32
|
-
private transitiveImportsOfHelper;
|
|
33
28
|
/**
|
|
34
29
|
* Find an import path from the `start` SourceFile to the `end` SourceFile.
|
|
35
30
|
*
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
function ImportGraph(checker, perf) {
|
|
31
31
|
this.checker = checker;
|
|
32
32
|
this.perf = perf;
|
|
33
|
-
this.
|
|
33
|
+
this.imports = new Map();
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
36
36
|
* List the direct (not transitive) imports of a given `ts.SourceFile`.
|
|
@@ -38,28 +38,10 @@
|
|
|
38
38
|
* This operation is cached.
|
|
39
39
|
*/
|
|
40
40
|
ImportGraph.prototype.importsOf = function (sf) {
|
|
41
|
-
if (!this.
|
|
42
|
-
this.
|
|
41
|
+
if (!this.imports.has(sf)) {
|
|
42
|
+
this.imports.set(sf, this.scanImports(sf));
|
|
43
43
|
}
|
|
44
|
-
return this.
|
|
45
|
-
};
|
|
46
|
-
/**
|
|
47
|
-
* Lists the transitive imports of a given `ts.SourceFile`.
|
|
48
|
-
*/
|
|
49
|
-
ImportGraph.prototype.transitiveImportsOf = function (sf) {
|
|
50
|
-
var imports = new Set();
|
|
51
|
-
this.transitiveImportsOfHelper(sf, imports);
|
|
52
|
-
return imports;
|
|
53
|
-
};
|
|
54
|
-
ImportGraph.prototype.transitiveImportsOfHelper = function (sf, results) {
|
|
55
|
-
var _this = this;
|
|
56
|
-
if (results.has(sf)) {
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
results.add(sf);
|
|
60
|
-
this.importsOf(sf).forEach(function (imported) {
|
|
61
|
-
_this.transitiveImportsOfHelper(imported, results);
|
|
62
|
-
});
|
|
44
|
+
return this.imports.get(sf);
|
|
63
45
|
};
|
|
64
46
|
/**
|
|
65
47
|
* Find an import path from the `start` SourceFile to the `end` SourceFile.
|
|
@@ -190,4 +172,4 @@
|
|
|
190
172
|
return Found;
|
|
191
173
|
}());
|
|
192
174
|
});
|
|
193
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvY3ljbGVzL3NyYy9pbXBvcnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7Ozs7SUFFSCwrQkFBaUM7SUFFakMsNkRBQW1EO0lBRW5EOzs7OztPQUtHO0lBQ0g7UUFHRSxxQkFBb0IsT0FBdUIsRUFBVSxJQUFrQjtZQUFuRCxZQUFPLEdBQVAsT0FBTyxDQUFnQjtZQUFVLFNBQUksR0FBSixJQUFJLENBQWM7WUFGL0QsUUFBRyxHQUFHLElBQUksR0FBRyxFQUFxQyxDQUFDO1FBRWUsQ0FBQztRQUUzRTs7OztXQUlHO1FBQ0gsK0JBQVMsR0FBVCxVQUFVLEVBQWlCO1lBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFDckIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUN4QztZQUNELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFFLENBQUM7UUFDM0IsQ0FBQztRQUVEOztXQUVHO1FBQ0gseUNBQW1CLEdBQW5CLFVBQW9CLEVBQWlCO1lBQ25DLElBQU0sT0FBTyxHQUFHLElBQUksR0FBRyxFQUFpQixDQUFDO1lBQ3pDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDNUMsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQztRQUVPLCtDQUF5QixHQUFqQyxVQUFrQyxFQUFpQixFQUFFLE9BQTJCO1lBQWhGLGlCQVFDO1lBUEMsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFO2dCQUNu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RUFBRSxDQUFDO1FBQ3pCLENBQUM7UUFDSCxZQUFDO0lBQUQsQ0FBQyxBQWxCRCxJQWtCQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHtQZXJmUGhhc2UsIFBlcmZSZWNvcmRlcn0gZnJvbSAnLi4vLi4vcGVyZic7XG5cbi8qKlxuICogQSBjYWNoZWQgZ3JhcGggb2YgaW1wb3J0cyBpbiB0aGUgYHRzLlByb2dyYW1gLlxuICpcbiAqIFRoZSBgSW1wb3J0R3JhcGhgIGtlZXBzIHRyYWNrIG9mIGRlcGVuZGVuY2llcyAoaW1wb3J0cykgb2YgaW5kaXZpZHVhbCBgdHMuU291cmNlRmlsZWBzLiBPbmx5XG4gKiBkZXBlbmRlbmNpZXMgd2l0aGluIHRoZSBzYW1lIHByb2dyYW0gYXJlIHRyYWNrZWQ7IGltcG9ydHMgaW50byBwYWNrYWdlcyBvbiBOUE0gYXJlIG5vdC5cbiAqL1xuZXhwb3J0IGNsYXNzIEltcG9ydEdyYXBoIHtcbiAgcHJpdmF0ZSBtYXAgPSBuZXcgTWFwPHRzLlNvdXJjZUZpbGUsIFNldDx0cy5Tb3VyY2VGaWxlPj4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoZWNrZXI6IHRzLlR5cGVDaGVja2VyLCBwcml2YXRlIHBlcmY6IFBlcmZSZWNvcmRlcikge31cblxuICAvKipcbiAgICogTGlzdCB0aGUgZGlyZWN0IChub3QgdHJhbnNpdGl2ZSkgaW1wb3J0cyBvZiBhIGdpdmVuIGB0cy5Tb3VyY2VGaWxlYC5cbiAgICpcbiAgICogVGhpcyBvcGVyYXRpb24gaXMgY2FjaGVkLlxuICAgKi9cbiAgaW1wb3J0c09mKHNmOiB0cy5Tb3VyY2VGaWxlKTogU2V0PHRzLlNvdXJjZUZpbGU+IHtcbiAgICBpZiAoIXRoaXMubWFwLmhhcyhzZikpIHtcbiAgICAgIHRoaXMubWFwLnNldChzZiwgdGhpcy5zY2FuSW1wb3J0cyhzZikpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5tYXAuZ2V0KHNmKSE7XG4gIH1cblxuICAvKipcbiAgICogTGlzdHMgdGhlIHRyYW5zaXRpdmUgaW1wb3J0cyBvZiBhIGdpdmVuIGB0cy5Tb3VyY2VGaWxlYC5cbiAgICovXG4gIHRyYW5zaXRpdmVJbXBvcnRzT2Yoc2Y6IHRzLlNvdXJjZUZpbGUpOiBTZXQ8dHMuU291cmNlRmlsZT4ge1xuICAgIGNvbnN0IGltcG9ydHMgPSBuZXcgU2V0PHRzLlNvdXJjZUZpbGU+KCk7XG4gICAgdGhpcy50cmFuc2l0aXZlSW1wb3J0c09mSGVscGVyKHNmLCBpbXBvcnRzKTtcbiAgICByZXR1cm4gaW1wb3J0cztcbiAgfVxuXG4gIHByaXZhdGUgdHJhbnNpdGl2ZUltcG9ydHNPZkhlbHBlcihzZjogdHMuU291cmNlRmlsZSwgcmVzdWx0czogU2V0PHRzLlNvdXJjZUZpbGU+KTogdm9pZCB7XG4gICAgaWYgKHJlc3VsdHMuaGFzKHNmKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICByZXN1bHRzLmFkZChzZik7XG4gICAgdGhpcy5pbXBvcnRzT2Yoc2YpLmZvckVhY2goaW1wb3J0ZWQgPT4ge1xuICAgICAgdGhpcy50cmFuc2l0aXZlSW1wb3J0c09mSGVscGVyKGltcG9ydGVkLCByZXN1bHRzKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kIGFuIGltcG9ydCBwYXRoIGZyb20gdGhlIGBzdGFydGAgU291cmNlRmlsZSB0byB0aGUgYGVuZGAgU291cmNlRmlsZS5cbiAgICpcbiAgICogVGhpcyBmdW5jdGlvbiBpbXBsZW1lbnRzIGEgYnJlYWR0aCBmaXJzdCBzZWFyY2ggdGhhdCByZXN1bHRzIGluIGZpbmRpbmcgdGhlXG4gICAqIHNob3J0ZXN0IHBhdGggYmV0d2VlbiB0aGUgYHN0YXJ0YCBhbmQgYGVuZGAgcG9pbnRzLlxuICAgKlxuICAgKiBAcGFyYW0gc3RhcnQgdGhlIHN0YXJ0aW5nIHBvaW50IG9mIHRoZSBwYXRoLlxuICAgKiBAcGFyYW0gZW5kIHRoZSBlbmRpbmcgcG9pbnQgb2YgdGhlIHBhdGguXG4gICAqIEByZXR1cm5zIGFuIGFycmF5IG9mIHNvdXJjZSBmaWxlcyB0aGF0IGNvbm5lY3QgdGhlIGBzdGFydGAgYW5kIGBlbmRgIHNvdXJjZSBmaWxlcywgb3IgYG51bGxgIGlmXG4gICAqICAgICBubyBwYXRoIGNvdWxkIGJlIGZvdW5kLlxuICAgKi9cbiAgZmluZFBhdGgoc3RhcnQ6IHRzLlNvdXJjZUZpbGUsIGVuZDogdHMuU291cmNlRmlsZSk6IHRzLlNvdXJjZUZpbGVbXXxudWxsIHtcbiAgICBpZiAoc3RhcnQgPT09IGVuZCkge1xuICAgICAgLy8gRXNjYXBlIGVhcmx5IGZvciB0aGUgY2FzZSB3aGVyZSBgc3RhcnRgIGFuZCBgZW5kYCBhcmUgdGhlIHNhbWUuXG4gICAgICByZXR1cm4gW3N0YXJ0XTtcbiAgICB9XG5cbiAgICBjb25zdCBmb3VuZCA9IG5ldyBTZXQ8dHMuU291cmNlRmlsZT4oW3N0YXJ0XSk7XG4gICAgY29uc3QgcXVldWU6IEZvdW5kW10gPSBbbmV3IEZvdW5kKHN0YXJ0LCBudWxsKV07XG5cbiAgICB3aGlsZSAocXVldWUubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgY3VycmVudCA9IHF1ZXVlLnNoaWZ0KCkhO1xuICAgICAgY29uc3QgaW1wb3J0cyA9IHRoaXMuaW1wb3J0c09mKGN1cnJlbnQuc291cmNlRmlsZSk7XG4gICAgICBmb3IgKGNvbnN0IGltcG9ydGVkRmlsZSBvZiBpbXBvcnRzKSB7XG4gICAgICAgIGlmICghZm91bmQuaGFzKGltcG9ydGVkRmlsZSkpIHtcbiAgICAgICAgICBjb25zdCBuZXh0ID0gbmV3IEZvdW5kKGltcG9ydGVkRmlsZSwgY3VycmVudCk7XG4gICAgICAgICAgaWYgKG5leHQuc291cmNlRmlsZSA9PT0gZW5kKSB7XG4gICAgICAgICAgICAvLyBXZSBoYXZlIGhpdCB0aGUgdGFyZ2V0IGBlbmRgIHBhdGggc28gd2UgY2FuIHN0b3AgaGVyZS5cbiAgICAgICAgICAgIHJldHVybiBuZXh0LnRvUGF0aCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBmb3VuZC5hZGQoaW1wb3J0ZWRGaWxlKTtcbiAgICAgICAgICBxdWV1ZS5wdXNoKG5leHQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIHJlY29yZCBvZiBhbiBpbXBvcnQgZnJvbSBgc2ZgIHRvIGBpbXBvcnRlZGAsIHRoYXQncyBub3QgcHJlc2VudCBpbiB0aGUgb3JpZ2luYWxcbiAgICogYHRzLlByb2dyYW1gIGJ1dCB3aWxsIGJlIHJlbWVtYmVyZWQgYnkgdGhlIGBJbXBvcnRHcmFwaGAuXG4gICAqL1xuICBhZGRTeW50aGV0aWNJbXBvcnQoc2Y6IHRzLlNvdXJjZUZpbGUsIGltcG9ydGVkOiB0cy5Tb3VyY2VGaWxlKTogdm9pZCB7XG4gICAgaWYgKGlzTG9jYWxGaWxlKGltcG9ydGVkKSkge1xuICAgICAgdGhpcy5pbXBvcnRzT2Yoc2YpLmFkZChpbXBvcnRlZCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzY2FuSW1wb3J0cyhzZjogdHMuU291cmNlRmlsZSk6IFNldDx0cy5Tb3VyY2VGaWxlPiB7XG4gICAgcmV0dXJuIHRoaXMucGVyZi5pblBoYXNlKFBlcmZQaGFzZS5DeWNsZURldGVjdGlvbiwgKCkgPT4ge1xuICAgICAgY29uc3QgaW1wb3J0cyA9IG5ldyBTZXQ8dHMuU291cmNlRmlsZT4oKTtcbiAgICAgIC8vIExvb2sgdGhyb3VnaCB0aGUgc291cmNlIGZpbGUgZm9yIGltcG9ydCBhbmQgZXhwb3J0IHN0YXRlbWVudHMuXG4gICAgICBmb3IgKGNvbnN0IHN0bXQgb2Ygc2Yuc3RhdGVtZW50cykge1xuICAgICAgICBpZiAoKCF0cy5pc0ltcG9ydERlY2xhcmF0aW9uKHN0bXQpICYmICF0cy5pc0V4cG9ydERlY2xhcmF0aW9uKHN0bXQpKSB8fFxuICAgICAgICAgICAgc3RtdC5tb2R1bGVTcGVjaWZpZXIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRzLmlzSW1wb3J0RGVjbGFyYXRpb24oc3RtdCkgJiYgc3RtdC5pbXBvcnRDbGF1c2UgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgICAgc3RtdC5pbXBvcnRDbGF1c2UuaXNUeXBlT25seSkge1xuICAgICAgICAgIC8vIEV4Y2x1ZGUgdHlwZS1vbmx5IGltcG9ydHMgYXMgdGhleSBhcmUgYWx3YXlzIGVsaWRlZCwgc28gdGhleSBkb24ndCBjb250cmlidXRlIHRvXG4gICAgICAgICAgLy8gY3ljbGVzLlxuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc3ltYm9sID0gdGhpcy5jaGVja2VyLmdldFN5bWJvbEF0TG9jYXRpb24oc3RtdC5tb2R1bGVTcGVjaWZpZXIpO1xuICAgICAgICBpZiAoc3ltYm9sID09PSB1bmRlZmluZWQgfHwgc3ltYm9sLnZhbHVlRGVjbGFyYXRpb24gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIC8vIE5vIHN5bWJvbCBjb3VsZCBiZSBmb3VuZCB0byBza2lwIG92ZXIgdGhpcyBpbXBvcnQvZXhwb3J0LlxuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG1vZHVsZUZpbGUgPSBzeW1ib2wudmFsdWVEZWNsYXJhdGlvbjtcbiAgICAgICAgaWYgKHRzLmlzU291cmNlRmlsZShtb2R1bGVGaWxlKSAmJiBpc0xvY2FsRmlsZShtb2R1bGVGaWxlKSkge1xuICAgICAgICAgIC8vIFJlY29yZCB0aGlzIGxvY2FsIGltcG9ydC5cbiAgICAgICAgICBpbXBvcnRzLmFkZChtb2R1bGVGaWxlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIGltcG9ydHM7XG4gICAgfSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gaXNMb2NhbEZpbGUoc2Y6IHRzLlNvdXJjZUZpbGUpOiBib29sZWFuIHtcbiAgcmV0dXJuICFzZi5pc0RlY2xhcmF0aW9uRmlsZTtcbn1cblxuLyoqXG4gKiBBIGhlbHBlciBjbGFzcyB0byB0cmFjayB3aGljaCBTb3VyY2VGaWxlcyBhcmUgYmVpbmcgcHJvY2Vzc2VkIHdoZW4gc2VhcmNoaW5nIGZvciBhIHBhdGggaW5cbiAqIGBnZXRQYXRoKClgIGFib3ZlLlxuICovXG5jbGFzcyBGb3VuZCB7XG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IHNvdXJjZUZpbGU6IHRzLlNvdXJjZUZpbGUsIHJlYWRvbmx5IHBhcmVudDogRm91bmR8bnVsbCkge31cblxuICAvKipcbiAgICogQmFjayB0cmFjayB0aHJvdWdoIHRoaXMgZm91bmQgU291cmNlRmlsZSBhbmQgaXRzIGFuY2VzdG9ycyB0byBnZW5lcmF0ZSBhbiBhcnJheSBvZlxuICAgKiBTb3VyY2VGaWxlcyB0aGF0IGZvcm0gYW0gaW1wb3J0IHBhdGggYmV0d2VlbiB0d28gU291cmNlRmlsZXMuXG4gICAqL1xuICB0b1BhdGgoKTogdHMuU291cmNlRmlsZVtdIHtcbiAgICBjb25zdCBhcnJheTogdHMuU291cmNlRmlsZVtdID0gW107XG4gICAgbGV0IGN1cnJlbnQ6IEZvdW5kfG51bGwgPSB0aGlzO1xuICAgIHdoaWxlIChjdXJyZW50ICE9PSBudWxsKSB7XG4gICAgICBhcnJheS5wdXNoKGN1cnJlbnQuc291cmNlRmlsZSk7XG4gICAgICBjdXJyZW50ID0gY3VycmVudC5wYXJlbnQ7XG4gICAgfVxuICAgIC8vIFB1c2hpbmcgYW5kIHRoZW4gcmV2ZXJzaW5nLCBPKG4pLCByYXRoZXIgdGhhbiB1bnNoaWZ0aW5nIHJlcGVhdGVkbHksIE8obl4yKSwgYXZvaWRzXG4gICAgLy8gbWFuaXB1bGF0aW5nIHRoZSBhcnJheSBvbiBldmVyeSBpdGVyYXRpb246IGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8yNjM3MDYyMFxuICAgIHJldHVybiBhcnJheS5yZXZlcnNlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
175
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvY3ljbGVzL3NyYy9pbXBvcnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7Ozs7SUFFSCwrQkFBaUM7SUFFakMsNkRBQW1EO0lBRW5EOzs7OztPQUtHO0lBQ0g7UUFHRSxxQkFBb0IsT0FBdUIsRUFBVSxJQUFrQjtZQUFuRCxZQUFPLEdBQVAsT0FBTyxDQUFnQjtZQUFVLFNBQUksR0FBSixJQUFJLENBQWM7WUFGL0QsWUFBTyxHQUFHLElBQUksR0FBRyxFQUFxQyxDQUFDO1FBRVcsQ0FBQztRQUUzRTs7OztXQUlHO1FBQ0gsK0JBQVMsR0FBVCxVQUFVLEVBQWlCO1lBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFDekIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUM1QztZQUNELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFFLENBQUM7UUFDL0IsQ0FBQztRQUVEOzs7Ozs7Ozs7O1dBVUc7UUFDSCw4QkFBUSxHQUFSLFVBQVMsS0FBb0IsRUFBRSxHQUFrQjs7WUFDL0MsSUFBSSxLQUFLLEtBQUssR0FBRyxFQUFFO2dCQUNqQixrRUFBa0U7Z0JBQ2xFLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUNoQjtZQUVELElBQU0sS0FBSyxHQUFHLElBQUksR0FBRyxDQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDOUMsSUFBTSxLQUFLLEdBQVksQ0FBQyxJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FB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QyxFQUFpQjtRQUNwQyxPQUFPLENBQUMsRUFBRSxDQUFDLGlCQUFpQixDQUFDO0lBQy9CLENBQUM7SUFFRDs7O09BR0c7SUFDSDtRQUNFLGVBQXFCLFVBQXlCLEVBQVcsTUFBa0I7WUFBdEQsZUFBVSxHQUFWLFVBQVUsQ0FBZTtZQUFXLFdBQU0sR0FBTixNQUFNLENBQVk7UUFBRyxDQUFDO1FBRS9FOzs7V0FHRztRQUNILHNCQUFNLEdBQU47WUFDRSxJQUFNLEtBQUssR0FBb0IsRUFBRSxDQUFDO1lBQ2xDLElBQUksT0FBTyxHQUFlLElBQUksQ0FBQztZQUMvQixPQUFPLE9BQU8sS0FBSyxJQUFJLEVBQUU7Z0JBQ3ZCLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUMvQixPQUFPLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQzthQUMxQjtZQUNELHNGQUFzRjtZQUN0RixrRkFBa0Y7WUFDbEYsT0FBTyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDekIsQ0FBQztRQUNILFlBQUM7SUFBRCxDQUFDLEFBbEJELElBa0JDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xuXG5pbXBvcnQge1BlcmZQaGFzZSwgUGVyZlJlY29yZGVyfSBmcm9tICcuLi8uLi9wZXJmJztcblxuLyoqXG4gKiBBIGNhY2hlZCBncmFwaCBvZiBpbXBvcnRzIGluIHRoZSBgdHMuUHJvZ3JhbWAuXG4gKlxuICogVGhlIGBJbXBvcnRHcmFwaGAga2VlcHMgdHJhY2sgb2YgZGVwZW5kZW5jaWVzIChpbXBvcnRzKSBvZiBpbmRpdmlkdWFsIGB0cy5Tb3VyY2VGaWxlYHMuIE9ubHlcbiAqIGRlcGVuZGVuY2llcyB3aXRoaW4gdGhlIHNhbWUgcHJvZ3JhbSBhcmUgdHJhY2tlZDsgaW1wb3J0cyBpbnRvIHBhY2thZ2VzIG9uIE5QTSBhcmUgbm90LlxuICovXG5leHBvcnQgY2xhc3MgSW1wb3J0R3JhcGgge1xuICBwcml2YXRlIGltcG9ydHMgPSBuZXcgTWFwPHRzLlNvdXJjZUZpbGUsIFNldDx0cy5Tb3VyY2VGaWxlPj4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoZWNrZXI6IHRzLlR5cGVDaGVja2VyLCBwcml2YXRlIHBlcmY6IFBlcmZSZWNvcmRlcikge31cblxuICAvKipcbiAgICogTGlzdCB0aGUgZGlyZWN0IChub3QgdHJhbnNpdGl2ZSkgaW1wb3J0cyBvZiBhIGdpdmVuIGB0cy5Tb3VyY2VGaWxlYC5cbiAgICpcbiAgICogVGhpcyBvcGVyYXRpb24gaXMgY2FjaGVkLlxuICAgKi9cbiAgaW1wb3J0c09mKHNmOiB0cy5Tb3VyY2VGaWxlKTogU2V0PHRzLlNvdXJjZUZpbGU+IHtcbiAgICBpZiAoIXRoaXMuaW1wb3J0cy5oYXMoc2YpKSB7XG4gICAgICB0aGlzLmltcG9ydHMuc2V0KHNmLCB0aGlzLnNjYW5JbXBvcnRzKHNmKSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmltcG9ydHMuZ2V0KHNmKSE7XG4gIH1cblxuICAvKipcbiAgICogRmluZCBhbiBpbXBvcnQgcGF0aCBmcm9tIHRoZSBgc3RhcnRgIFNvdXJjZUZpbGUgdG8gdGhlIGBlbmRgIFNvdXJjZUZpbGUuXG4gICAqXG4gICAqIFRoaXMgZnVuY3Rpb24gaW1wbGVtZW50cyBhIGJyZWFkdGggZmlyc3Qgc2VhcmNoIHRoYXQgcmVzdWx0cyBpbiBmaW5kaW5nIHRoZVxuICAgKiBzaG9ydGVzdCBwYXRoIGJldHdlZW4gdGhlIGBzdGFydGAgYW5kIGBlbmRgIHBvaW50cy5cbiAgICpcbiAgICogQHBhcmFtIHN0YXJ0IHRoZSBzdGFydGluZyBwb2ludCBvZiB0aGUgcGF0aC5cbiAgICogQHBhcmFtIGVuZCB0aGUgZW5kaW5nIHBvaW50IG9mIHRoZSBwYXRoLlxuICAgKiBAcmV0dXJucyBhbiBhcnJheSBvZiBzb3VyY2UgZmlsZXMgdGhhdCBjb25uZWN0IHRoZSBgc3RhcnRgIGFuZCBgZW5kYCBzb3VyY2UgZmlsZXMsIG9yIGBudWxsYCBpZlxuICAgKiAgICAgbm8gcGF0aCBjb3VsZCBiZSBmb3VuZC5cbiAgICovXG4gIGZpbmRQYXRoKHN0YXJ0OiB0cy5Tb3VyY2VGaWxlLCBlbmQ6IHRzLlNvdXJjZUZpbGUpOiB0cy5Tb3VyY2VGaWxlW118bnVsbCB7XG4gICAgaWYgKHN0YXJ0ID09PSBlbmQpIHtcbiAgICAgIC8vIEVzY2FwZSBlYXJseSBmb3IgdGhlIGNhc2Ugd2hlcmUgYHN0YXJ0YCBhbmQgYGVuZGAgYXJlIHRoZSBzYW1lLlxuICAgICAgcmV0dXJuIFtzdGFydF07XG4gICAgfVxuXG4gICAgY29uc3QgZm91bmQgPSBuZXcgU2V0PHRzLlNvdXJjZUZpbGU+KFtzdGFydF0pO1xuICAgIGNvbnN0IHF1ZXVlOiBGb3VuZFtdID0gW25ldyBGb3VuZChzdGFydCwgbnVsbCldO1xuXG4gICAgd2hpbGUgKHF1ZXVlLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnN0IGN1cnJlbnQgPSBxdWV1ZS5zaGlmdCgpITtcbiAgICAgIGNvbnN0IGltcG9ydHMgPSB0aGlzLmltcG9ydHNPZihjdXJyZW50LnNvdXJjZUZpbGUpO1xuICAgICAgZm9yIChjb25zdCBpbXBvcnRlZEZpbGUgb2YgaW1wb3J0cykge1xuICAgICAgICBpZiAoIWZvdW5kLmhhcyhpbXBvcnRlZEZpbGUpKSB7XG4gICAgICAgICAgY29uc3QgbmV4dCA9IG5ldyBGb3VuZChpbXBvcnRlZEZpbGUsIGN1cnJlbnQpO1xuICAgICAgICAgIGlmIChuZXh0LnNvdXJjZUZpbGUgPT09IGVuZCkge1xuICAgICAgICAgICAgLy8gV2UgaGF2ZSBoaXQgdGhlIHRhcmdldCBgZW5kYCBwYXRoIHNvIHdlIGNhbiBzdG9wIGhlcmUuXG4gICAgICAgICAgICByZXR1cm4gbmV4dC50b1BhdGgoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgZm91bmQuYWRkKGltcG9ydGVkRmlsZSk7XG4gICAgICAgICAgcXVldWUucHVzaChuZXh0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSByZWNvcmQgb2YgYW4gaW1wb3J0IGZyb20gYHNmYCB0byBgaW1wb3J0ZWRgLCB0aGF0J3Mgbm90IHByZXNlbnQgaW4gdGhlIG9yaWdpbmFsXG4gICAqIGB0cy5Qcm9ncmFtYCBidXQgd2lsbCBiZSByZW1lbWJlcmVkIGJ5IHRoZSBgSW1wb3J0R3JhcGhgLlxuICAgKi9cbiAgYWRkU3ludGhldGljSW1wb3J0KHNmOiB0cy5Tb3VyY2VGaWxlLCBpbXBvcnRlZDogdHMuU291cmNlRmlsZSk6IHZvaWQge1xuICAgIGlmIChpc0xvY2FsRmlsZShpbXBvcnRlZCkpIHtcbiAgICAgIHRoaXMuaW1wb3J0c09mKHNmKS5hZGQoaW1wb3J0ZWQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2NhbkltcG9ydHMoc2Y6IHRzLlNvdXJjZUZpbGUpOiBTZXQ8dHMuU291cmNlRmlsZT4ge1xuICAgIHJldHVybiB0aGlzLnBlcmYuaW5QaGFzZShQZXJmUGhhc2UuQ3ljbGVEZXRlY3Rpb24sICgpID0+IHtcbiAgICAgIGNvbnN0IGltcG9ydHMgPSBuZXcgU2V0PHRzLlNvdXJjZUZpbGU+KCk7XG4gICAgICAvLyBMb29rIHRocm91Z2ggdGhlIHNvdXJjZSBmaWxlIGZvciBpbXBvcnQgYW5kIGV4cG9ydCBzdGF0ZW1lbnRzLlxuICAgICAgZm9yIChjb25zdCBzdG10IG9mIHNmLnN0YXRlbWVudHMpIHtcbiAgICAgICAgaWYgKCghdHMuaXNJbXBvcnREZWNsYXJhdGlvbihzdG10KSAmJiAhdHMuaXNFeHBvcnREZWNsYXJhdGlvbihzdG10KSkgfHxcbiAgICAgICAgICAgIHN0bXQubW9kdWxlU3BlY2lmaWVyID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0cy5pc0ltcG9ydERlY2xhcmF0aW9uKHN0bXQpICYmIHN0bXQuaW1wb3J0Q2xhdXNlICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAgIHN0bXQuaW1wb3J0Q2xhdXNlLmlzVHlwZU9ubHkpIHtcbiAgICAgICAgICAvLyBFeGNsdWRlIHR5cGUtb25seSBpbXBvcnRzIGFzIHRoZXkgYXJlIGFsd2F5cyBlbGlkZWQsIHNvIHRoZXkgZG9uJ3QgY29udHJpYnV0ZSB0b1xuICAgICAgICAgIC8vIGN5Y2xlcy5cbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHN5bWJvbCA9IHRoaXMuY2hlY2tlci5nZXRTeW1ib2xBdExvY2F0aW9uKHN0bXQubW9kdWxlU3BlY2lmaWVyKTtcbiAgICAgICAgaWYgKHN5bWJvbCA9PT0gdW5kZWZpbmVkIHx8IHN5bWJvbC52YWx1ZURlY2xhcmF0aW9uID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAvLyBObyBzeW1ib2wgY291bGQgYmUgZm91bmQgdG8gc2tpcCBvdmVyIHRoaXMgaW1wb3J0L2V4cG9ydC5cbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBtb2R1bGVGaWxlID0gc3ltYm9sLnZhbHVlRGVjbGFyYXRpb247XG4gICAgICAgIGlmICh0cy5pc1NvdXJjZUZpbGUobW9kdWxlRmlsZSkgJiYgaXNMb2NhbEZpbGUobW9kdWxlRmlsZSkpIHtcbiAgICAgICAgICAvLyBSZWNvcmQgdGhpcyBsb2NhbCBpbXBvcnQuXG4gICAgICAgICAgaW1wb3J0cy5hZGQobW9kdWxlRmlsZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBpbXBvcnRzO1xuICAgIH0pO1xuICB9XG59XG5cbmZ1bmN0aW9uIGlzTG9jYWxGaWxlKHNmOiB0cy5Tb3VyY2VGaWxlKTogYm9vbGVhbiB7XG4gIHJldHVybiAhc2YuaXNEZWNsYXJhdGlvbkZpbGU7XG59XG5cbi8qKlxuICogQSBoZWxwZXIgY2xhc3MgdG8gdHJhY2sgd2hpY2ggU291cmNlRmlsZXMgYXJlIGJlaW5nIHByb2Nlc3NlZCB3aGVuIHNlYXJjaGluZyBmb3IgYSBwYXRoIGluXG4gKiBgZ2V0UGF0aCgpYCBhYm92ZS5cbiAqL1xuY2xhc3MgRm91bmQge1xuICBjb25zdHJ1Y3RvcihyZWFkb25seSBzb3VyY2VGaWxlOiB0cy5Tb3VyY2VGaWxlLCByZWFkb25seSBwYXJlbnQ6IEZvdW5kfG51bGwpIHt9XG5cbiAgLyoqXG4gICAqIEJhY2sgdHJhY2sgdGhyb3VnaCB0aGlzIGZvdW5kIFNvdXJjZUZpbGUgYW5kIGl0cyBhbmNlc3RvcnMgdG8gZ2VuZXJhdGUgYW4gYXJyYXkgb2ZcbiAgICogU291cmNlRmlsZXMgdGhhdCBmb3JtIGFtIGltcG9ydCBwYXRoIGJldHdlZW4gdHdvIFNvdXJjZUZpbGVzLlxuICAgKi9cbiAgdG9QYXRoKCk6IHRzLlNvdXJjZUZpbGVbXSB7XG4gICAgY29uc3QgYXJyYXk6IHRzLlNvdXJjZUZpbGVbXSA9IFtdO1xuICAgIGxldCBjdXJyZW50OiBGb3VuZHxudWxsID0gdGhpcztcbiAgICB3aGlsZSAoY3VycmVudCAhPT0gbnVsbCkge1xuICAgICAgYXJyYXkucHVzaChjdXJyZW50LnNvdXJjZUZpbGUpO1xuICAgICAgY3VycmVudCA9IGN1cnJlbnQucGFyZW50O1xuICAgIH1cbiAgICAvLyBQdXNoaW5nIGFuZCB0aGVuIHJldmVyc2luZywgTyhuKSwgcmF0aGVyIHRoYW4gdW5zaGlmdGluZyByZXBlYXRlZGx5LCBPKG5eMiksIGF2b2lkc1xuICAgIC8vIG1hbmlwdWxhdGluZyB0aGUgYXJyYXkgb24gZXZlcnkgaXRlcmF0aW9uOiBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMjYzNzA2MjBcbiAgICByZXR1cm4gYXJyYXkucmV2ZXJzZSgpO1xuICB9XG59XG4iXX0=
|
|
@@ -144,6 +144,15 @@ export declare enum ErrorCode {
|
|
|
144
144
|
* in which the input and output are going to different places.
|
|
145
145
|
*/
|
|
146
146
|
SPLIT_TWO_WAY_BINDING = 8007,
|
|
147
|
+
/**
|
|
148
|
+
* A two way binding in a template has an incorrect syntax,
|
|
149
|
+
* parentheses outside brackets. For example:
|
|
150
|
+
*
|
|
151
|
+
* ```
|
|
152
|
+
* <div ([foo])="bar" />
|
|
153
|
+
* ```
|
|
154
|
+
*/
|
|
155
|
+
INVALID_BANANA_IN_BOX = 8101,
|
|
147
156
|
/**
|
|
148
157
|
* The template type-checking engine would need to generate an inline type check block for a
|
|
149
158
|
* component, but the current type-checking environment doesn't support it.
|
|
@@ -156,6 +156,15 @@
|
|
|
156
156
|
* in which the input and output are going to different places.
|
|
157
157
|
*/
|
|
158
158
|
ErrorCode[ErrorCode["SPLIT_TWO_WAY_BINDING"] = 8007] = "SPLIT_TWO_WAY_BINDING";
|
|
159
|
+
/**
|
|
160
|
+
* A two way binding in a template has an incorrect syntax,
|
|
161
|
+
* parentheses outside brackets. For example:
|
|
162
|
+
*
|
|
163
|
+
* ```
|
|
164
|
+
* <div ([foo])="bar" />
|
|
165
|
+
* ```
|
|
166
|
+
*/
|
|
167
|
+
ErrorCode[ErrorCode["INVALID_BANANA_IN_BOX"] = 8101] = "INVALID_BANANA_IN_BOX";
|
|
159
168
|
/**
|
|
160
169
|
* The template type-checking engine would need to generate an inline type check block for a
|
|
161
170
|
* component, but the current type-checking environment doesn't support it.
|
|
@@ -214,4 +223,4 @@
|
|
|
214
223
|
}
|
|
215
224
|
exports.ngErrorCode = ngErrorCode;
|
|
216
225
|
});
|
|
217
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JfY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvZGlhZ25vc3RpY3Mvc3JjL2Vycm9yX2NvZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7O0lBRUg7O09BRUc7SUFDSCxJQUFZLFNBb01YO0lBcE1ELFdBQVksU0FBUztRQUNuQixzRkFBZ0MsQ0FBQTtRQUNoQyw4RUFBNEIsQ0FBQTtRQUM1Qiw0RUFBMkIsQ0FBQTtRQUMzQiw0RkFBbUMsQ0FBQTtRQUNuQyw0RUFBMkIsQ0FBQTtRQUUzQjs7V0FFRztRQUNILDBFQUEwQixDQUFBO1FBRTFCLDRFQUEyQixDQUFBO1FBQzNCLHNFQUF3QixDQUFBO1FBRXhCLHdGQUFpQyxDQUFBO1FBQ2pDLHNFQUF3QixDQUFBO1FBQ3hCLDBFQUEwQixDQUFBO1FBQzFCLHdGQUFpQyxDQUFBO1FBRWpDLDhGQUE4RjtRQUM5Riw0RUFBMkIsQ0FBQTtRQUUzQjs7O1dBR0c7UUFDSCwwR0FBMEMsQ0FBQTtRQUUxQzs7O1dBR0c7UUFDSCxvSEFBK0MsQ0FBQTtRQUUvQzs7O1dBR0c7UUFDSCw0RkFBbUMsQ0FBQTtRQUVuQzs7O1dBR0c7UUFDSCw4R0FBNEMsQ0FBQTtRQUU1QywwRUFBMEIsQ0FBQTtRQUMxQiw0R0FBMkMsQ0FBQTtRQUMzQzs7O1dBR0c7UUFDSCw4RUFBNEIsQ0FBQTtRQUU1QiwwRkFBa0MsQ0FBQTtRQUNsQyxrSkFBOEQsQ0FBQTtRQUU5RDs7O1dBR0c7UUFDSCxvRkFBK0IsQ0FBQTtRQUUvQjs7V0FFRztRQUNILDRFQUEyQixDQUFBO1FBRTNCOztXQUVHO1FBQ0gsNEZBQW1DLENBQUE7UUFFbkM7O1dBRUc7UUFDSCxrRkFBOEIsQ0FBQTtRQUU5Qjs7V0FFRztRQUNILGtGQUE4QixDQUFBO1FBRTlCOzs7V0FHRztRQUNILHNGQUFnQyxDQUFBO1FBRWhDOzs7V0FHRztRQUNILGdJQUFxRCxDQUFBO1FBRXJEOzs7V0FHRztRQUNILG9HQUF1QyxDQUFBO1FBRXZDOztXQUVHO1FBQ0gsa0dBQXNDLENBQUE7UUFFdEM7OztXQUdHO1FBQ0gsc0dBQXdDLENBQUE7UUFFeEM7O1dBRUc7UUFDSCxnRkFBNkIsQ0FBQTtRQUU3Qjs7V0FFRztRQUNILG9GQUErQixDQUFBO1FBRS9COztXQUVHO1FBQ0gsb0ZBQStCLENBQUE7UUFFL0I7O1dBRUc7UUFDSCw0REFBbUIsQ0FBQTtRQUVuQjs7Ozs7Ozs7Ozs7V0FXRztRQUNILDBGQUFrQyxDQUFBO1FBRWxDOzs7Ozs7O1dBT0c7UUFDSCxnR0FBcUMsQ0FBQTtRQUVyQzs7O1dBR0c7UUFDSCw4RUFBNEIsQ0FBQTtRQUU1Qjs7O1dBR0c7UUFDSCwwRUFBMEIsQ0FBQTtRQUUxQjs7O1dBR0c7UUFDSCxzRkFBZ0MsQ0FBQTtRQUVoQzs7V0FFRztRQUNILHNGQUFnQyxDQUFBO1FBRWhDLDRFQUE0RTtRQUM1RSxpR0FBaUc7UUFDakcsc0ZBQXNGO1FBRXRGOzs7V0FHRztRQUNILHFGQUFnQyxDQUFBO1FBRWhDOzs7O1dBSUc7UUFDSCx1R0FBeUMsQ0FBQTtJQUMzQyxDQUFDLEVBcE1XLFNBQVMsR0FBVCxpQkFBUyxLQUFULGlCQUFTLFFBb01wQjtJQUVEOzs7OztPQUtHO0lBQ1UsUUFBQSwyQkFBMkIsR0FBRywyQkFBMkIsQ0FBQztJQUV2RTs7OztPQUlHO0lBQ1UsUUFBQSwyQkFBMkIsR0FBRyxJQUFJLEdBQUcsQ0FBQztRQUNqRCxTQUFTLENBQUMseUJBQXlCO1FBQ25DLFNBQVMsQ0FBQyxxQkFBcUI7UUFDL0IsU0FBUyxDQUFDLG1CQUFtQjtRQUM3QixTQUFTLENBQUMsc0JBQXNCO1FBQ2hDLFNBQVMsQ0FBQyx3QkFBd0I7UUFDbEMsU0FBUyxDQUFDLHdCQUF3QjtRQUNsQyxTQUFTLENBQUMscUNBQXFDO0tBQ2hELENBQUMsQ0FBQztJQUVIOztPQUVHO0lBQ0gsU0FBZ0IsV0FBVyxDQUFDLElBQWU7UUFDekMsT0FBTyxRQUFRLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFGRCxrQ0FFQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG4vKipcbiAqIEBwdWJsaWNBcGlcbiAqL1xuZXhwb3J0IGVudW0gRXJyb3JDb2RlIHtcbiAgREVDT1JBVE9SX0FSR19OT1RfTElURVJBTCA9IDEwMDEsXG4gIERFQ09SQVRPUl9BUklUWV9XUk9ORyA9IDEwMDIsXG4gIERFQ09SQVRPUl9OT1RfQ0FMTEVEID0gMTAwMyxcbiAgREVDT1JBVE9SX09OX0FOT05ZTU9VU19DTEFTUyA9IDEwMDQsXG4gIERFQ09SQVRPUl9VTkVYUEVDVEVEID0gMTAwNSxcblxuICAvKipcbiAgICogVGhpcyBlcnJvciBjb2RlIGluZGljYXRlcyB0aGF0IHRoZXJlIGFyZSBpbmNvbXBhdGlibGUgZGVjb3JhdG9ycyBvbiBhIHR5cGUgb3IgYSBjbGFzcyBmaWVsZC5cbiAgICovXG4gIERFQ09SQVRPUl9DT0xMSVNJT04gPSAxMDA2LFxuXG4gIFZBTFVFX0hBU19XUk9OR19UWVBFID0gMTAxMCxcbiAgVkFMVUVfTk9UX0xJVEVSQUwgPSAxMDExLFxuXG4gIENPTVBPTkVOVF9NSVNTSU5HX1RFTVBMQVRFID0gMjAwMSxcbiAgUElQRV9NSVNTSU5HX05BTUUgPSAyMDAyLFxuICBQQVJBTV9NSVNTSU5HX1RPS0VOID0gMjAwMyxcbiAgRElSRUNUSVZFX01JU1NJTkdfU0VMRUNUT1IgPSAyMDA0LFxuXG4gIC8qKiBSYWlzZWQgd2hlbiBhbiB1bmRlY29yYXRlZCBjbGFzcyBpcyBwYXNzZWQgaW4gYXMgYSBwcm92aWRlciB0byBhIG1vZHVsZSBvciBhIGRpcmVjdGl2ZS4gKi9cbiAgVU5ERUNPUkFURURfUFJPVklERVIgPSAyMDA1LFxuXG4gIC8qKlxuICAgKiBSYWlzZWQgd2hlbiBhIERpcmVjdGl2ZSBpbmhlcml0cyBpdHMgY29uc3RydWN0b3IgZnJvbSBhIGJhc2UgY2xhc3Mgd2l0aG91dCBhbiBBbmd1bGFyXG4gICAqIGRlY29yYXRvci5cbiAgICovXG4gIERJUkVDVElWRV9JTkhFUklUU19VTkRFQ09SQVRFRF9DVE9SID0gMjAwNixcblxuICAvKipcbiAgICogUmFpc2VkIHdoZW4gYW4gdW5kZWNvcmF0ZWQgY2xhc3MgdGhhdCBpcyB1c2luZyBBbmd1bGFyIGZlYXR1cmVzXG4gICAqIGhhcyBiZWVuIGRpc2NvdmVyZWQuXG4gICAqL1xuICBVTkRFQ09SQVRFRF9DTEFTU19VU0lOR19BTkdVTEFSX0ZFQVRVUkVTID0gMjAwNyxcblxuICAvKipcbiAgICogUmFpc2VkIHdoZW4gYW4gY29tcG9uZW50IGNhbm5vdCByZXNvbHZlIGFuIGV4dGVybmFsIHJlc291cmNlLCBzdWNoIGFzIGEgdGVtcGxhdGUgb3IgYSBzdHlsZVxuICAgKiBzaGVldC5cbiAgICovXG4gIENPTVBPTkVOVF9SRVNPVVJDRV9OT1RfRk9VTkQgPSAyMDA4LFxuXG4gIC8qKlxuICAgKiBSYWlzZWQgd2hlbiBhIGNvbXBvbmVudCB1c2VzIGBTaGFkb3dEb21gIHZpZXcgZW5jYXBzdWxhdGlvbiwgYnV0IGl0cyBzZWxlY3RvclxuICAgKiBkb2VzIG5vdCBtYXRjaCB0aGUgc2hhZG93IERPTSB0YWcgbmFtZSByZXF1aXJlbWVudHMuXG4gICAqL1xuICBDT01QT05FTlRfSU5WQUxJRF9TSEFET1dfRE9NX1NFTEVDVE9SID0gMjAwOSxcblxuICBTWU1CT0xfTk9UX0VYUE9SVEVEID0gMzAwMSxcbiAgU1lNQk9MX0VYUE9SVEVEX1VOREVSX0RJRkZFUkVOVF9OQU1FID0gMzAwMixcbiAgLyoqXG4gICAqIFJhaXNlZCB3aGVuIGEgcmVsYXRpb25zaGlwIGJldHdlZW4gZGlyZWN0aXZlcyBhbmQvb3IgcGlwZXMgd291bGQgY2F1c2UgYSBjeWNsaWMgaW1wb3J0IHRvIGJlXG4gICAqIGNyZWF0ZWQgdGhhdCBjYW5ub3QgYmUgaGFuZGxlZCwgc3VjaCBhcyBpbiBwYXJ0aWFsIGNvbXBpbGF0aW9uIG1vZGUuXG4gICAqL1xuICBJTVBPUlRfQ1lDTEVfREVURUNURUQgPSAzMDAzLFxuXG4gIENPTkZJR19GTEFUX01PRFVMRV9OT19JTkRFWCA9IDQwMDEsXG4gIENPTkZJR19TVFJJQ1RfVEVNUExBVEVTX0lNUExJRVNfRlVMTF9URU1QTEFURV9UWVBFQ0hFQ0sgPSA0MDAyLFxuXG4gIC8qKlxuICAgKiBSYWlzZWQgd2hlbiBhIGhvc3QgZXhwcmVzc2lvbiBoYXMgYSBwYXJzZSBlcnJvciwgc3VjaCBhcyBhIGhvc3QgbGlzdGVuZXIgb3IgaG9zdCBiaW5kaW5nXG4gICAqIGV4cHJlc3Npb24gY29udGFpbmluZyBhIHBpcGUuXG4gICAqL1xuICBIT1NUX0JJTkRJTkdfUEFSU0VfRVJST1IgPSA1MDAxLFxuXG4gIC8qKlxuICAgKiBSYWlzZWQgd2hlbiB0aGUgY29tcGlsZXIgY2Fubm90IHBhcnNlIGEgY29tcG9uZW50J3MgdGVtcGxhdGUuXG4gICAqL1xuICBURU1QTEFURV9QQVJTRV9FUlJPUiA9IDUwMDIsXG5cbiAgLyoqXG4gICAqIFJhaXNlZCB3aGVuIGFuIE5nTW9kdWxlIGNvbnRhaW5zIGFuIGludmFsaWQgcmVmZXJlbmNlIGluIGBkZWNsYXJhdGlvbnNgLlxuICAgKi9cbiAgTkdNT0RVTEVfSU5WQUxJRF9ERUNMQVJBVElPTiA9IDYwMDEsXG5cbiAgLyoqXG4gICAqIFJhaXNlZCB3aGVuIGFuIE5nTW9kdWxlIGNvbnRhaW5zIGFuIGludmFsaWQgdHlwZSBpbiBgaW1wb3J0c2AuXG4gICAqL1xuICBOR01PRFVMRV9JTlZBTElEX0lNUE9SVCA9IDYwMDIsXG5cbiAgLyoqXG4gICAqIFJhaXNlZCB3aGVuIGFuIE5nTW9kdWxlIGNvbnRhaW5zIGFuIGludmFsaWQgdHlwZSBpbiBgZXhwb3J0c2AuXG4gICAqL1xuICBOR01PRFVMRV9JTlZBTElEX0VYUE9SVCA9IDYwMDMsXG5cbiAgLyoqXG4gICAqIFJhaXNlZCB3aGVuIGFuIE5nTW9kdWxlIGNvbnRhaW5zIGEgdHlwZSBpbiBgZXhwb3J0c2Agd2hpY2ggaXMgbmVpdGhlciBpbiBgZGVjbGFyYXRpb25zYCBub3JcbiAgICogb3RoZXJ3aXNlIGltcG9ydGVkLlxuICAgKi9cbiAgTkdNT0RVTEVfSU5WQUxJRF9SRUVYUE9SVCA9IDYwMDQsXG5cbiAgLyoqXG4gICAqIFJhaXNlZCB3aGVuIGEgYE1vZHVsZVdpdGhQcm92aWRlcnNgIHdpdGggYSBtaXNzaW5nXG4gICAqIGdlbmVyaWMgdHlwZSBhcmd1bWVudCBpcyBwYXNzZWQgaW50byBhbiBgTmdNb2R1bGVgLlxuICAgKi9cbiAgTkdNT0RVTEVfTU9EVUxFX1dJVEhfUFJPVklERVJTX01JU1NJTkdfR0VORVJJQyA9IDYwMDUsXG5cbiAgLyoqXG4gICAqIFJhaXNlZCB3aGVuIGFuIE5nTW9kdWxlIGV4cG9ydHMgbXVsdGlwbGUgZGlyZWN0aXZlcy9waXBlcyBvZiB0aGUgc2FtZSBuYW1lIGFuZCB0aGUgY29tcGlsZXJcbiAgICogYXR0ZW1wdHMgdG8gZ2VuZXJhdGUgcHJpdmF0ZSByZS1leHBvcnRzIHdpdGhpbiB0aGUgTmdNb2R1bGUgZmlsZS5cbiAgICovXG4gIE5HTU9EVUxFX1JFRVhQT1JUX05BTUVfQ09MTElTSU9OID0gNjAwNixcblxuICAvKipcbiAgICogUmFpc2VkIHdoZW4gYSBkaXJlY3RpdmUvcGlwZSBpcyBwYXJ0IG9mIHRoZSBkZWNsYXJhdGlvbnMgb2YgdHdvIG9yIG1vcmUgTmdNb2R1bGVzLlxuICAgKi9cbiAgTkdNT0RVTEVfREVDTEFSQVRJT05fTk9UX1VOSVFVRSA9IDYwMDcsXG5cbiAgLyoqXG4gICAqIE5vdCBhY3R1YWxseSByYWlzZWQgYnkgdGhlIGNvbXBpbGVyLCBidXQgcmVzZXJ2ZWQgZm9yIGRvY3VtZW50YXRpb24gb2YgYSBWaWV3IEVuZ2luZSBlcnJvciB3aGVuXG4gICAqIGEgVmlldyBFbmdpbmUgYnVpbGQgZGVwZW5kcyBvbiBhbiBJdnktY29tcGlsZWQgTmdNb2R1bGUuXG4gICAqL1xuICBOR01PRFVMRV9WRV9ERVBFTkRFTkNZX09OX0lWWV9MSUIgPSA2OTk5LFxuXG4gIC8qKlxuICAgKiBBbiBlbGVtZW50IG5hbWUgZmFpbGVkIHZhbGlkYXRpb24gYWdhaW5zdCB0aGUgRE9NIHNjaGVtYS5cbiAgICovXG4gIFNDSEVNQV9JTlZBTElEX0VMRU1FTlQgPSA4MDAxLFxuXG4gIC8qKlxuICAgKiBBbiBlbGVtZW50J3MgYXR0cmlidXRlIG5hbWUgZmFpbGVkIHZhbGlkYXRpb24gYWdhaW5zdCB0aGUgRE9NIHNjaGVtYS5cbiAgICovXG4gIFNDSEVNQV9JTlZBTElEX0FUVFJJQlVURSA9IDgwMDIsXG5cbiAgLyoqXG4gICAqIE5vIG1hdGNoaW5nIGRpcmVjdGl2ZSB3YXMgZm91bmQgZm9yIGEgYCNyZWY9XCJ0YXJnZXRcImAgZXhwcmVzc2lvbi5cbiAgICovXG4gIE1JU1NJTkdfUkVGRVJFTkNFX1RBUkdFVCA9IDgwMDMsXG5cbiAgLyoqXG4gICAqIE5vIG1hdGNoaW5nIHBpcGUgd2FzIGZvdW5kIGZvciBhXG4gICAqL1xuICBNSVNTSU5HX1BJUEUgPSA4MDA0LFxuXG4gIC8qKlxuICAgKiBUaGUgbGVmdC1oYW5kIHNpZGUgb2YgYW4gYXNzaWdubWVudCBleHByZXNzaW9uIHdhcyBhIHRlbXBsYXRlIHZhcmlhYmxlLiBFZmZlY3RpdmVseSwgdGhlXG4gICAqIHRlbXBsYXRlIGxvb2tlZCBsaWtlOlxuICAgKlxuICAgKiBgYGBcbiAgICogPG5nLXRlbXBsYXRlIGxldC1zb21ldGhpbmc+XG4gICAqICAgPGJ1dHRvbiAoY2xpY2spPVwic29tZXRoaW5nID0gLi4uXCI+Li4uPC9idXR0b24+XG4gICAqIDwvbmctdGVtcGxhdGU+XG4gICAqIGBgYFxuICAgKlxuICAgKiBUZW1wbGF0ZSB2YXJpYWJsZXMgYXJlIHJlYWQtb25seS5cbiAgICovXG4gIFdSSVRFX1RPX1JFQURfT05MWV9WQVJJQUJMRSA9IDgwMDUsXG5cbiAgLyoqXG4gICAqIEEgdGVtcGxhdGUgdmFyaWFibGUgd2FzIGRlY2xhcmVkIHR3aWNlLiBGb3IgZXhhbXBsZTpcbiAgICpcbiAgICogYGBgaHRtbFxuICAgKiA8ZGl2ICpuZ0Zvcj1cImxldCBpIG9mIGl0ZW1zOyBsZXQgaSA9IGluZGV4XCI+XG4gICAqIDwvZGl2PlxuICAgKiBgYGBcbiAgICovXG4gIERVUExJQ0FURV9WQVJJQUJMRV9ERUNMQVJBVElPTiA9IDgwMDYsXG5cbiAgLyoqXG4gICAqIEEgdGVtcGxhdGUgaGFzIGEgdHdvIHdheSBiaW5kaW5nICh0d28gYmluZGluZ3MgY3JlYXRlZCBieSBhIHNpbmdsZSBzeW50YWN0aWFsIGVsZW1lbnQpXG4gICAqIGluIHdoaWNoIHRoZSBpbnB1dCBhbmQgb3V0cHV0IGFyZSBnb2luZyB0byBkaWZmZXJlbnQgcGxhY2VzLlxuICAgKi9cbiAgU1BMSVRfVFdPX1dBWV9CSU5ESU5HID0gODAwNyxcblxuICAvKipcbiAgICogVGhlIHRlbXBsYXRlIHR5cGUtY2hlY2tpbmcgZW5naW5lIHdvdWxkIG5lZWQgdG8gZ2VuZXJhdGUgYW4gaW5saW5lIHR5cGUgY2hlY2sgYmxvY2sgZm9yIGFcbiAgICogY29tcG9uZW50LCBidXQgdGhlIGN1cnJlbnQgdHlwZS1jaGVja2luZyBlbnZpcm9ubWVudCBkb2Vzbid0IHN1cHBvcnQgaXQuXG4gICAqL1xuICBJTkxJTkVfVENCX1JFUVVJUkVEID0gODkwMCxcblxuICAvKipcbiAgICogVGhlIHRlbXBsYXRlIHR5cGUtY2hlY2tpbmcgZW5naW5lIHdvdWxkIG5lZWQgdG8gZ2VuZXJhdGUgYW4gaW5saW5lIHR5cGUgY29uc3RydWN0b3IgZm9yIGFcbiAgICogZGlyZWN0aXZlIG9yIGNvbXBvbmVudCwgYnV0IHRoZSBjdXJyZW50IHR5cGUtY2hlY2tpbmcgZW52aXJvbm1lbnQgZG9lc24ndCBzdXBwb3J0IGl0LlxuICAgKi9cbiAgSU5MSU5FX1RZUEVfQ1RPUl9SRVFVSVJFRCA9IDg5MDEsXG5cbiAgLyoqXG4gICAqIEFuIGluamVjdGFibGUgYWxyZWFkeSBoYXMgYSBgybVwcm92YCBwcm9wZXJ0eS5cbiAgICovXG4gIElOSkVDVEFCTEVfRFVQTElDQVRFX1BST1YgPSA5MDAxLFxuXG4gIC8vIDEwWFhYIGVycm9yIGNvZGVzIGFyZSByZXNlcnZlZCBmb3IgZGlhZ25vc3RpY3Mgd2l0aCBjYXRlZ29yaWVzIG90aGVyIHRoYW5cbiAgLy8gYHRzLkRpYWdub3N0aWNDYXRlZ29yeS5FcnJvcmAuIFRoZXNlIGRpYWdub3N0aWNzIGFyZSBnZW5lcmF0ZWQgYnkgdGhlIGNvbXBpbGVyIHdoZW4gY29uZmlndXJlZFxuICAvLyB0byBkbyBzbyBieSBhIHRvb2wgc3VjaCBhcyB0aGUgTGFuZ3VhZ2UgU2VydmljZSwgb3IgYnkgdGhlIExhbmd1YWdlIFNlcnZpY2UgaXRzZWxmLlxuXG4gIC8qKlxuICAgKiBTdWdnZXN0IHVzZXJzIHRvIGVuYWJsZSBgc3RyaWN0VGVtcGxhdGVzYCB0byBtYWtlIHVzZSBvZiBmdWxsIGNhcGFiaWxpdGllc1xuICAgKiBwcm92aWRlZCBieSBBbmd1bGFyIGxhbmd1YWdlIHNlcnZpY2UuXG4gICAqL1xuICBTVUdHRVNUX1NUUklDVF9URU1QTEFURVMgPSAxMDAwMSxcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgYSBwYXJ0aWN1bGFyIHN0cnVjdHVyYWwgZGlyZWN0aXZlIHByb3ZpZGVzIGFkdmFuY2VkIHR5cGUgbmFycm93aW5nXG4gICAqIGZ1bmN0aW9uYWxpdHksIGJ1dCB0aGUgY3VycmVudCB0ZW1wbGF0ZSB0eXBlLWNoZWNraW5nIGNvbmZpZ3VyYXRpb24gZG9lcyBub3QgYWxsb3cgaXRzIHVzYWdlIGluXG4gICAqIHR5cGUgaW5mZXJlbmNlLlxuICAgKi9cbiAgU1VHR0VTVF9TVUJPUFRJTUFMX1RZUEVfSU5GRVJFTkNFID0gMTAwMDIsXG59XG5cbi8qKlxuICogQGludGVybmFsXG4gKiBCYXNlIFVSTCBmb3IgdGhlIGVycm9yIGRldGFpbHMgcGFnZS5cbiAqIEtlZXAgdGhpcyB2YWx1ZSBpbiBzeW5jIHdpdGggYSBzaW1pbGFyIGNvbnN0IGluXG4gKiBgcGFja2FnZXMvY29yZS9zcmMvcmVuZGVyMy9lcnJvcl9jb2RlLnRzYC5cbiAqL1xuZXhwb3J0IGNvbnN0IEVSUk9SX0RFVEFJTFNfUEFHRV9CQVNFX1VSTCA9ICdodHRwczovL2FuZ3VsYXIuaW8vZXJyb3JzJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqIENvbnRhaW5zIGEgc2V0IG9mIGVycm9yIG1lc3NhZ2VzIHRoYXQgaGF2ZSBkZXRhaWxlZCBndWlkZXMgYXQgYW5ndWxhci5pby5cbiAqIEZ1bGwgbGlzdCBvZiBhdmFpbGFibGUgZXJyb3IgZ3VpZGVzIGNhbiBiZSBmb3VuZCBhdCBodHRwczovL2FuZ3VsYXIuaW8vZXJyb3JzXG4gKi9cbmV4cG9ydCBjb25zdCBDT01QSUxFUl9FUlJPUlNfV0lUSF9HVUlERVMgPSBuZXcgU2V0KFtcbiAgRXJyb3JDb2RlLkRFQ09SQVRPUl9BUkdfTk9UX0xJVEVSQUwsXG4gIEVycm9yQ29kZS5JTVBPUlRfQ1lDTEVfREVURUNURUQsXG4gIEVycm9yQ29kZS5QQVJBTV9NSVNTSU5HX1RPS0VOLFxuICBFcnJvckNvZGUuU0NIRU1BX0lOVkFMSURfRUxFTUVOVCxcbiAgRXJyb3JDb2RlLlNDSEVNQV9JTlZBTElEX0FUVFJJQlVURSxcbiAgRXJyb3JDb2RlLk1JU1NJTkdfUkVGRVJFTkNFX1RBUkdFVCxcbiAgRXJyb3JDb2RlLkNPTVBPTkVOVF9JTlZBTElEX1NIQURPV19ET01fU0VMRUNUT1IsXG5dKTtcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG5nRXJyb3JDb2RlKGNvZGU6IEVycm9yQ29kZSk6IG51bWJlciB7XG4gIHJldHVybiBwYXJzZUludCgnLTk5JyArIGNvZGUpO1xufVxuIl19
|
|
226
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JfY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvZGlhZ25vc3RpY3Mvc3JjL2Vycm9yX2NvZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7O0lBRUg7O09BRUc7SUFDSCxJQUFZLFNBOE1YO0lBOU1ELFdBQVksU0FBUztRQUNuQixzRkFBZ0MsQ0FBQTtRQUNoQyw4RUFBNEIsQ0FBQTtRQUM1Qiw0RUFBMkIsQ0FBQTtRQUMzQiw0RkFBbUMsQ0FBQTtRQUNuQyw0RUFBMkIsQ0FBQTtRQUUzQjs7V0FFRztRQUNILDBFQUEwQixDQUFBO1FBRTFCLDRFQUEyQixDQUFBO1FBQzNCLHNFQUF3QixDQUFBO1FBRXhCLHdGQUFpQyxDQUFBO1FBQ2pDLHNFQUF3QixDQUFBO1FBQ3hCLDBFQUEwQixDQUFBO1FBQzFCLHdGQUFpQyxDQUFBO1FBRWpDLDhGQUE4RjtRQUM5Riw0RUFBMkIsQ0FBQTtRQUUzQjs7O1dBR0c7UUFDSCwwR0FBMEMsQ0FBQTtRQUUxQzs7O1dBR0c7UUFDSCxvSEFBK0MsQ0FBQTtRQUUvQzs7O1dBR0c7UUFDSCw0RkFBbUMsQ0FBQTtRQUVuQzs7O1dBR0c7UUFDSCw4R0FBNEMsQ0FBQTtRQUU1QywwRUFBMEIsQ0FBQTtRQUMxQiw0R0FBMkMsQ0FBQTtRQUMzQzs7O1dBR0c7UUFDSCw4RUFBNEIsQ0FBQTtRQUU1QiwwRkFBa0MsQ0FBQTtRQUNsQyxrSkFBOEQsQ0FBQTtRQUU5RDs7O1dBR0c7UUFDSCxvRkFBK0IsQ0FBQTtRQUUvQjs7V0FFRztRQUNILDRFQUEyQixDQUFBO1FBRTNCOztXQUVHO1FBQ0gsNEZBQW1DLENBQUE7UUFFbkM7O1dBRUc7UUFDSCxrRkFBOEIsQ0FBQTtRQUU5Qjs7V0FFRztRQUNILGtGQUE4QixDQUFBO1FBRTlCOzs7V0FHRztRQUNILHNGQUFnQyxDQUFBO1FBRWhDOzs7V0FHRztRQUNILGdJQUFxRCxDQUFBO1FBRXJEOzs7V0FHRztRQUNILG9HQUF1QyxDQUFBO1FBRXZDOztXQUVHO1FBQ0gsa0dBQXNDLENBQUE7UUFFdEM7OztXQUdHO1FBQ0gsc0dBQXdDLENBQUE7UUFFeEM7O1dBRUc7UUFDSCxnRkFBNkIsQ0FBQTtRQUU3Qjs7V0FFRztRQUNILG9GQUErQixDQUFBO1FBRS9COztXQUVHO1FBQ0gsb0ZBQStCLENBQUE7UUFFL0I7O1dBRUc7UUFDSCw0REFBbUIsQ0FBQTtRQUVuQjs7Ozs7Ozs7Ozs7V0FXRztRQUNILDBGQUFrQyxDQUFBO1FBRWxDOzs7Ozs7O1dBT0c7UUFDSCxnR0FBcUMsQ0FBQTtRQUVyQzs7O1dBR0c7UUFDSCw4RUFBNEIsQ0FBQTtRQUU1Qjs7Ozs7OztXQU9HO1FBQ0gsOEVBQTRCLENBQUE7UUFFNUI7OztXQUdHO1FBQ0gsMEVBQTBCLENBQUE7UUFFMUI7OztXQUdHO1FBQ0gsc0ZBQWdDLENBQUE7UUFFaEM7O1dBRUc7UUFDSCxzRkFBZ0MsQ0FBQTtRQUVoQyw0RUFBNEU7UUFDNUUsaUdBQWlHO1FBQ2pHLHNGQUFzRjtRQUV0Rjs7O1dBR0c7UUFDSCxxRkFBZ0MsQ0FBQTtRQUVoQzs7OztXQUlHO1FBQ0gsdUdBQXlDLENBQUE7SUFDM0MsQ0FBQyxFQTlNVyxTQUFTLEdBQVQsaUJBQVMsS0FBVCxpQkFBUyxRQThNcEI7SUFFRDs7Ozs7T0FLRztJQUNVLFFBQUEsMkJBQTJCLEdBQUcsMkJBQTJCLENBQUM7SUFFdkU7Ozs7T0FJRztJQUNVLFFBQUEsMkJBQTJCLEdBQUcsSUFBSSxHQUFHLENBQUM7UUFDakQsU0FBUyxDQUFDLHlCQUF5QjtRQUNuQyxTQUFTLENBQUMscUJBQXFCO1FBQy9CLFNBQVMsQ0FBQyxtQkFBbUI7UUFDN0IsU0FBUyxDQUFDLHNCQUFzQjtRQUNoQyxTQUFTLENBQUMsd0JBQXdCO1FBQ2xDLFNBQVMsQ0FBQyx3QkFBd0I7UUFDbEMsU0FBUyxDQUFDLHFDQUFxQztLQUNoRCxDQUFDLENBQUM7SUFFSDs7T0FFRztJQUNILFNBQWdCLFdBQVcsQ0FBQyxJQUFlO1FBQ3pDLE9BQU8sUUFBUSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRkQsa0NBRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuLyoqXG4gKiBAcHVibGljQXBpXG4gKi9cbmV4cG9ydCBlbnVtIEVycm9yQ29kZSB7XG4gIERFQ09SQVRPUl9BUkdfTk9UX0xJVEVSQUwgPSAxMDAxLFxuICBERUNPUkFUT1JfQVJJVFlfV1JPTkcgPSAxMDAyLFxuICBERUNPUkFUT1JfTk9UX0NBTExFRCA9IDEwMDMsXG4gIERFQ09SQVRPUl9PTl9BTk9OWU1PVVNfQ0xBU1MgPSAxMDA0LFxuICBERUNPUkFUT1JfVU5FWFBFQ1RFRCA9IDEwMDUsXG5cbiAgLyoqXG4gICAqIFRoaXMgZXJyb3IgY29kZSBpbmRpY2F0ZXMgdGhhdCB0aGVyZSBhcmUgaW5jb21wYXRpYmxlIGRlY29yYXRvcnMgb24gYSB0eXBlIG9yIGEgY2xhc3MgZmllbGQuXG4gICAqL1xuICBERUNPUkFUT1JfQ09MTElTSU9OID0gMTAwNixcblxuICBWQUxVRV9IQVNfV1JPTkdfVFlQRSA9IDEwMTAsXG4gIFZBTFVFX05PVF9MSVRFUkFMID0gMTAxMSxcblxuICBDT01QT05FTlRfTUlTU0lOR19URU1QTEFURSA9IDIwMDEsXG4gIFBJUEVfTUlTU0lOR19OQU1FID0gMjAwMixcbiAgUEFSQU1fTUlTU0lOR19UT0tFTiA9IDIwMDMsXG4gIERJUkVDVElWRV9NSVNTSU5HX1NFTEVDVE9SID0gMjAwNCxcblxuICAvKiogUmFpc2VkIHdoZW4gYW4gdW5kZWNvcmF0ZWQgY2xhc3MgaXMgcGFzc2VkIGluIGFzIGEgcHJvdmlkZXIgdG8gYSBtb2R1bGUgb3IgYSBkaXJlY3RpdmUuICovXG4gIFVOREVDT1JBVEVEX1BST1ZJREVSID0gMjAwNSxcblxuICAvKipcbiAgICogUmFpc2VkIHdoZW4gYSBEaXJlY3RpdmUgaW5oZXJpdHMgaXRzIGNvbnN0cnVjdG9yIGZyb20gYSBiYXNlIGNsYXNzIHdpdGhvdXQgYW4gQW5ndWxhclxuICAgKiBkZWNvcmF0b3IuXG4gICAqL1xuICBESVJFQ1RJVkVfSU5IRVJJVFNfVU5ERUNPUkFURURfQ1RPUiA9IDIwMDYsXG5cbiAgLyoqXG4gICAqIFJhaXNlZCB3aGVuIGFuIHVuZGVjb3JhdGVkIGNsYXNzIHRoYXQgaXMgdXNpbmcgQW5ndWxhciBmZWF0dXJlc1xuICAgKiBoYXMgYmVlbiBkaXNjb3ZlcmVkLlxuICAgKi9cbiAgVU5ERUNPUkFURURfQ0xBU1NfVVNJTkdfQU5HVUxBUl9GRUFUVVJFUyA9IDIwMDcsXG5cbiAgLyoqXG4gICAqIFJhaXNlZCB3aGVuIGFuIGNvbXBvbmVudCBjYW5ub3QgcmVzb2x2ZSBhbiBleHRlcm5hbCByZXNvdXJjZSwgc3VjaCBhcyBhIHRlbXBsYXRlIG9yIGEgc3R5bGVcbiAgICogc2hlZXQuXG4gICAqL1xuICBDT01QT05FTlRfUkVTT1VSQ0VfTk9UX0ZPVU5EID0gMjAwOCxcblxuICAvKipcbiAgICogUmFpc2VkIHdoZW4gYSBjb21wb25lbnQgdXNlcyBgU2hhZG93RG9tYCB2aWV3IGVuY2Fwc3VsYXRpb24sIGJ1dCBpdHMgc2VsZWN0b3JcbiAgICogZG9lcyBub3QgbWF0Y2ggdGhlIHNoYWRvdyBET00gdGFnIG5hbWUgcmVxdWlyZW1lbnRzLlxuICAgKi9cbiAgQ09NUE9ORU5UX0lOVkFMSURfU0hBRE9XX0RPTV9TRUxFQ1RPUiA9IDIwMDksXG5cbiAgU1lNQk9MX05PVF9FWFBPUlRFRCA9IDMwMDEsXG4gIFNZTUJPTF9FWFBPUlRFRF9VTkRFUl9ESUZGRVJFTlRfTkFNRSA9IDMwMDIsXG4gIC8qKlxuICAgKiBSYWlzZWQgd2hlbiBhIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIGRpcmVjdGl2ZXMgYW5kL29yIHBpcGVzIHdvdWxkIGNhdXNlIGEgY3ljbGljIGltcG9ydCB0byBiZVxuICAgKiBjcmVhdGVkIHRoYXQgY2Fubm90IGJlIGhhbmRsZWQsIHN1Y2ggYXMgaW4gcGFydGlhbCBjb21waWxhdGlvbiBtb2RlLlxuICAgKi9cbiAgSU1QT1JUX0NZQ0xFX0RFVEVDVEVEID0gMzAwMyxcblxuICBDT05GSUdfRkxBVF9NT0RVTEVfTk9fSU5ERVggPSA0MDAxLFxuICBDT05GSUdfU1RSSUNUX1RFTVBMQVRFU19JTVBMSUVTX0ZVTExfVEVNUExBVEVfVFlQRUNIRUNLID0gNDAwMixcblxuICAvKipcbiAgICogUmFpc2VkIHdoZW4gYSBob3N0IGV4cHJlc3Npb24gaGFzIGEgcGFyc2UgZXJyb3IsIHN1Y2ggYXMgYSBob3N0IGxpc3RlbmVyIG9yIGhvc3QgYmluZGluZ1xuICAgKiBleHByZXNzaW9uIGNvbnRhaW5pbmcgYSBwaXBlLlxuICAgKi9cbiAgSE9TVF9CSU5ESU5HX1BBUlNFX0VSUk9SID0gNTAwMSxcblxuICAvKipcbiAgICogUmFpc2VkIHdoZW4gdGhlIGNvbXBpbGVyIGNhbm5vdCBwYXJzZSBhIGNvbXBvbmVudCdzIHRlbXBsYXRlLlxuICAgKi9cbiAgVEVNUExBVEVfUEFSU0VfRVJST1IgPSA1MDAyLFxuXG4gIC8qKlxuICAgKiBSYWlzZWQgd2hlbiBhbiBOZ01vZHVsZSBjb250YWlucyBhbiBpbnZhbGlkIHJlZmVyZW5jZSBpbiBgZGVjbGFyYXRpb25zYC5cbiAgICovXG4gIE5HTU9EVUxFX0lOVkFMSURfREVDTEFSQVRJT04gPSA2MDAxLFxuXG4gIC8qKlxuICAgKiBSYWlzZWQgd2hlbiBhbiBOZ01vZHVsZSBjb250YWlucyBhbiBpbnZhbGlkIHR5cGUgaW4gYGltcG9ydHNgLlxuICAgKi9cbiAgTkdNT0RVTEVfSU5WQUxJRF9JTVBPUlQgPSA2MDAyLFxuXG4gIC8qKlxuICAgKiBSYWlzZWQgd2hlbiBhbiBOZ01vZHVsZSBjb250YWlucyBhbiBpbnZhbGlkIHR5cGUgaW4gYGV4cG9ydHNgLlxuICAgKi9cbiAgTkdNT0RVTEVfSU5WQUxJRF9FWFBPUlQgPSA2MDAzLFxuXG4gIC8qKlxuICAgKiBSYWlzZWQgd2hlbiBhbiBOZ01vZHVsZSBjb250YWlucyBhIHR5cGUgaW4gYGV4cG9ydHNgIHdoaWNoIGlzIG5laXRoZXIgaW4gYGRlY2xhcmF0aW9uc2Agbm9yXG4gICAqIG90aGVyd2lzZSBpbXBvcnRlZC5cbiAgICovXG4gIE5HTU9EVUxFX0lOVkFMSURfUkVFWFBPUlQgPSA2MDA0LFxuXG4gIC8qKlxuICAgKiBSYWlzZWQgd2hlbiBhIGBNb2R1bGVXaXRoUHJvdmlkZXJzYCB3aXRoIGEgbWlzc2luZ1xuICAgKiBnZW5lcmljIHR5cGUgYXJndW1lbnQgaXMgcGFzc2VkIGludG8gYW4gYE5nTW9kdWxlYC5cbiAgICovXG4gIE5HTU9EVUxFX01PRFVMRV9XSVRIX1BST1ZJREVSU19NSVNTSU5HX0dFTkVSSUMgPSA2MDA1LFxuXG4gIC8qKlxuICAgKiBSYWlzZWQgd2hlbiBhbiBOZ01vZHVsZSBleHBvcnRzIG11bHRpcGxlIGRpcmVjdGl2ZXMvcGlwZXMgb2YgdGhlIHNhbWUgbmFtZSBhbmQgdGhlIGNvbXBpbGVyXG4gICAqIGF0dGVtcHRzIHRvIGdlbmVyYXRlIHByaXZhdGUgcmUtZXhwb3J0cyB3aXRoaW4gdGhlIE5nTW9kdWxlIGZpbGUuXG4gICAqL1xuICBOR01PRFVMRV9SRUVYUE9SVF9OQU1FX0NPTExJU0lPTiA9IDYwMDYsXG5cbiAgLyoqXG4gICAqIFJhaXNlZCB3aGVuIGEgZGlyZWN0aXZlL3BpcGUgaXMgcGFydCBvZiB0aGUgZGVjbGFyYXRpb25zIG9mIHR3byBvciBtb3JlIE5nTW9kdWxlcy5cbiAgICovXG4gIE5HTU9EVUxFX0RFQ0xBUkFUSU9OX05PVF9VTklRVUUgPSA2MDA3LFxuXG4gIC8qKlxuICAgKiBOb3QgYWN0dWFsbHkgcmFpc2VkIGJ5IHRoZSBjb21waWxlciwgYnV0IHJlc2VydmVkIGZvciBkb2N1bWVudGF0aW9uIG9mIGEgVmlldyBFbmdpbmUgZXJyb3Igd2hlblxuICAgKiBhIFZpZXcgRW5naW5lIGJ1aWxkIGRlcGVuZHMgb24gYW4gSXZ5LWNvbXBpbGVkIE5nTW9kdWxlLlxuICAgKi9cbiAgTkdNT0RVTEVfVkVfREVQRU5ERU5DWV9PTl9JVllfTElCID0gNjk5OSxcblxuICAvKipcbiAgICogQW4gZWxlbWVudCBuYW1lIGZhaWxlZCB2YWxpZGF0aW9uIGFnYWluc3QgdGhlIERPTSBzY2hlbWEuXG4gICAqL1xuICBTQ0hFTUFfSU5WQUxJRF9FTEVNRU5UID0gODAwMSxcblxuICAvKipcbiAgICogQW4gZWxlbWVudCdzIGF0dHJpYnV0ZSBuYW1lIGZhaWxlZCB2YWxpZGF0aW9uIGFnYWluc3QgdGhlIERPTSBzY2hlbWEuXG4gICAqL1xuICBTQ0hFTUFfSU5WQUxJRF9BVFRSSUJVVEUgPSA4MDAyLFxuXG4gIC8qKlxuICAgKiBObyBtYXRjaGluZyBkaXJlY3RpdmUgd2FzIGZvdW5kIGZvciBhIGAjcmVmPVwidGFyZ2V0XCJgIGV4cHJlc3Npb24uXG4gICAqL1xuICBNSVNTSU5HX1JFRkVSRU5DRV9UQVJHRVQgPSA4MDAzLFxuXG4gIC8qKlxuICAgKiBObyBtYXRjaGluZyBwaXBlIHdhcyBmb3VuZCBmb3IgYVxuICAgKi9cbiAgTUlTU0lOR19QSVBFID0gODAwNCxcblxuICAvKipcbiAgICogVGhlIGxlZnQtaGFuZCBzaWRlIG9mIGFuIGFzc2lnbm1lbnQgZXhwcmVzc2lvbiB3YXMgYSB0ZW1wbGF0ZSB2YXJpYWJsZS4gRWZmZWN0aXZlbHksIHRoZVxuICAgKiB0ZW1wbGF0ZSBsb29rZWQgbGlrZTpcbiAgICpcbiAgICogYGBgXG4gICAqIDxuZy10ZW1wbGF0ZSBsZXQtc29tZXRoaW5nPlxuICAgKiAgIDxidXR0b24gKGNsaWNrKT1cInNvbWV0aGluZyA9IC4uLlwiPi4uLjwvYnV0dG9uPlxuICAgKiA8L25nLXRlbXBsYXRlPlxuICAgKiBgYGBcbiAgICpcbiAgICogVGVtcGxhdGUgdmFyaWFibGVzIGFyZSByZWFkLW9ubHkuXG4gICAqL1xuICBXUklURV9UT19SRUFEX09OTFlfVkFSSUFCTEUgPSA4MDA1LFxuXG4gIC8qKlxuICAgKiBBIHRlbXBsYXRlIHZhcmlhYmxlIHdhcyBkZWNsYXJlZCB0d2ljZS4gRm9yIGV4YW1wbGU6XG4gICAqXG4gICAqIGBgYGh0bWxcbiAgICogPGRpdiAqbmdGb3I9XCJsZXQgaSBvZiBpdGVtczsgbGV0IGkgPSBpbmRleFwiPlxuICAgKiA8L2Rpdj5cbiAgICogYGBgXG4gICAqL1xuICBEVVBMSUNBVEVfVkFSSUFCTEVfREVDTEFSQVRJT04gPSA4MDA2LFxuXG4gIC8qKlxuICAgKiBBIHRlbXBsYXRlIGhhcyBhIHR3byB3YXkgYmluZGluZyAodHdvIGJpbmRpbmdzIGNyZWF0ZWQgYnkgYSBzaW5nbGUgc3ludGFjdGlhbCBlbGVtZW50KVxuICAgKiBpbiB3aGljaCB0aGUgaW5wdXQgYW5kIG91dHB1dCBhcmUgZ29pbmcgdG8gZGlmZmVyZW50IHBsYWNlcy5cbiAgICovXG4gIFNQTElUX1RXT19XQVlfQklORElORyA9IDgwMDcsXG5cbiAgLyoqXG4gICAqIEEgdHdvIHdheSBiaW5kaW5nIGluIGEgdGVtcGxhdGUgaGFzIGFuIGluY29ycmVjdCBzeW50YXgsXG4gICAqIHBhcmVudGhlc2VzIG91dHNpZGUgYnJhY2tldHMuIEZvciBleGFtcGxlOlxuICAgKlxuICAgKiBgYGBcbiAgICogPGRpdiAoW2Zvb10pPVwiYmFyXCIgLz5cbiAgICogYGBgXG4gICAqL1xuICBJTlZBTElEX0JBTkFOQV9JTl9CT1ggPSA4MTAxLFxuXG4gIC8qKlxuICAgKiBUaGUgdGVtcGxhdGUgdHlwZS1jaGVja2luZyBlbmdpbmUgd291bGQgbmVlZCB0byBnZW5lcmF0ZSBhbiBpbmxpbmUgdHlwZSBjaGVjayBibG9jayBmb3IgYVxuICAgKiBjb21wb25lbnQsIGJ1dCB0aGUgY3VycmVudCB0eXBlLWNoZWNraW5nIGVudmlyb25tZW50IGRvZXNuJ3Qgc3VwcG9ydCBpdC5cbiAgICovXG4gIElOTElORV9UQ0JfUkVRVUlSRUQgPSA4OTAwLFxuXG4gIC8qKlxuICAgKiBUaGUgdGVtcGxhdGUgdHlwZS1jaGVja2luZyBlbmdpbmUgd291bGQgbmVlZCB0byBnZW5lcmF0ZSBhbiBpbmxpbmUgdHlwZSBjb25zdHJ1Y3RvciBmb3IgYVxuICAgKiBkaXJlY3RpdmUgb3IgY29tcG9uZW50LCBidXQgdGhlIGN1cnJlbnQgdHlwZS1jaGVja2luZyBlbnZpcm9ubWVudCBkb2Vzbid0IHN1cHBvcnQgaXQuXG4gICAqL1xuICBJTkxJTkVfVFlQRV9DVE9SX1JFUVVJUkVEID0gODkwMSxcblxuICAvKipcbiAgICogQW4gaW5qZWN0YWJsZSBhbHJlYWR5IGhhcyBhIGDJtXByb3ZgIHByb3BlcnR5LlxuICAgKi9cbiAgSU5KRUNUQUJMRV9EVVBMSUNBVEVfUFJPViA9IDkwMDEsXG5cbiAgLy8gMTBYWFggZXJyb3IgY29kZXMgYXJlIHJlc2VydmVkIGZvciBkaWFnbm9zdGljcyB3aXRoIGNhdGVnb3JpZXMgb3RoZXIgdGhhblxuICAvLyBgdHMuRGlhZ25vc3RpY0NhdGVnb3J5LkVycm9yYC4gVGhlc2UgZGlhZ25vc3RpY3MgYXJlIGdlbmVyYXRlZCBieSB0aGUgY29tcGlsZXIgd2hlbiBjb25maWd1cmVkXG4gIC8vIHRvIGRvIHNvIGJ5IGEgdG9vbCBzdWNoIGFzIHRoZSBMYW5ndWFnZSBTZXJ2aWNlLCBvciBieSB0aGUgTGFuZ3VhZ2UgU2VydmljZSBpdHNlbGYuXG5cbiAgLyoqXG4gICAqIFN1Z2dlc3QgdXNlcnMgdG8gZW5hYmxlIGBzdHJpY3RUZW1wbGF0ZXNgIHRvIG1ha2UgdXNlIG9mIGZ1bGwgY2FwYWJpbGl0aWVzXG4gICAqIHByb3ZpZGVkIGJ5IEFuZ3VsYXIgbGFuZ3VhZ2Ugc2VydmljZS5cbiAgICovXG4gIFNVR0dFU1RfU1RSSUNUX1RFTVBMQVRFUyA9IDEwMDAxLFxuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCBhIHBhcnRpY3VsYXIgc3RydWN0dXJhbCBkaXJlY3RpdmUgcHJvdmlkZXMgYWR2YW5jZWQgdHlwZSBuYXJyb3dpbmdcbiAgICogZnVuY3Rpb25hbGl0eSwgYnV0IHRoZSBjdXJyZW50IHRlbXBsYXRlIHR5cGUtY2hlY2tpbmcgY29uZmlndXJhdGlvbiBkb2VzIG5vdCBhbGxvdyBpdHMgdXNhZ2UgaW5cbiAgICogdHlwZSBpbmZlcmVuY2UuXG4gICAqL1xuICBTVUdHRVNUX1NVQk9QVElNQUxfVFlQRV9JTkZFUkVOQ0UgPSAxMDAwMixcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqIEJhc2UgVVJMIGZvciB0aGUgZXJyb3IgZGV0YWlscyBwYWdlLlxuICogS2VlcCB0aGlzIHZhbHVlIGluIHN5bmMgd2l0aCBhIHNpbWlsYXIgY29uc3QgaW5cbiAqIGBwYWNrYWdlcy9jb3JlL3NyYy9yZW5kZXIzL2Vycm9yX2NvZGUudHNgLlxuICovXG5leHBvcnQgY29uc3QgRVJST1JfREVUQUlMU19QQUdFX0JBU0VfVVJMID0gJ2h0dHBzOi8vYW5ndWxhci5pby9lcnJvcnMnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICogQ29udGFpbnMgYSBzZXQgb2YgZXJyb3IgbWVzc2FnZXMgdGhhdCBoYXZlIGRldGFpbGVkIGd1aWRlcyBhdCBhbmd1bGFyLmlvLlxuICogRnVsbCBsaXN0IG9mIGF2YWlsYWJsZSBlcnJvciBndWlkZXMgY2FuIGJlIGZvdW5kIGF0IGh0dHBzOi8vYW5ndWxhci5pby9lcnJvcnNcbiAqL1xuZXhwb3J0IGNvbnN0IENPTVBJTEVSX0VSUk9SU19XSVRIX0dVSURFUyA9IG5ldyBTZXQoW1xuICBFcnJvckNvZGUuREVDT1JBVE9SX0FSR19OT1RfTElURVJBTCxcbiAgRXJyb3JDb2RlLklNUE9SVF9DWUNMRV9ERVRFQ1RFRCxcbiAgRXJyb3JDb2RlLlBBUkFNX01JU1NJTkdfVE9LRU4sXG4gIEVycm9yQ29kZS5TQ0hFTUFfSU5WQUxJRF9FTEVNRU5ULFxuICBFcnJvckNvZGUuU0NIRU1BX0lOVkFMSURfQVRUUklCVVRFLFxuICBFcnJvckNvZGUuTUlTU0lOR19SRUZFUkVOQ0VfVEFSR0VULFxuICBFcnJvckNvZGUuQ09NUE9ORU5UX0lOVkFMSURfU0hBRE9XX0RPTV9TRUxFQ1RPUixcbl0pO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgZnVuY3Rpb24gbmdFcnJvckNvZGUoY29kZTogRXJyb3JDb2RlKTogbnVtYmVyIHtcbiAgcmV0dXJuIHBhcnNlSW50KCctOTknICsgY29kZSk7XG59XG4iXX0=
|
|
@@ -41,7 +41,6 @@
|
|
|
41
41
|
*/
|
|
42
42
|
DtsMetadataReader.prototype.getNgModuleMetadata = function (ref) {
|
|
43
43
|
var clazz = ref.node;
|
|
44
|
-
var resolutionContext = clazz.getSourceFile().fileName;
|
|
45
44
|
// This operation is explicitly not memoized, as it depends on `ref.ownedByModuleGuess`.
|
|
46
45
|
// TODO(alxhub): investigate caching of .d.ts module metadata.
|
|
47
46
|
var ngModuleDef = this.reflector.getMembersOfClass(clazz).find(function (member) { return member.name === 'ɵmod' && member.isStatic; });
|
|
@@ -59,9 +58,9 @@
|
|
|
59
58
|
var _a = tslib_1.__read(ngModuleDef.type.typeArguments, 4), _ = _a[0], declarationMetadata = _a[1], importMetadata = _a[2], exportMetadata = _a[3];
|
|
60
59
|
return {
|
|
61
60
|
ref: ref,
|
|
62
|
-
declarations: util_1.extractReferencesFromType(this.checker, declarationMetadata, ref.
|
|
63
|
-
exports: util_1.extractReferencesFromType(this.checker, exportMetadata, ref.
|
|
64
|
-
imports: util_1.extractReferencesFromType(this.checker, importMetadata, ref.
|
|
61
|
+
declarations: util_1.extractReferencesFromType(this.checker, declarationMetadata, ref.bestGuessOwningModule),
|
|
62
|
+
exports: util_1.extractReferencesFromType(this.checker, exportMetadata, ref.bestGuessOwningModule),
|
|
63
|
+
imports: util_1.extractReferencesFromType(this.checker, importMetadata, ref.bestGuessOwningModule),
|
|
65
64
|
schemas: [],
|
|
66
65
|
rawDeclarations: null,
|
|
67
66
|
};
|
|
@@ -166,4 +165,4 @@
|
|
|
166
165
|
return null;
|
|
167
166
|
}
|
|
168
167
|
});
|
|
169
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy9uZ3RzYy9tZXRhZGF0YS9zcmMvZHRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7Ozs7SUFFSCwrQkFBaUM7SUFFakMsbUVBQXdDO0lBQ3hDLHlFQUFtSDtJQUVuSCx3RUFBc0Y7SUFDdEYsa0dBQXdEO0lBQ3hELDBFQUF3STtJQUV4STs7O09BR0c7SUFDSDtRQUNFLDJCQUFvQixPQUF1QixFQUFVLFNBQXlCO1lBQTFELFlBQU8sR0FBUCxPQUFPLENBQWdCO1lBQVUsY0FBUyxHQUFULFNBQVMsQ0FBZ0I7UUFBRyxDQUFDO1FBRWxGOzs7OztXQUtHO1FBQ0gsK0NBQW1CLEdBQW5CLFVBQW9CLEdBQWdDO1lBQ2xELElBQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUM7WUFDdkIsSUFBTSxpQkFBaUIsR0FBRyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDO1lBQ3pELHdGQUF3RjtZQUN4Riw4REFBOEQ7WUFDOUQsSUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQzVELFVBQUEsTUFBTSxJQUFJLE9BQUEsTUFBTSxDQUFDLElBQUksS0FBSyxNQUFNLElBQUksTUFBTSxDQUFDLFFBQVEsRUFBekMsQ0FBeUMsQ0FBQyxDQUFDO1lBQ3pELElBQUksV0FBVyxLQUFLLFNBQVMsRUFBRTtnQkFDN0IsT0FBTyxJQUFJLENBQUM7YUFDYjtpQkFBTTtZQUNILDhEQUE4RDtZQUM5RCxXQUFXLENBQUMsSUFBSSxLQUFLLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO2dCQUN0RSxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsS0FBSyxTQUFTO2dCQUM1QyxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO2dCQUMvQyxPQUFPLElBQUksQ0FBQzthQUNiO1lBRUQsaURBQWlEO1lBQzNDLElBQUEsS0FBQSxlQUEyRCxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBQSxFQUF4RixDQUFDLFFBQUEsRUFBRSxtQkFBbUIsUUFBQSxFQUFFLGNBQWMsUUFBQSxFQUFFLGNBQWMsUUFBa0MsQ0FBQztZQUNoRyxPQUFPO2dCQUNMLEdBQUcsS0FBQTtnQkFDSCxZQUFZLEVBQUUsZ0NBQXlCLENBQ25DLElBQUksQ0FBQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsR0FBRyxDQUFDLGtCQUFrQixFQUFFLGlCQUFpQixDQUFDO2dCQUNqRixPQUFPLEVBQUUsZ0NBQXlCLENBQzlCLElBQUksQ0FBQyxPQUFPLEVBQUUsY0FBYyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxpQkFBaUIsQ0FBQztnQkFDNUUsT0FBTyxFQUFFLGdDQUF5QixDQUM5QixJQUFJLENBQUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxHQUFHLENBQUMsa0JBQWtCLEVBQUUsaUJBQWlCLENBQUM7Z0JBQzVFLE9BQU8sRUFBRSxFQUFFO2dCQUNYLGVBQWUsRUFBRSxJQUFJO2FBQ3RCLENBQUM7UUFDSixDQUFDO1FBRUQ7O1dBRUc7UUFDSCxnREFBb0IsR0FBcEIsVUFBcUIsR0FBZ0M7WUFDbkQsSUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQztZQUN2QixJQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FDcEQsVUFBQSxLQUFLLElBQUksT0FBQSxLQUFLLENBQUMsUUFBUSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxNQUFNLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxNQUFNLENBQUMsRUFBbEUsQ0FBa0UsQ0FBQyxDQUFDO1lBQ2pGLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtnQkFDckIsZ0NBQWdDO2dCQUNoQyxPQUFPLElBQUksQ0FBQzthQUNiO2lCQUFNLElBQ0gsR0FBRyxDQUFDLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztnQkFDdEQsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLEtBQUssU0FBUyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQzdFLHlDQUF5QztnQkFDekMsT0FBTyxJQUFJLENBQUM7YUFDYjtZQUVELElBQU0sV0FBVyxHQUFHLEdBQUcsQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFDO1lBRXhDLElBQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsd0JBQXdCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFbEUsaURBQWlEO1lBQ2pELDRDQUE0QztZQUM1Qyw4QkFBOEI7WUFDOUIsSUFBTSxZQUFZLEdBQUcsQ0FBQyxXQUFXLElBQUksVUFBVSxLQUFLLElBQUksSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQUEsS0FBSztnQkFDL0UsT0FBTyxLQUFLLENBQUMsa0JBQWtCLENBQUMsSUFBSSxxQkFBb0M7b0JBQ3BFLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLEtBQUssZUFBZTtvQkFDdkQsS0FBSyxDQUFDLGtCQUFrQixDQUFDLFlBQVksS0FBSyxhQUFhLENBQUM7WUFDOUQsQ0FBQyxDQUFDLENBQUM7WUFFSCxJQUFNLE1BQU0sR0FDUix1Q0FBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyx3QkFBaUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDeEYsSUFBTSxPQUFPLEdBQ1QsdUNBQW9CLENBQUMsZ0JBQWdCLENBQUMsd0JBQWlCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hGLDJDQUNFLElBQUksRUFBRSxjQUFRLENBQUMsU0FBUyxFQUN4QixHQUFHLEtBQUEsRUFDSCxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQ3JCLFdBQVcsYUFBQSxFQUNYLFFBQVEsRUFBRSxxQkFBYyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ25ELFFBQVEsRUFBRSwwQkFBbUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUN4RCxNQUFNLFFBQUEsRUFDTixPQUFPLFNBQUEsRUFDUCxPQUFPLEVBQUUsMEJBQW1CLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFDcEQsb0NBQTZCLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQy9ELFNBQVMsRUFBRSxhQUFhLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUM3RCxVQUFVLEVBQUUsS0FBSyxFQUNqQixZQUFZLGNBQUEsSUFDWjtRQUNKLENBQUM7UUFFRDs7V0FFRztRQUNILDJDQUFlLEdBQWYsVUFBZ0IsR0FBZ0M7WUFDOUMsSUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUN2RCxVQUFBLEtBQUssSUFBSSxPQUFBLEtBQUssQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQXhDLENBQXdDLENBQUMsQ0FBQztZQUN2RCxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7Z0JBQ3JCLGdDQUFnQztnQkFDaEMsT0FBTyxJQUFJLENBQUM7YUFDYjtpQkFBTSxJQUNILEdBQUcsQ0FBQyxJQUFJLEtBQUssSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7Z0JBQ3RELEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxLQUFLLFNBQVMsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUM3RSx5Q0FBeUM7Z0JBQ3pDLE9BQU8sSUFBSSxDQUFDO2FBQ2I7WUFDRCxJQUFNLElBQUksR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2QyxJQUFJLENBQUMsRUFBRSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ3BFLHdDQUF3QztnQkFDeEMsT0FBTyxJQUFJLENBQUM7YUFDYjtZQUNELElBQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO1lBQy9CLE9BQU87Z0JBQ0wsSUFBSSxFQUFFLGNBQVEsQ0FBQyxJQUFJO2dCQUNuQixHQUFHLEtBQUE7Z0JBQ0gsSUFBSSxNQUFBO2dCQUNKLFFBQVEsRUFBRSxJQUFJO2FBQ2YsQ0FBQztRQUNKLENBQUM7UUFDSCx3QkFBQztJQUFELENBQUMsQUF4SEQsSUF3SEM7SUF4SFksOENBQWlCO0lBMEg5QixTQUFTLGFBQWEsQ0FBQyxLQUF1QixFQUFFLE9BQXVCLEVBQUUsU0FBeUI7O1FBRWhHLElBQUksQ0FBQyxvQ0FBdUIsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNuQywrRkFBK0Y7WUFDL0YsZ0JBQWdCO1lBQ2hCLE9BQU8sU0FBUyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7U0FDekQ7UUFFRCxJQUFJLEtBQUssQ0FBQyxlQUFlLEtBQUssU0FBUyxFQUFFOztnQkFDdkMsS0FBcUIsSUFBQSxLQUFBLGlCQUFBLEtBQUssQ0FBQyxlQUFlLENBQUEsZ0JBQUEsNEJBQUU7b0JBQXZDLElBQU0sTUFBTSxXQUFBO29CQUNmLElBQUksTUFBTSxDQUFDLEtBQUssS0FBSyxFQUFFLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRTt3QkFDakQsSUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7d0JBQzVDLElBQUksTUFBTSxHQUFHLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQzt3QkFDbkQsSUFBSSxNQUFNLEtBQUssU0FBUyxFQUFFOzRCQUN4QixPQUFPLFNBQVMsQ0FBQzt5QkFDbEI7NkJBQU0sSUFBSSxNQUFNLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFOzRCQUM5QyxNQUFNLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO3lCQUMzQzt3QkFDRCxJQUFJLE1BQU0sQ0FBQyxnQkFBZ0IsS0FBSyxTQUFTOzRCQUNyQyxvQ0FBdUIsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsRUFBRTs0QkFDcEQsT0FBTyxJQUFJLG1CQUFTLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7eUJBQy9DOzZCQUFNOzRCQUNMLE9BQU8sU0FBUyxDQUFDO3lCQUNsQjtxQkFDRjtpQkFDRjs7Ozs7Ozs7O1NBQ0Y7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbmltcG9ydCB7UmVmZXJlbmNlfSBmcm9tICcuLi8uLi9pbXBvcnRzJztcbmltcG9ydCB7Q2xhc3NEZWNsYXJhdGlvbiwgaXNOYW1lZENsYXNzRGVjbGFyYXRpb24sIFJlZmxlY3Rpb25Ib3N0LCBUeXBlVmFsdWVSZWZlcmVuY2VLaW5kfSBmcm9tICcuLi8uLi9yZWZsZWN0aW9uJztcblxuaW1wb3J0IHtEaXJlY3RpdmVNZXRhLCBNZXRhZGF0YVJlYWRlciwgTWV0YVR5cGUsIE5nTW9kdWxlTWV0YSwgUGlwZU1ldGF9IGZyb20gJy4vYXBpJztcbmltcG9ydCB7Q2xhc3NQcm9wZXJ0eU1hcHBpbmd9IGZyb20gJy4vcHJvcGVydHlfbWFwcGluZyc7XG5pbXBvcnQge2V4dHJhY3REaXJlY3RpdmVUeXBlQ2hlY2tNZXRhLCBleHRyYWN0UmVmZXJlbmNlc0Zyb21UeXBlLCByZWFkU3RyaW5nQXJyYXlUeXBlLCByZWFkU3RyaW5nTWFwVHlwZSwgcmVhZFN0cmluZ1R5cGV9IGZyb20gJy4vdXRpbCc7XG5cbi8qKlxuICogQSBgTWV0YWRhdGFSZWFkZXJgIHRoYXQgY2FuIHJlYWQgbWV0YWRhdGEgZnJvbSBgLmQudHNgIGZpbGVzLCB3aGljaCBoYXZlIHN0YXRpYyBJdnkgcHJvcGVydGllc1xuICogZnJvbSBhbiB1cHN0cmVhbSBjb21waWxhdGlvbiBhbHJlYWR5LlxuICovXG5leHBvcnQgY2xhc3MgRHRzTWV0YWRhdGFSZWFkZXIgaW1wbGVtZW50cyBNZXRhZGF0YVJlYWRlciB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hlY2tlcjogdHMuVHlwZUNoZWNrZXIsIHByaXZhdGUgcmVmbGVjdG9yOiBSZWZsZWN0aW9uSG9zdCkge31cblxuICAvKipcbiAgICogUmVhZCB0aGUgbWV0YWRhdGEgZnJvbSBhIGNsYXNzIHRoYXQgaGFzIGFscmVhZHkgYmVlbiBjb21waWxlZCBzb21laG93IChlaXRoZXIgaXQncyBpbiBhIC5kLnRzXG4gICAqIGZpbGUsIG9yIGluIGEgLnRzIGZpbGUgd2l0aCBhIGhhbmR3cml0dGVuIGRlZmluaXRpb24pLlxuICAgKlxuICAgKiBAcGFyYW0gcmVmIGBSZWZlcmVuY2VgIHRvIHRoZSBjbGFzcyBvZiBpbnRlcmVzdCwgd2l0aCB0aGUgY29udGV4dCBvZiBob3cgaXQgd2FzIG9idGFpbmVkLlxuICAgKi9cbiAgZ2V0TmdNb2R1bGVNZXRhZGF0YShyZWY6IFJlZmVyZW5jZTxDbGFzc0RlY2xhcmF0aW9uPik6IE5nTW9kdWxlTWV0YXxudWxsIHtcbiAgICBjb25zdCBjbGF6eiA9IHJlZi5ub2RlO1xuICAgIGNvbnN0IHJlc29sdXRpb25Db250ZXh0ID0gY2xhenouZ2V0U291cmNlRmlsZSgpLmZpbGVOYW1lO1xuICAgIC8vIFRoaXMgb3BlcmF0aW9uIGlzIGV4cGxpY2l0bHkgbm90IG1lbW9pemVkLCBhcyBpdCBkZXBlbmRzIG9uIGByZWYub3duZWRCeU1vZHVsZUd1ZXNzYC5cbiAgICAvLyBUT0RPKGFseGh1Yik6IGludmVzdGlnYXRlIGNhY2hpbmcgb2YgLmQudHMgbW9kdWxlIG1ldGFkYXRhLlxuICAgIGNvbnN0IG5nTW9kdWxlRGVmID0gdGhpcy5yZWZsZWN0b3IuZ2V0TWVtYmVyc09mQ2xhc3MoY2xhenopLmZpbmQoXG4gICAgICAgIG1lbWJlciA9PiBtZW1iZXIubmFtZSA9PT0gJ8m1bW9kJyAmJiBtZW1iZXIuaXNTdGF0aWMpO1xuICAgIGlmIChuZ01vZHVsZURlZiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgICAvLyBWYWxpZGF0ZSB0aGF0IHRoZSBzaGFwZSBvZiB0aGUgbmdNb2R1bGVEZWYgdHlwZSBpcyBjb3JyZWN0LlxuICAgICAgICBuZ01vZHVsZURlZi50eXBlID09PSBudWxsIHx8ICF0cy5pc1R5cGVSZWZlcmVuY2VOb2RlKG5nTW9kdWxlRGVmLnR5cGUpIHx8XG4gICAgICAgIG5nTW9kdWxlRGVmLnR5cGUudHlwZUFyZ3VtZW50cyA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgIG5nTW9kdWxlRGVmLnR5cGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT09IDQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIC8vIFJlYWQgdGhlIE1vZHVsZURhdGEgb3V0IG9mIHRoZSB0eXBlIGFyZ3VtZW50cy5cbiAgICBjb25zdCBbXywgZGVjbGFyYXRpb25NZXRhZGF0YSwgaW1wb3J0TWV0YWRhdGEsIGV4cG9ydE1ldGFkYXRhXSA9IG5nTW9kdWxlRGVmLnR5cGUudHlwZUFyZ3VtZW50cztcbiAgICByZXR1cm4ge1xuICAgICAgcmVmLFxuICAgICAgZGVjbGFyYXRpb25zOiBleHRyYWN0UmVmZXJlbmNlc0Zyb21UeXBlKFxuICAgICAgICAgIHRoaXMuY2hlY2tlciwgZGVjbGFyYXRpb25NZXRhZGF0YSwgcmVmLm93bmVkQnlNb2R1bGVHdWVzcywgcmVzb2x1dGlvbkNvbnRleHQpLFxuICAgICAgZXhwb3J0czogZXh0cmFjdFJlZmVyZW5jZXNGcm9tVHlwZShcbiAgICAgICAgICB0aGlzLmNoZWNrZXIsIGV4cG9ydE1ldGFkYXRhLCByZWYub3duZWRCeU1vZHVsZUd1ZXNzLCByZXNvbHV0aW9uQ29udGV4dCksXG4gICAgICBpbXBvcnRzOiBleHRyYWN0UmVmZXJlbmNlc0Zyb21UeXBlKFxuICAgICAgICAgIHRoaXMuY2hlY2tlciwgaW1wb3J0TWV0YWRhdGEsIHJlZi5vd25lZEJ5TW9kdWxlR3Vlc3MsIHJlc29sdXRpb25Db250ZXh0KSxcbiAgICAgIHNjaGVtYXM6IFtdLFxuICAgICAgcmF3RGVjbGFyYXRpb25zOiBudWxsLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUmVhZCBkaXJlY3RpdmUgKG9yIGNvbXBvbmVudCkgbWV0YWRhdGEgZnJvbSBhIHJlZmVyZW5jZWQgY2xhc3MgaW4gYSAuZC50cyBmaWxlLlxuICAgKi9cbiAgZ2V0RGlyZWN0aXZlTWV0YWRhdGEocmVmOiBSZWZlcmVuY2U8Q2xhc3NEZWNsYXJhdGlvbj4pOiBEaXJlY3RpdmVNZXRhfG51bGwge1xuICAgIGNvbnN0IGNsYXp6ID0gcmVmLm5vZGU7XG4gICAgY29uc3QgZGVmID0gdGhpcy5yZWZsZWN0b3IuZ2V0TWVtYmVyc09mQ2xhc3MoY2xhenopLmZpbmQoXG4gICAgICAgIGZpZWxkID0+IGZpZWxkLmlzU3RhdGljICYmIChmaWVsZC5uYW1lID09PSAnybVjbXAnIHx8IGZpZWxkLm5hbWUgPT09ICfJtWRpcicpKTtcbiAgICBpZiAoZGVmID09PSB1bmRlZmluZWQpIHtcbiAgICAgIC8vIE5vIGRlZmluaXRpb24gY291bGQgYmUgZm91bmQuXG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgICBkZWYudHlwZSA9PT0gbnVsbCB8fCAhdHMuaXNUeXBlUmVmZXJlbmNlTm9kZShkZWYudHlwZSkgfHxcbiAgICAgICAgZGVmLnR5cGUudHlwZUFyZ3VtZW50cyA9PT0gdW5kZWZpbmVkIHx8IGRlZi50eXBlLnR5cGVBcmd1bWVudHMubGVuZ3RoIDwgMikge1xuICAgICAgLy8gVGhlIHR5cGUgbWV0YWRhdGEgd2FzIHRoZSB3cm9uZyBzaGFwZS5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IGlzQ29tcG9uZW50ID0gZGVmLm5hbWUgPT09ICfJtWNtcCc7XG5cbiAgICBjb25zdCBjdG9yUGFyYW1zID0gdGhpcy5yZWZsZWN0b3IuZ2V0Q29uc3RydWN0b3JQYXJhbWV0ZXJzKGNsYXp6KTtcblxuICAgIC8vIEEgZGlyZWN0aXZlIGlzIGNvbnNpZGVyZWQgdG8gYmUgc3RydWN0dXJhbCBpZjpcbiAgICAvLyAxKSBpdCdzIGEgZGlyZWN0aXZlLCBub3QgYSBjb21wb25lbnQsIGFuZFxuICAgIC8vIDIpIGl0IGluamVjdHMgYFRlbXBsYXRlUmVmYFxuICAgIGNvbnN0IGlzU3RydWN0dXJhbCA9ICFpc0NvbXBvbmVudCAmJiBjdG9yUGFyYW1zICE9PSBudWxsICYmIGN0b3JQYXJhbXMuc29tZShwYXJhbSA9PiB7XG4gICAgICByZXR1cm4gcGFyYW0udHlwZVZhbHVlUmVmZXJlbmNlLmtpbmQgPT09IFR5cGVWYWx1ZVJlZmVyZW5jZUtpbmQuSU1QT1JURUQgJiZcbiAgICAgICAgICBwYXJhbS50eXBlVmFsdWVSZWZlcmVuY2UubW9kdWxlTmFtZSA9PT0gJ0Bhbmd1bGFyL2NvcmUnICYmXG4gICAgICAgICAgcGFyYW0udHlwZVZhbHVlUmVmZXJlbmNlLmltcG9ydGVkTmFtZSA9PT0gJ1RlbXBsYXRlUmVmJztcbiAgICB9KTtcblxuICAgIGNvbnN0IGlucHV0cyA9XG4gICAgICAgIENsYXNzUHJvcGVydHlNYXBwaW5nLmZyb21NYXBwZWRPYmplY3QocmVhZFN0cmluZ01hcFR5cGUoZGVmLnR5cGUudHlwZUFyZ3VtZW50c1szXSkpO1xuICAgIGNvbnN0IG91dHB1dHMgPVxuICAgICAgICBDbGFzc1Byb3BlcnR5TWFwcGluZy5mcm9tTWFwcGVkT2JqZWN0KHJlYWRTdHJpbmdNYXBUeXBlKGRlZi50eXBlLnR5cGVBcmd1bWVudHNbNF0pKTtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogTWV0YVR5cGUuRGlyZWN0aXZlLFxuICAgICAgcmVmLFxuICAgICAgbmFtZTogY2xhenoubmFtZS50ZXh0LFxuICAgICAgaXNDb21wb25lbnQsXG4gICAgICBzZWxlY3RvcjogcmVhZFN0cmluZ1R5cGUoZGVmLnR5cGUudHlwZUFyZ3VtZW50c1sxXSksXG4gICAgICBleHBvcnRBczogcmVhZFN0cmluZ0FycmF5VHlwZShkZWYudHlwZS50eXBlQXJndW1lbnRzWzJdKSxcbiAgICAgIGlucHV0cyxcbiAgICAgIG91dHB1dHMsXG4gICAgICBxdWVyaWVzOiByZWFkU3RyaW5nQXJyYXlUeXBlKGRlZi50eXBlLnR5cGVBcmd1bWVudHNbNV0pLFxuICAgICAgLi4uZXh0cmFjdERpcmVjdGl2ZVR5cGVDaGVja01ldGEoY2xhenosIGlucHV0cywgdGhpcy5yZWZsZWN0b3IpLFxuICAgICAgYmFzZUNsYXNzOiByZWFkQmFzZUNsYXNzKGNsYXp6LCB0aGlzLmNoZWNrZXIsIHRoaXMucmVmbGVjdG9yKSxcbiAgICAgIGlzUG9pc29uZWQ6IGZhbHNlLFxuICAgICAgaXNTdHJ1Y3R1cmFsLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUmVhZCBwaXBlIG1ldGFkYXRhIGZyb20gYSByZWZlcmVuY2VkIGNsYXNzIGluIGEgLmQudHMgZmlsZS5cbiAgICovXG4gIGdldFBpcGVNZXRhZGF0YShyZWY6IFJlZmVyZW5jZTxDbGFzc0RlY2xhcmF0aW9uPik6IFBpcGVNZXRhfG51bGwge1xuICAgIGNvbnN0IGRlZiA9IHRoaXMucmVmbGVjdG9yLmdldE1lbWJlcnNPZkNsYXNzKHJlZi5ub2RlKS5maW5kKFxuICAgICAgICBmaWVsZCA9PiBmaWVsZC5pc1N0YXRpYyAmJiBmaWVsZC5uYW1lID09PSAnybVwaXBlJyk7XG4gICAgaWYgKGRlZiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBObyBkZWZpbml0aW9uIGNvdWxkIGJlIGZvdW5kLlxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgICAgZGVmLnR5cGUgPT09IG51bGwgfHwgIXRzLmlzVHlwZVJlZmVyZW5jZU5vZGUoZGVmLnR5cGUpIHx8XG4gICAgICAgIGRlZi50eXBlLnR5cGVBcmd1bWVudHMgPT09IHVuZGVmaW5lZCB8fCBkZWYudHlwZS50eXBlQXJndW1lbnRzLmxlbmd0aCA8IDIpIHtcbiAgICAgIC8vIFRoZSB0eXBlIG1ldGFkYXRhIHdhcyB0aGUgd3Jvbmcgc2hhcGUuXG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgY29uc3QgdHlwZSA9IGRlZi50eXBlLnR5cGVBcmd1bWVudHNbMV07XG4gICAgaWYgKCF0cy5pc0xpdGVyYWxUeXBlTm9kZSh0eXBlKSB8fCAhdHMuaXNTdHJpbmdMaXRlcmFsKHR5cGUubGl0ZXJhbCkpIHtcbiAgICAgIC8vIFRoZSB0eXBlIG1ldGFkYXRhIHdhcyB0aGUgd3JvbmcgdHlwZS5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBjb25zdCBuYW1lID0gdHlwZS5saXRlcmFsLnRleHQ7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IE1ldGFUeXBlLlBpcGUsXG4gICAgICByZWYsXG4gICAgICBuYW1lLFxuICAgICAgbmFtZUV4cHI6IG51bGwsXG4gICAgfTtcbiAgfVxufVxuXG5mdW5jdGlvbiByZWFkQmFzZUNsYXNzKGNsYXp6OiBDbGFzc0RlY2xhcmF0aW9uLCBjaGVja2VyOiB0cy5UeXBlQ2hlY2tlciwgcmVmbGVjdG9yOiBSZWZsZWN0aW9uSG9zdCk6XG4gICAgUmVmZXJlbmNlPENsYXNzRGVjbGFyYXRpb24+fCdkeW5hbWljJ3xudWxsIHtcbiAgaWYgKCFpc05hbWVkQ2xhc3NEZWNsYXJhdGlvbihjbGF6eikpIHtcbiAgICAvLyBUZWNobmljYWxseSB0aGlzIGlzIGFuIGVycm9yIGluIGEgLmQudHMgZmlsZSwgYnV0IGZvciB0aGUgcHVycG9zZXMgb2YgZmluZGluZyB0aGUgYmFzZSBjbGFzc1xuICAgIC8vIGl0J3MgaWdub3JlZC5cbiAgICByZXR1cm4gcmVmbGVjdG9yLmhhc0Jhc2VDbGFzcyhjbGF6eikgPyAnZHluYW1pYycgOiBudWxsO1xuICB9XG5cbiAgaWYgKGNsYXp6Lmhlcml0YWdlQ2xhdXNlcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgZm9yIChjb25zdCBjbGF1c2Ugb2YgY2xhenouaGVyaXRhZ2VDbGF1c2VzKSB7XG4gICAgICBpZiAoY2xhdXNlLnRva2VuID09PSB0cy5TeW50YXhLaW5kLkV4dGVuZHNLZXl3b3JkKSB7XG4gICAgICAgIGNvbnN0IGJhc2VFeHByID0gY2xhdXNlLnR5cGVzWzBdLmV4cHJlc3Npb247XG4gICAgICAgIGxldCBzeW1ib2wgPSBjaGVja2VyLmdldFN5bWJvbEF0TG9jYXRpb24oYmFzZUV4cHIpO1xuICAgICAgICBpZiAoc3ltYm9sID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICByZXR1cm4gJ2R5bmFtaWMnO1xuICAgICAgICB9IGVsc2UgaWYgKHN5bWJvbC5mbGFncyAmIHRzLlN5bWJvbEZsYWdzLkFsaWFzKSB7XG4gICAgICAgICAgc3ltYm9sID0gY2hlY2tlci5nZXRBbGlhc2VkU3ltYm9sKHN5bWJvbCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHN5bWJvbC52YWx1ZURlY2xhcmF0aW9uICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAgIGlzTmFtZWRDbGFzc0RlY2xhcmF0aW9uKHN5bWJvbC52YWx1ZURlY2xhcmF0aW9uKSkge1xuICAgICAgICAgIHJldHVybiBuZXcgUmVmZXJlbmNlKHN5bWJvbC52YWx1ZURlY2xhcmF0aW9uKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gJ2R5bmFtaWMnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiBudWxsO1xufVxuIl19
|
|
168
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy9uZ3RzYy9tZXRhZGF0YS9zcmMvZHRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7Ozs7SUFFSCwrQkFBaUM7SUFFakMsbUVBQXdDO0lBQ3hDLHlFQUFtSDtJQUVuSCx3RUFBc0Y7SUFDdEYsa0dBQXdEO0lBQ3hELDBFQUF3STtJQUV4STs7O09BR0c7SUFDSDtRQUNFLDJCQUFvQixPQUF1QixFQUFVLFNBQXlCO1lBQTFELFlBQU8sR0FBUCxPQUFPLENBQWdCO1lBQVUsY0FBUyxHQUFULFNBQVMsQ0FBZ0I7UUFBRyxDQUFDO1FBRWxGOzs7OztXQUtHO1FBQ0gsK0NBQW1CLEdBQW5CLFVBQW9CLEdBQWdDO1lBQ2xELElBQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUM7WUFFdkIsd0ZBQXdGO1lBQ3hGLDhEQUE4RDtZQUM5RCxJQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FDNUQsVUFBQSxNQUFNLElBQUksT0FBQSxNQUFNLENBQUMsSUFBSSxLQUFLLE1BQU0sSUFBSSxNQUFNLENBQUMsUUFBUSxFQUF6QyxDQUF5QyxDQUFDLENBQUM7WUFDekQsSUFBSSxXQUFXLEtBQUssU0FBUyxFQUFFO2dCQUM3QixPQUFPLElBQUksQ0FBQzthQUNiO2lCQUFNO1lBQ0gsOERBQThEO1lBQzlELFdBQVcsQ0FBQyxJQUFJLEtBQUssSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7Z0JBQ3RFLFdBQVcsQ0FBQyxJQUFJLENBQUMsYUFBYSxLQUFLLFNBQVM7Z0JBQzVDLFdBQVcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7Z0JBQy9DLE9BQU8sSUFBSSxDQUFDO2FBQ2I7WUFFRCxpREFBaUQ7WUFDM0MsSUFBQSxLQUFBLGVBQTJELFdBQVcsQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFBLEVBQXhGLENBQUMsUUFBQSxFQUFFLG1CQUFtQixRQUFBLEVBQUUsY0FBYyxRQUFBLEVBQUUsY0FBYyxRQUFrQyxDQUFDO1lBQ2hHLE9BQU87Z0JBQ0wsR0FBRyxLQUFBO2dCQUNILFlBQVksRUFDUixnQ0FBeUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQztnQkFDM0YsT0FBTyxFQUFFLGdDQUF5QixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsY0FBYyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQztnQkFDM0YsT0FBTyxFQUFFLGdDQUF5QixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsY0FBYyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQztnQkFDM0YsT0FBTyxFQUFFLEVBQUU7Z0JBQ1gsZUFBZSxFQUFFLElBQUk7YUFDdEIsQ0FBQztRQUNKLENBQUM7UUFFRDs7V0FFRztRQUNILGdEQUFvQixHQUFwQixVQUFxQixHQUFnQztZQUNuRCxJQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDO1lBQ3ZCLElBQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUNwRCxVQUFBLEtBQUssSUFBSSxPQUFBLEtBQUssQ0FBQyxRQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLE1BQU0sSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLE1BQU0sQ0FBQyxFQUFsRSxDQUFrRSxDQUFDLENBQUM7WUFDakYsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO2dCQUNyQixnQ0FBZ0M7Z0JBQ2hDLE9BQU8sSUFBSSxDQUFDO2FBQ2I7aUJBQU0sSUFDSCxHQUFHLENBQUMsSUFBSSxLQUFLLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDO2dCQUN0RCxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsS0FBSyxTQUFTLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDN0UseUNBQXlDO2dCQUN6QyxPQUFPLElBQUksQ0FBQzthQUNiO1lBRUQsSUFBTSxXQUFXLEdBQUcsR0FBRyxDQUFDLElBQUksS0FBSyxNQUFNLENBQUM7WUFFeEMsSUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUVsRSxpREFBaUQ7WUFDakQsNENBQTRDO1lBQzVDLDhCQUE4QjtZQUM5QixJQUFNLFlBQVksR0FBRyxDQUFDLFdBQVcsSUFBSSxVQUFVLEtBQUssSUFBSSxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBQSxLQUFLO2dCQUMvRSxPQUFPLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLHFCQUFvQztvQkFDcEUsS0FBSyxDQUFDLGtCQUFrQixDQUFDLFVBQVUsS0FBSyxlQUFlO29CQUN2RCxLQUFLLENBQUMsa0JBQWtCLENBQUMsWUFBWSxLQUFLLGFBQWEsQ0FBQztZQUM5RCxDQUFDLENBQUMsQ0FBQztZQUVILElBQU0sTUFBTSxHQUNSLHVDQUFvQixDQUFDLGdCQUFnQixDQUFDLHdCQUFpQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN4RixJQUFNLE9BQU8sR0FDVCx1Q0FBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyx3QkFBaUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDeEYsMkNBQ0UsSUFBSSxFQUFFLGNBQVEsQ0FBQyxTQUFTLEVBQ3hCLEdBQUcsS0FBQSxFQUNILElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFDckIsV0FBVyxhQUFBLEVBQ1gsUUFBUSxFQUFFLHFCQUFjLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDbkQsUUFBUSxFQUFFLDBCQUFtQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ3hELE1BQU0sUUFBQSxFQUNOLE9BQU8sU0FBQSxFQUNQLE9BQU8sRUFBRSwwQkFBbUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUNwRCxvQ0FBNkIsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsS0FDL0QsU0FBUyxFQUFFLGFBQWEsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQzdELFVBQVUsRUFBRSxLQUFLLEVBQ2pCLFlBQVksY0FBQSxJQUNaO1FBQ0osQ0FBQztRQUVEOztXQUVHO1FBQ0gsMkNBQWUsR0FBZixVQUFnQixHQUFnQztZQUM5QyxJQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQ3ZELFVBQUEsS0FBSyxJQUFJLE9BQUEsS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBeEMsQ0FBd0MsQ0FBQyxDQUFDO1lBQ3ZELElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtnQkFDckIsZ0NBQWdDO2dCQUNoQyxPQUFPLElBQUksQ0FBQzthQUNiO2lCQUFNLElBQ0gsR0FBRyxDQUFDLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztnQkFDdEQsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLEtBQUssU0FBUyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQzdFLHlDQUF5QztnQkFDekMsT0FBTyxJQUFJLENBQUM7YUFDYjtZQUNELElBQU0sSUFBSSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxFQUFFLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDcEUsd0NBQXdDO2dCQUN4QyxPQUFPLElBQUksQ0FBQzthQUNiO1lBQ0QsSUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDL0IsT0FBTztnQkFDTCxJQUFJLEVBQUUsY0FBUSxDQUFDLElBQUk7Z0JBQ25CLEdBQUcsS0FBQTtnQkFDSCxJQUFJLE1BQUE7Z0JBQ0osUUFBUSxFQUFFLElBQUk7YUFDZixDQUFDO1FBQ0osQ0FBQztRQUNILHdCQUFDO0lBQUQsQ0FBQyxBQXRIRCxJQXNIQztJQXRIWSw4Q0FBaUI7SUF3SDlCLFNBQVMsYUFBYSxDQUFDLEtBQXVCLEVBQUUsT0FBdUIsRUFBRSxTQUF5Qjs7UUFFaEcsSUFBSSxDQUFDLG9DQUF1QixDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ25DLCtGQUErRjtZQUMvRixnQkFBZ0I7WUFDaEIsT0FBTyxTQUFTLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztTQUN6RDtRQUVELElBQUksS0FBSyxDQUFDLGVBQWUsS0FBSyxTQUFTLEVBQUU7O2dCQUN2QyxLQUFxQixJQUFBLEtBQUEsaUJBQUEsS0FBSyxDQUFDLGVBQWUsQ0FBQSxnQkFBQSw0QkFBRTtvQkFBdkMsSUFBTSxNQUFNLFdBQUE7b0JBQ2YsSUFBSSxNQUFNLENBQUMsS0FBSyxLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFO3dCQUNqRCxJQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQzt3QkFDNUMsSUFBSSxNQUFNLEdBQUcsT0FBTyxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxDQUFDO3dCQUNuRCxJQUFJLE1BQU0sS0FBSyxTQUFTLEVBQUU7NEJBQ3hCLE9BQU8sU0FBUyxDQUFDO3lCQUNsQjs2QkFBTSxJQUFJLE1BQU0sQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUU7NEJBQzlDLE1BQU0sR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7eUJBQzNDO3dCQUNELElBQUksTUFBTSxDQUFDLGdCQUFnQixLQUFLLFNBQVM7NEJBQ3JDLG9DQUF1QixDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFOzRCQUNwRCxPQUFPLElBQUksbUJBQVMsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQzt5QkFDL0M7NkJBQU07NEJBQ0wsT0FBTyxTQUFTLENBQUM7eUJBQ2xCO3FCQUNGO2lCQUNGOzs7Ozs7Ozs7U0FDRjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHtSZWZlcmVuY2V9IGZyb20gJy4uLy4uL2ltcG9ydHMnO1xuaW1wb3J0IHtDbGFzc0RlY2xhcmF0aW9uLCBpc05hbWVkQ2xhc3NEZWNsYXJhdGlvbiwgUmVmbGVjdGlvbkhvc3QsIFR5cGVWYWx1ZVJlZmVyZW5jZUtpbmR9IGZyb20gJy4uLy4uL3JlZmxlY3Rpb24nO1xuXG5pbXBvcnQge0RpcmVjdGl2ZU1ldGEsIE1ldGFkYXRhUmVhZGVyLCBNZXRhVHlwZSwgTmdNb2R1bGVNZXRhLCBQaXBlTWV0YX0gZnJvbSAnLi9hcGknO1xuaW1wb3J0IHtDbGFzc1Byb3BlcnR5TWFwcGluZ30gZnJvbSAnLi9wcm9wZXJ0eV9tYXBwaW5nJztcbmltcG9ydCB7ZXh0cmFjdERpcmVjdGl2ZVR5cGVDaGVja01ldGEsIGV4dHJhY3RSZWZlcmVuY2VzRnJvbVR5cGUsIHJlYWRTdHJpbmdBcnJheVR5cGUsIHJlYWRTdHJpbmdNYXBUeXBlLCByZWFkU3RyaW5nVHlwZX0gZnJvbSAnLi91dGlsJztcblxuLyoqXG4gKiBBIGBNZXRhZGF0YVJlYWRlcmAgdGhhdCBjYW4gcmVhZCBtZXRhZGF0YSBmcm9tIGAuZC50c2AgZmlsZXMsIHdoaWNoIGhhdmUgc3RhdGljIEl2eSBwcm9wZXJ0aWVzXG4gKiBmcm9tIGFuIHVwc3RyZWFtIGNvbXBpbGF0aW9uIGFscmVhZHkuXG4gKi9cbmV4cG9ydCBjbGFzcyBEdHNNZXRhZGF0YVJlYWRlciBpbXBsZW1lbnRzIE1ldGFkYXRhUmVhZGVyIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGVja2VyOiB0cy5UeXBlQ2hlY2tlciwgcHJpdmF0ZSByZWZsZWN0b3I6IFJlZmxlY3Rpb25Ib3N0KSB7fVxuXG4gIC8qKlxuICAgKiBSZWFkIHRoZSBtZXRhZGF0YSBmcm9tIGEgY2xhc3MgdGhhdCBoYXMgYWxyZWFkeSBiZWVuIGNvbXBpbGVkIHNvbWVob3cgKGVpdGhlciBpdCdzIGluIGEgLmQudHNcbiAgICogZmlsZSwgb3IgaW4gYSAudHMgZmlsZSB3aXRoIGEgaGFuZHdyaXR0ZW4gZGVmaW5pdGlvbikuXG4gICAqXG4gICAqIEBwYXJhbSByZWYgYFJlZmVyZW5jZWAgdG8gdGhlIGNsYXNzIG9mIGludGVyZXN0LCB3aXRoIHRoZSBjb250ZXh0IG9mIGhvdyBpdCB3YXMgb2J0YWluZWQuXG4gICAqL1xuICBnZXROZ01vZHVsZU1ldGFkYXRhKHJlZjogUmVmZXJlbmNlPENsYXNzRGVjbGFyYXRpb24+KTogTmdNb2R1bGVNZXRhfG51bGwge1xuICAgIGNvbnN0IGNsYXp6ID0gcmVmLm5vZGU7XG5cbiAgICAvLyBUaGlzIG9wZXJhdGlvbiBpcyBleHBsaWNpdGx5IG5vdCBtZW1vaXplZCwgYXMgaXQgZGVwZW5kcyBvbiBgcmVmLm93bmVkQnlNb2R1bGVHdWVzc2AuXG4gICAgLy8gVE9ETyhhbHhodWIpOiBpbnZlc3RpZ2F0ZSBjYWNoaW5nIG9mIC5kLnRzIG1vZHVsZSBtZXRhZGF0YS5cbiAgICBjb25zdCBuZ01vZHVsZURlZiA9IHRoaXMucmVmbGVjdG9yLmdldE1lbWJlcnNPZkNsYXNzKGNsYXp6KS5maW5kKFxuICAgICAgICBtZW1iZXIgPT4gbWVtYmVyLm5hbWUgPT09ICfJtW1vZCcgJiYgbWVtYmVyLmlzU3RhdGljKTtcbiAgICBpZiAobmdNb2R1bGVEZWYgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgICAgLy8gVmFsaWRhdGUgdGhhdCB0aGUgc2hhcGUgb2YgdGhlIG5nTW9kdWxlRGVmIHR5cGUgaXMgY29ycmVjdC5cbiAgICAgICAgbmdNb2R1bGVEZWYudHlwZSA9PT0gbnVsbCB8fCAhdHMuaXNUeXBlUmVmZXJlbmNlTm9kZShuZ01vZHVsZURlZi50eXBlKSB8fFxuICAgICAgICBuZ01vZHVsZURlZi50eXBlLnR5cGVBcmd1bWVudHMgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICBuZ01vZHVsZURlZi50eXBlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9PSA0KSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICAvLyBSZWFkIHRoZSBNb2R1bGVEYXRhIG91dCBvZiB0aGUgdHlwZSBhcmd1bWVudHMuXG4gICAgY29uc3QgW18sIGRlY2xhcmF0aW9uTWV0YWRhdGEsIGltcG9ydE1ldGFkYXRhLCBleHBvcnRNZXRhZGF0YV0gPSBuZ01vZHVsZURlZi50eXBlLnR5cGVBcmd1bWVudHM7XG4gICAgcmV0dXJuIHtcbiAgICAgIHJlZixcbiAgICAgIGRlY2xhcmF0aW9uczpcbiAgICAgICAgICBleHRyYWN0UmVmZXJlbmNlc0Zyb21UeXBlKHRoaXMuY2hlY2tlciwgZGVjbGFyYXRpb25NZXRhZGF0YSwgcmVmLmJlc3RHdWVzc093bmluZ01vZHVsZSksXG4gICAgICBleHBvcnRzOiBleHRyYWN0UmVmZXJlbmNlc0Zyb21UeXBlKHRoaXMuY2hlY2tlciwgZXhwb3J0TWV0YWRhdGEsIHJlZi5iZXN0R3Vlc3NPd25pbmdNb2R1bGUpLFxuICAgICAgaW1wb3J0czogZXh0cmFjdFJlZmVyZW5jZXNGcm9tVHlwZSh0aGlzLmNoZWNrZXIsIGltcG9ydE1ldGFkYXRhLCByZWYuYmVzdEd1ZXNzT3duaW5nTW9kdWxlKSxcbiAgICAgIHNjaGVtYXM6IFtdLFxuICAgICAgcmF3RGVjbGFyYXRpb25zOiBudWxsLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUmVhZCBkaXJlY3RpdmUgKG9yIGNvbXBvbmVudCkgbWV0YWRhdGEgZnJvbSBhIHJlZmVyZW5jZWQgY2xhc3MgaW4gYSAuZC50cyBmaWxlLlxuICAgKi9cbiAgZ2V0RGlyZWN0aXZlTWV0YWRhdGEocmVmOiBSZWZlcmVuY2U8Q2xhc3NEZWNsYXJhdGlvbj4pOiBEaXJlY3RpdmVNZXRhfG51bGwge1xuICAgIGNvbnN0IGNsYXp6ID0gcmVmLm5vZGU7XG4gICAgY29uc3QgZGVmID0gdGhpcy5yZWZsZWN0b3IuZ2V0TWVtYmVyc09mQ2xhc3MoY2xhenopLmZpbmQoXG4gICAgICAgIGZpZWxkID0+IGZpZWxkLmlzU3RhdGljICYmIChmaWVsZC5uYW1lID09PSAnybVjbXAnIHx8IGZpZWxkLm5hbWUgPT09ICfJtWRpcicpKTtcbiAgICBpZiAoZGVmID09PSB1bmRlZmluZWQpIHtcbiAgICAgIC8vIE5vIGRlZmluaXRpb24gY291bGQgYmUgZm91bmQuXG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgICBkZWYudHlwZSA9PT0gbnVsbCB8fCAhdHMuaXNUeXBlUmVmZXJlbmNlTm9kZShkZWYudHlwZSkgfHxcbiAgICAgICAgZGVmLnR5cGUudHlwZUFyZ3VtZW50cyA9PT0gdW5kZWZpbmVkIHx8IGRlZi50eXBlLnR5cGVBcmd1bWVudHMubGVuZ3RoIDwgMikge1xuICAgICAgLy8gVGhlIHR5cGUgbWV0YWRhdGEgd2FzIHRoZSB3cm9uZyBzaGFwZS5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IGlzQ29tcG9uZW50ID0gZGVmLm5hbWUgPT09ICfJtWNtcCc7XG5cbiAgICBjb25zdCBjdG9yUGFyYW1zID0gdGhpcy5yZWZsZWN0b3IuZ2V0Q29uc3RydWN0b3JQYXJhbWV0ZXJzKGNsYXp6KTtcblxuICAgIC8vIEEgZGlyZWN0aXZlIGlzIGNvbnNpZGVyZWQgdG8gYmUgc3RydWN0dXJhbCBpZjpcbiAgICAvLyAxKSBpdCdzIGEgZGlyZWN0aXZlLCBub3QgYSBjb21wb25lbnQsIGFuZFxuICAgIC8vIDIpIGl0IGluamVjdHMgYFRlbXBsYXRlUmVmYFxuICAgIGNvbnN0IGlzU3RydWN0dXJhbCA9ICFpc0NvbXBvbmVudCAmJiBjdG9yUGFyYW1zICE9PSBudWxsICYmIGN0b3JQYXJhbXMuc29tZShwYXJhbSA9PiB7XG4gICAgICByZXR1cm4gcGFyYW0udHlwZVZhbHVlUmVmZXJlbmNlLmtpbmQgPT09IFR5cGVWYWx1ZVJlZmVyZW5jZUtpbmQuSU1QT1JURUQgJiZcbiAgICAgICAgICBwYXJhbS50eXBlVmFsdWVSZWZlcmVuY2UubW9kdWxlTmFtZSA9PT0gJ0Bhbmd1bGFyL2NvcmUnICYmXG4gICAgICAgICAgcGFyYW0udHlwZVZhbHVlUmVmZXJlbmNlLmltcG9ydGVkTmFtZSA9PT0gJ1RlbXBsYXRlUmVmJztcbiAgICB9KTtcblxuICAgIGNvbnN0IGlucHV0cyA9XG4gICAgICAgIENsYXNzUHJvcGVydHlNYXBwaW5nLmZyb21NYXBwZWRPYmplY3QocmVhZFN0cmluZ01hcFR5cGUoZGVmLnR5cGUudHlwZUFyZ3VtZW50c1szXSkpO1xuICAgIGNvbnN0IG91dHB1dHMgPVxuICAgICAgICBDbGFzc1Byb3BlcnR5TWFwcGluZy5mcm9tTWFwcGVkT2JqZWN0KHJlYWRTdHJpbmdNYXBUeXBlKGRlZi50eXBlLnR5cGVBcmd1bWVudHNbNF0pKTtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogTWV0YVR5cGUuRGlyZWN0aXZlLFxuICAgICAgcmVmLFxuICAgICAgbmFtZTogY2xhenoubmFtZS50ZXh0LFxuICAgICAgaXNDb21wb25lbnQsXG4gICAgICBzZWxlY3RvcjogcmVhZFN0cmluZ1R5cGUoZGVmLnR5cGUudHlwZUFyZ3VtZW50c1sxXSksXG4gICAgICBleHBvcnRBczogcmVhZFN0cmluZ0FycmF5VHlwZShkZWYudHlwZS50eXBlQXJndW1lbnRzWzJdKSxcbiAgICAgIGlucHV0cyxcbiAgICAgIG91dHB1dHMsXG4gICAgICBxdWVyaWVzOiByZWFkU3RyaW5nQXJyYXlUeXBlKGRlZi50eXBlLnR5cGVBcmd1bWVudHNbNV0pLFxuICAgICAgLi4uZXh0cmFjdERpcmVjdGl2ZVR5cGVDaGVja01ldGEoY2xhenosIGlucHV0cywgdGhpcy5yZWZsZWN0b3IpLFxuICAgICAgYmFzZUNsYXNzOiByZWFkQmFzZUNsYXNzKGNsYXp6LCB0aGlzLmNoZWNrZXIsIHRoaXMucmVmbGVjdG9yKSxcbiAgICAgIGlzUG9pc29uZWQ6IGZhbHNlLFxuICAgICAgaXNTdHJ1Y3R1cmFsLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUmVhZCBwaXBlIG1ldGFkYXRhIGZyb20gYSByZWZlcmVuY2VkIGNsYXNzIGluIGEgLmQudHMgZmlsZS5cbiAgICovXG4gIGdldFBpcGVNZXRhZGF0YShyZWY6IFJlZmVyZW5jZTxDbGFzc0RlY2xhcmF0aW9uPik6IFBpcGVNZXRhfG51bGwge1xuICAgIGNvbnN0IGRlZiA9IHRoaXMucmVmbGVjdG9yLmdldE1lbWJlcnNPZkNsYXNzKHJlZi5ub2RlKS5maW5kKFxuICAgICAgICBmaWVsZCA9PiBmaWVsZC5pc1N0YXRpYyAmJiBmaWVsZC5uYW1lID09PSAnybVwaXBlJyk7XG4gICAgaWYgKGRlZiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBObyBkZWZpbml0aW9uIGNvdWxkIGJlIGZvdW5kLlxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgICAgZGVmLnR5cGUgPT09IG51bGwgfHwgIXRzLmlzVHlwZVJlZmVyZW5jZU5vZGUoZGVmLnR5cGUpIHx8XG4gICAgICAgIGRlZi50eXBlLnR5cGVBcmd1bWVudHMgPT09IHVuZGVmaW5lZCB8fCBkZWYudHlwZS50eXBlQXJndW1lbnRzLmxlbmd0aCA8IDIpIHtcbiAgICAgIC8vIFRoZSB0eXBlIG1ldGFkYXRhIHdhcyB0aGUgd3Jvbmcgc2hhcGUuXG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgY29uc3QgdHlwZSA9IGRlZi50eXBlLnR5cGVBcmd1bWVudHNbMV07XG4gICAgaWYgKCF0cy5pc0xpdGVyYWxUeXBlTm9kZSh0eXBlKSB8fCAhdHMuaXNTdHJpbmdMaXRlcmFsKHR5cGUubGl0ZXJhbCkpIHtcbiAgICAgIC8vIFRoZSB0eXBlIG1ldGFkYXRhIHdhcyB0aGUgd3JvbmcgdHlwZS5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBjb25zdCBuYW1lID0gdHlwZS5saXRlcmFsLnRleHQ7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IE1ldGFUeXBlLlBpcGUsXG4gICAgICByZWYsXG4gICAgICBuYW1lLFxuICAgICAgbmFtZUV4cHI6IG51bGwsXG4gICAgfTtcbiAgfVxufVxuXG5mdW5jdGlvbiByZWFkQmFzZUNsYXNzKGNsYXp6OiBDbGFzc0RlY2xhcmF0aW9uLCBjaGVja2VyOiB0cy5UeXBlQ2hlY2tlciwgcmVmbGVjdG9yOiBSZWZsZWN0aW9uSG9zdCk6XG4gICAgUmVmZXJlbmNlPENsYXNzRGVjbGFyYXRpb24+fCdkeW5hbWljJ3xudWxsIHtcbiAgaWYgKCFpc05hbWVkQ2xhc3NEZWNsYXJhdGlvbihjbGF6eikpIHtcbiAgICAvLyBUZWNobmljYWxseSB0aGlzIGlzIGFuIGVycm9yIGluIGEgLmQudHMgZmlsZSwgYnV0IGZvciB0aGUgcHVycG9zZXMgb2YgZmluZGluZyB0aGUgYmFzZSBjbGFzc1xuICAgIC8vIGl0J3MgaWdub3JlZC5cbiAgICByZXR1cm4gcmVmbGVjdG9yLmhhc0Jhc2VDbGFzcyhjbGF6eikgPyAnZHluYW1pYycgOiBudWxsO1xuICB9XG5cbiAgaWYgKGNsYXp6Lmhlcml0YWdlQ2xhdXNlcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgZm9yIChjb25zdCBjbGF1c2Ugb2YgY2xhenouaGVyaXRhZ2VDbGF1c2VzKSB7XG4gICAgICBpZiAoY2xhdXNlLnRva2VuID09PSB0cy5TeW50YXhLaW5kLkV4dGVuZHNLZXl3b3JkKSB7XG4gICAgICAgIGNvbnN0IGJhc2VFeHByID0gY2xhdXNlLnR5cGVzWzBdLmV4cHJlc3Npb247XG4gICAgICAgIGxldCBzeW1ib2wgPSBjaGVja2VyLmdldFN5bWJvbEF0TG9jYXRpb24oYmFzZUV4cHIpO1xuICAgICAgICBpZiAoc3ltYm9sID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICByZXR1cm4gJ2R5bmFtaWMnO1xuICAgICAgICB9IGVsc2UgaWYgKHN5bWJvbC5mbGFncyAmIHRzLlN5bWJvbEZsYWdzLkFsaWFzKSB7XG4gICAgICAgICAgc3ltYm9sID0gY2hlY2tlci5nZXRBbGlhc2VkU3ltYm9sKHN5bWJvbCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHN5bWJvbC52YWx1ZURlY2xhcmF0aW9uICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAgIGlzTmFtZWRDbGFzc0RlY2xhcmF0aW9uKHN5bWJvbC52YWx1ZURlY2xhcmF0aW9uKSkge1xuICAgICAgICAgIHJldHVybiBuZXcgUmVmZXJlbmNlKHN5bWJvbC52YWx1ZURlY2xhcmF0aW9uKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gJ2R5bmFtaWMnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiBudWxsO1xufVxuIl19
|
|
@@ -7,11 +7,11 @@
|
|
|
7
7
|
*/
|
|
8
8
|
/// <amd-module name="@angular/compiler-cli/src/ngtsc/metadata/src/util" />
|
|
9
9
|
import * as ts from 'typescript';
|
|
10
|
-
import { Reference } from '../../imports';
|
|
10
|
+
import { OwningModule, Reference } from '../../imports';
|
|
11
11
|
import { ClassDeclaration, ReflectionHost } from '../../reflection';
|
|
12
12
|
import { DirectiveMeta, DirectiveTypeCheckMeta, MetadataReader, NgModuleMeta, PipeMeta } from './api';
|
|
13
13
|
import { ClassPropertyMapping } from './property_mapping';
|
|
14
|
-
export declare function extractReferencesFromType(checker: ts.TypeChecker, def: ts.TypeNode,
|
|
14
|
+
export declare function extractReferencesFromType(checker: ts.TypeChecker, def: ts.TypeNode, bestGuessOwningModule: OwningModule | null): Reference<ClassDeclaration>[];
|
|
15
15
|
export declare function readStringType(type: ts.TypeNode): string | null;
|
|
16
16
|
export declare function readStringMapType(type: ts.TypeNode): {
|
|
17
17
|
[key: string]: string;
|