@angular/cli 15.2.0-next.3 → 15.2.0-rc.0
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@angular/cli",
|
|
3
|
-
"version": "15.2.0-
|
|
3
|
+
"version": "15.2.0-rc.0",
|
|
4
4
|
"description": "CLI tool for Angular",
|
|
5
5
|
"main": "lib/cli/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -25,10 +25,10 @@
|
|
|
25
25
|
},
|
|
26
26
|
"homepage": "https://github.com/angular/angular-cli",
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@angular-devkit/architect": "0.1502.0-
|
|
29
|
-
"@angular-devkit/core": "15.2.0-
|
|
30
|
-
"@angular-devkit/schematics": "15.2.0-
|
|
31
|
-
"@schematics/angular": "15.2.0-
|
|
28
|
+
"@angular-devkit/architect": "0.1502.0-rc.0",
|
|
29
|
+
"@angular-devkit/core": "15.2.0-rc.0",
|
|
30
|
+
"@angular-devkit/schematics": "15.2.0-rc.0",
|
|
31
|
+
"@schematics/angular": "15.2.0-rc.0",
|
|
32
32
|
"@yarnpkg/lockfile": "1.1.0",
|
|
33
33
|
"ansi-colors": "4.1.3",
|
|
34
34
|
"ini": "3.0.1",
|
|
@@ -36,9 +36,9 @@
|
|
|
36
36
|
"jsonc-parser": "3.2.0",
|
|
37
37
|
"npm-package-arg": "10.1.0",
|
|
38
38
|
"npm-pick-manifest": "8.0.1",
|
|
39
|
-
"open": "8.4.
|
|
39
|
+
"open": "8.4.1",
|
|
40
40
|
"ora": "5.4.1",
|
|
41
|
-
"pacote": "15.0
|
|
41
|
+
"pacote": "15.1.0",
|
|
42
42
|
"resolve": "1.22.1",
|
|
43
43
|
"semver": "7.3.8",
|
|
44
44
|
"symbol-observable": "4.0.0",
|
|
@@ -47,12 +47,12 @@
|
|
|
47
47
|
"ng-update": {
|
|
48
48
|
"migrations": "@schematics/angular/migrations/migration-collection.json",
|
|
49
49
|
"packageGroup": {
|
|
50
|
-
"@angular/cli": "15.2.0-
|
|
51
|
-
"@angular-devkit/architect": "0.1502.0-
|
|
52
|
-
"@angular-devkit/build-angular": "15.2.0-
|
|
53
|
-
"@angular-devkit/build-webpack": "0.1502.0-
|
|
54
|
-
"@angular-devkit/core": "15.2.0-
|
|
55
|
-
"@angular-devkit/schematics": "15.2.0-
|
|
50
|
+
"@angular/cli": "15.2.0-rc.0",
|
|
51
|
+
"@angular-devkit/architect": "0.1502.0-rc.0",
|
|
52
|
+
"@angular-devkit/build-angular": "15.2.0-rc.0",
|
|
53
|
+
"@angular-devkit/build-webpack": "0.1502.0-rc.0",
|
|
54
|
+
"@angular-devkit/core": "15.2.0-rc.0",
|
|
55
|
+
"@angular-devkit/schematics": "15.2.0-rc.0"
|
|
56
56
|
}
|
|
57
57
|
},
|
|
58
58
|
"engines": {
|
|
@@ -56,10 +56,12 @@ class AnalyticsCollector {
|
|
|
56
56
|
[analytics_parameters_1.RequestParameter.SessionId]: (0, crypto_1.randomUUID)(),
|
|
57
57
|
[analytics_parameters_1.RequestParameter.UserAgentArchitecture]: os.arch(),
|
|
58
58
|
[analytics_parameters_1.RequestParameter.UserAgentPlatform]: os.platform(),
|
|
59
|
-
[analytics_parameters_1.RequestParameter.UserAgentPlatformVersion]: os.
|
|
60
|
-
|
|
61
|
-
[analytics_parameters_1.RequestParameter.DebugView]: environment_options_1.ngDebug ? 1 : undefined,
|
|
59
|
+
[analytics_parameters_1.RequestParameter.UserAgentPlatformVersion]: os.release(),
|
|
60
|
+
[analytics_parameters_1.RequestParameter.SessionEngaged]: 1,
|
|
62
61
|
};
|
|
62
|
+
if (environment_options_1.ngDebug) {
|
|
63
|
+
requestParameters[analytics_parameters_1.RequestParameter.DebugView] = 1;
|
|
64
|
+
}
|
|
63
65
|
this.requestParameterStringified = querystring.stringify(requestParameters);
|
|
64
66
|
const parsedVersion = semver.parse(process.version);
|
|
65
67
|
const packageManagerVersion = context.packageManager.version;
|
|
@@ -169,4 +171,4 @@ class AnalyticsCollector {
|
|
|
169
171
|
}
|
|
170
172
|
}
|
|
171
173
|
exports.AnalyticsCollector = AnalyticsCollector;
|
|
172
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl0aWNzLWNvbGxlY3Rvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXIvY2xpL3NyYy9hbmFseXRpY3MvYW5hbHl0aWNzLWNvbGxlY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVILG1DQUFvQztBQUNwQyw2Q0FBK0I7QUFDL0IsdUNBQXlCO0FBQ3pCLHlEQUEyQztBQUMzQywrQ0FBaUM7QUFFakMsMEVBQTJEO0FBQzNELDhDQUFtRDtBQUNuRCxrREFBK0M7QUFDL0MsaUVBTWdDO0FBRWhDLE1BQU0sZ0JBQWdCLEdBQUcsY0FBYyxDQUFDO0FBQ3hDLE1BQU0sbUJBQW1CLEdBQUcsY0FBYyxDQUFDO0FBRTNDLE1BQWEsa0JBQWtCO0lBSzdCLFlBQW9CLE9BQXVCLEVBQUUsTUFBYztRQUF2QyxZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUN6QyxNQUFNLGlCQUFpQixHQUFzRDtZQUMzRSxDQUFDLHVDQUFnQixDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7WUFDckMsQ0FBQyx1Q0FBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxNQUFNO1lBQ25DLENBQUMsdUNBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsTUFBTTtZQUNqQyxDQUFDLHVDQUFnQixDQUFDLFVBQVUsQ0FBQyxFQUMzQixpQkFBaUIsQ0FBQyxJQUFJLENBQUMsaUJBQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxpQkFBTyxDQUFDLElBQUksS0FBSyxPQUFPO2dCQUM5RCxDQUFDLENBQUMsZ0JBQWdCO2dCQUNsQixDQUFDLENBQUMsbUJBQW1CO1lBRXpCLDJCQUEyQjtZQUMzQixDQUFDLHVDQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUEsbUJBQVUsR0FBRTtZQUMxQyxDQUFDLHVDQUFnQixDQUFDLHFCQUFxQixDQUFDLEVBQUUsRUFB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Q0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM3RSxPQUFPLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQy9CLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQWpLRCxnREFpS0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHsgcmFuZG9tVVVJRCB9IGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgKiBhcyBodHRwcyBmcm9tICdodHRwcyc7XG5pbXBvcnQgKiBhcyBvcyBmcm9tICdvcyc7XG5pbXBvcnQgKiBhcyBxdWVyeXN0cmluZyBmcm9tICdxdWVyeXN0cmluZyc7XG5pbXBvcnQgKiBhcyBzZW12ZXIgZnJvbSAnc2VtdmVyJztcbmltcG9ydCB0eXBlIHsgQ29tbWFuZENvbnRleHQgfSBmcm9tICcuLi9jb21tYW5kLWJ1aWxkZXIvY29tbWFuZC1tb2R1bGUnO1xuaW1wb3J0IHsgbmdEZWJ1ZyB9IGZyb20gJy4uL3V0aWxpdGllcy9lbnZpcm9ubWVudC1vcHRpb25zJztcbmltcG9ydCB7IGFzc2VydElzRXJyb3IgfSBmcm9tICcuLi91dGlsaXRpZXMvZXJyb3InO1xuaW1wb3J0IHsgVkVSU0lPTiB9IGZyb20gJy4uL3V0aWxpdGllcy92ZXJzaW9uJztcbmltcG9ydCB7XG4gIEV2ZW50Q3VzdG9tRGltZW5zaW9uLFxuICBFdmVudEN1c3RvbU1ldHJpYyxcbiAgUHJpbWl0aXZlVHlwZXMsXG4gIFJlcXVlc3RQYXJhbWV0ZXIsXG4gIFVzZXJDdXN0b21EaW1lbnNpb24sXG59IGZyb20gJy4vYW5hbHl0aWNzLXBhcmFtZXRlcnMnO1xuXG5jb25zdCBUUkFDS0lOR19JRF9QUk9EID0gJ0ctVkVUTkpCVzhMNCc7XG5jb25zdCBUUkFDS0lOR19JRF9TVEFHSU5HID0gJ0ctVEJNUFJMMUJUTSc7XG5cbmV4cG9ydCBjbGFzcyBBbmFseXRpY3NDb2xsZWN0b3Ige1xuICBwcml2YXRlIHRyYWNraW5nRXZlbnRzUXVldWU6IFJlY29yZDxzdHJpbmcsIFByaW1pdGl2ZVR5cGVzIHwgdW5kZWZpbmVkPltdIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIHJlYWRvbmx5IHJlcXVlc3RQYXJhbWV0ZXJTdHJpbmdpZmllZDogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IHVzZXJQYXJhbWV0ZXJzOiBSZWNvcmQ8VXNlckN1c3RvbURpbWVuc2lvbiwgUHJpbWl0aXZlVHlwZXMgfCB1bmRlZmluZWQ+O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29udGV4dDogQ29tbWFuZENvbnRleHQsIHVzZXJJZDogc3RyaW5nKSB7XG4gICAgY29uc3QgcmVxdWVzdFBhcmFtZXRlcnM6IFBhcnRpYWw8UmVjb3JkPFJlcXVlc3RQYXJhbWV0ZXIsIFByaW1pdGl2ZVR5cGVzPj4gPSB7XG4gICAgICBbUmVxdWVzdFBhcmFtZXRlci5Qcm90b2NvbFZlcnNpb25dOiAyLFxuICAgICAgW1JlcXVlc3RQYXJhbWV0ZXIuQ2xpZW50SWRdOiB1c2VySWQsXG4gICAgICBbUmVxdWVzdFBhcmFtZXRlci5Vc2VySWRdOiB1c2VySWQsXG4gICAgICBbUmVxdWVzdFBhcmFtZXRlci5UcmFja2luZ0lkXTpcbiAgICAgICAgL15cXGQrXFwuXFxkK1xcLlxcZCskLy50ZXN0KFZFUlNJT04uZnVsbCkgJiYgVkVSU0lPTi5mdWxsICE9PSAnMC4wLjAnXG4gICAgICAgICAgPyBUUkFDS0lOR19JRF9QUk9EXG4gICAgICAgICAgOiBUUkFDS0lOR19JRF9TVEFHSU5HLFxuXG4gICAgICAvLyBCdWlsdC1pbiB1c2VyIHByb3BlcnRpZXNcbiAgICAgIFtSZXF1ZXN0UGFyYW1ldGVyLlNlc3Npb25JZF06IHJhbmRvbVVVSUQoKSxcbiAgICAgIFtSZXF1ZXN0UGFyYW1ldGVyLlVzZXJBZ2VudEFyY2hpdGVjdHVyZV06IG9zLmFyY2goKSxcbiAgICAgIFtSZXF1ZXN0UGFyYW1ldGVyLlVzZXJBZ2VudFBsYXRmb3JtXTogb3MucGxhdGZvcm0oKSxcbiAgICAgIFtSZXF1ZXN0UGFyYW1ldGVyLlVzZXJBZ2VudFBsYXRmb3JtVmVyc2lvbl06IG9zLnZlcnNpb24oKSxcblxuICAgICAgLy8gU2V0IHVuZGVmaW5lZCB0byBkaXNhYmxlIGRlYnVnIHZpZXcuXG4gICAgICBbUmVxdWVzdFBhcmFtZXRlci5EZWJ1Z1ZpZXddOiBuZ0RlYnVnID8gMSA6IHVuZGVmaW5lZCxcbiAgICB9O1xuXG4gICAgdGhpcy5yZXF1ZXN0UGFyYW1ldGVyU3RyaW5naWZpZWQgPSBxdWVyeXN0cmluZy5zdHJpbmdpZnkocmVxdWVzdFBhcmFtZXRlcnMpO1xuXG4gICAgY29uc3QgcGFyc2VkVmVyc2lvbiA9IHNlbXZlci5wYXJzZShwcm9jZXNzLnZlcnNpb24pO1xuICAgIGNvbnN0IHBhY2thZ2VNYW5hZ2VyVmVyc2lvbiA9IGNvbnRleHQucGFja2FnZU1hbmFnZXIudmVyc2lvbjtcblxuICAgIHRoaXMudXNlclBhcmFtZXRlcnMgPSB7XG4gICAgICAvLyBXaGlsZSBhcmNoaXRlY3R1cmUgaXMgYmVpbmcgY29sbGVjdCBieSBHQSBhcyBVc2VyQWdlbnRBcmNoaXRlY3R1cmUuXG4gICAgICAvLyBJdCBkb2Vzbid0IGxvb2sgbGlrZSB0aGVyZSBpcyBhIHdheSB0byBxdWVyeSB0aGlzLiBUaGVyZWZvcmUgd2UgY29sbGVjdCB0aGlzIGFzIGEgY3VzdG9tIHVzZXIgZGltZW5zaW9uIHRvby5cbiAgICAgIFtVc2VyQ3VzdG9tRGltZW5zaW9uLk9zQXJjaGl0ZWN0dXJlXTogb3MuYXJjaCgpLFxuICAgICAgLy8gV2hpbGUgVXNlciBJRCBpcyBiZWluZyBjb2xsZWN0ZWQgYnkgR0EsIHRoaXMgaXMgbm90IHZpc2libGUgaW4gcmVwb3J0cy9mb3IgZmlsdGVyaW5nLlxuICAgICAgW1VzZXJDdXN0b21EaW1lbnNpb24uVXNlcklkXTogdXNlcklkLFxuICAgICAgW1VzZXJDdXN0b21EaW1lbnNpb24uTm9kZVZlcnNpb25dOiBwYXJzZWRWZXJzaW9uXG4gICAgICAgID8gYCR7cGFyc2VkVmVyc2lvbi5tYWpvcn0uJHtwYXJzZWRWZXJzaW9uLm1pbm9yfS4ke3BhcnNlZFZlcnNpb24ucGF0Y2h9YFxuICAgICAgICA6ICdvdGhlcicsXG4gICAgICBbVXNlckN1c3RvbURpbWVuc2lvbi5Ob2RlTWFqb3JWZXJzaW9uXTogcGFyc2VkVmVyc2lvbj8ubWFqb3IsXG4gICAgICBbVXNlckN1c3RvbURpbWVuc2lvbi5QYWNrYWdlTWFuYWdlcl06IGNvbnRleHQucGFja2FnZU1hbmFnZXIubmFtZSxcbiAgICAgIFtVc2VyQ3VzdG9tRGltZW5zaW9uLlBhY2thZ2VNYW5hZ2VyVmVyc2lvbl06IHBhY2thZ2VNYW5hZ2VyVmVyc2lvbixcbiAgICAgIFtVc2VyQ3VzdG9tRGltZW5zaW9uLlBhY2thZ2VNYW5hZ2VyTWFqb3JWZXJzaW9uXTogcGFja2FnZU1hbmFnZXJWZXJzaW9uXG4gICAgICAgID8gK3BhY2thZ2VNYW5hZ2VyVmVyc2lvbi5zcGxpdCgnLicsIDEpWzBdXG4gICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgW1VzZXJDdXN0b21EaW1lbnNpb24uQW5ndWxhckNMSVZlcnNpb25dOiBWRVJTSU9OLmZ1bGwsXG4gICAgICBbVXNlckN1c3RvbURpbWVuc2lvbi5Bbmd1bGFyQ0xJTWFqb3JWZXJzaW9uXTogVkVSU0lPTi5tYWpvcixcbiAgICB9O1xuICB9XG5cbiAgcmVwb3J0V29ya3NwYWNlSW5mb0V2ZW50KFxuICAgIHBhcmFtZXRlcnM6IFBhcnRpYWw8UmVjb3JkPEV2ZW50Q3VzdG9tTWV0cmljLCBzdHJpbmcgfCBib29sZWFuIHwgbnVtYmVyIHwgdW5kZWZpbmVkPj4sXG4gICk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnQoJ3dvcmtzcGFjZV9pbmZvJywgcGFyYW1ldGVycyk7XG4gIH1cblxuICByZXBvcnRSZWJ1aWxkUnVuRXZlbnQoXG4gICAgcGFyYW1ldGVyczogUGFydGlhbDxcbiAgICAgIFJlY29yZDxFdmVudEN1c3RvbU1ldHJpYyAmIEV2ZW50Q3VzdG9tRGltZW5zaW9uLCBzdHJpbmcgfCBib29sZWFuIHwgbnVtYmVyIHwgdW5kZWZpbmVkPlxuICAgID4sXG4gICk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnQoJ3J1bl9yZWJ1aWxkJywgcGFyYW1ldGVycyk7XG4gIH1cblxuICByZXBvcnRCdWlsZFJ1bkV2ZW50KFxuICAgIHBhcmFtZXRlcnM6IFBhcnRpYWw8XG4gICAgICBSZWNvcmQ8RXZlbnRDdXN0b21NZXRyaWMgJiBFdmVudEN1c3RvbURpbWVuc2lvbiwgc3RyaW5nIHwgYm9vbGVhbiB8IG51bWJlciB8IHVuZGVmaW5lZD5cbiAgICA+LFxuICApOiB2b2lkIHtcbiAgICB0aGlzLmV2ZW50KCdydW5fYnVpbGQnLCBwYXJhbWV0ZXJzKTtcbiAgfVxuXG4gIHJlcG9ydEFyY2hpdGVjdFJ1bkV2ZW50KHBhcmFtZXRlcnM6IFBhcnRpYWw8UmVjb3JkPEV2ZW50Q3VzdG9tRGltZW5zaW9uLCBQcmltaXRpdmVUeXBlcz4+KTogdm9pZCB7XG4gICAgdGhpcy5ldmVudCgncnVuX2FyY2hpdGVjdCcsIHBhcmFtZXRlcnMpO1xuICB9XG5cbiAgcmVwb3J0U2NoZW1hdGljUnVuRXZlbnQocGFyYW1ldGVyczogUGFydGlhbDxSZWNvcmQ8RXZlbnRDdXN0b21EaW1lbnNpb24sIFByaW1pdGl2ZVR5cGVzPj4pOiB2b2lkIHtcbiAgICB0aGlzLmV2ZW50KCdydW5fc2NoZW1hdGljJywgcGFyYW1ldGVycyk7XG4gIH1cblxuICByZXBvcnRDb21tYW5kUnVuRXZlbnQoY29tbWFuZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudCgncnVuX2NvbW1hbmQnLCB7IFtFdmVudEN1c3RvbURpbWVuc2lvbi5Db21tYW5kXTogY29tbWFuZCB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZXZlbnQoZXZlbnROYW1lOiBzdHJpbmcsIHBhcmFtZXRlcnM/OiBSZWNvcmQ8c3RyaW5nLCBQcmltaXRpdmVUeXBlcz4pOiB2b2lkIHtcbiAgICB0aGlzLnRyYWNraW5nRXZlbnRzUXVldWUgPz89IFtdO1xuICAgIHRoaXMudHJhY2tpbmdFdmVudHNRdWV1ZS5wdXNoKHtcbiAgICAgIC4uLnRoaXMudXNlclBhcmFtZXRlcnMsXG4gICAgICAuLi5wYXJhbWV0ZXJzLFxuICAgICAgJ2VuJzogZXZlbnROYW1lLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEZsdXNoIG9uIGFuIGludGVydmFsIChpZiB0aGUgZXZlbnQgbG9vcCBpcyB3YWl0aW5nKS5cbiAgICpcbiAgICogQHJldHVybnMgYSBtZXRob2QgdGhhdCB3aGVuIGNhbGxlZCB3aWxsIHRlcm1pbmF0ZSB0aGUgcGVyaW9kaWNcbiAgICogZmx1c2ggYW5kIGNhbGwgZmx1c2ggb25lIGxhc3QgdGltZS5cbiAgICovXG4gIHBlcmlvZEZsdXNoKCk6ICgpID0+IFByb21pc2U8dm9pZD4ge1xuICAgIGxldCBhbmFseXRpY3NGbHVzaFByb21pc2UgPSBQcm9taXNlLnJlc29sdmUoKTtcbiAgICBjb25zdCBhbmFseXRpY3NGbHVzaEludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMudHJhY2tpbmdFdmVudHNRdWV1ZT8ubGVuZ3RoKSB7XG4gICAgICAgIGFuYWx5dGljc0ZsdXNoUHJvbWlzZSA9IGFuYWx5dGljc0ZsdXNoUHJvbWlzZS50aGVuKCgpID0+IHRoaXMuZmx1c2goKSk7XG4gICAgICB9XG4gICAgfSwgNDAwMCk7XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgY2xlYXJJbnRlcnZhbChhbmFseXRpY3NGbHVzaEludGVydmFsKTtcblxuICAgICAgLy8gRmx1c2ggb25lIGxhc3QgdGltZS5cbiAgICAgIHJldHVybiBhbmFseXRpY3NGbHVzaFByb21pc2UudGhlbigoKSA9PiB0aGlzLmZsdXNoKCkpO1xuICAgIH07XG4gIH1cblxuICBhc3luYyBmbHVzaCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBwZW5kaW5nVHJhY2tpbmdFdmVudHMgPSB0aGlzLnRyYWNraW5nRXZlbnRzUXVldWU7XG4gICAgdGhpcy5jb250ZXh0LmxvZ2dlci5kZWJ1ZyhgQW5hbHl0aWNzIGZsdXNoIHNpemUuICR7cGVuZGluZ1RyYWNraW5nRXZlbnRzPy5sZW5ndGh9LmApO1xuXG4gICAgaWYgKCFwZW5kaW5nVHJhY2tpbmdFdmVudHM/Lmxlbmd0aCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIFRoZSBiZWxvdyBpcyBuZWVkZWQgc28gdGhhdCBpZiBmbHVzaCBpcyBjYWxsZWQgbXVsdGlwbGUgdGltZXMsXG4gICAgLy8gd2UgZG9uJ3QgcmVwb3J0IHRoZSBzYW1lIGV2ZW50IG11bHRpcGxlIHRpbWVzLlxuICAgIHRoaXMudHJhY2tpbmdFdmVudHNRdWV1ZSA9IHVuZGVmaW5lZDtcblxuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0aGlzLnNlbmQocGVuZGluZ1RyYWNraW5nRXZlbnRzKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgLy8gRmFpbHVyZSB0byByZXBvcnQgYW5hbHl0aWNzIHNob3VsZG4ndCBjcmFzaCB0aGUgQ0xJLlxuICAgICAgYXNzZXJ0SXNFcnJvcihlcnJvcik7XG4gICAgICB0aGlzLmNvbnRleHQubG9nZ2VyLmRlYnVnKGBTZW5kIGFuYWx5dGljcyBlcnJvci4gJHtlcnJvci5tZXNzYWdlfS5gKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNlbmQoZGF0YTogUmVjb3JkPHN0cmluZywgUHJpbWl0aXZlVHlwZXMgfCB1bmRlZmluZWQ+W10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgY29uc3QgcmVxdWVzdCA9IGh0dHBzLnJlcXVlc3QoXG4gICAgICAgIHtcbiAgICAgICAgICBob3N0OiAnd3d3Lmdvb2dsZS1hbmFseXRpY3MuY29tJyxcbiAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgICBwYXRoOiAnL2cvY29sbGVjdD8nICsgdGhpcy5yZXF1ZXN0UGFyYW1ldGVyU3RyaW5naWZpZWQsXG4gICAgICAgIH0sXG4gICAgICAgIChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgIGlmIChyZXNwb25zZS5zdGF0dXNDb2RlICE9PSAyMDAgJiYgcmVzcG9uc2Uuc3RhdHVzQ29kZSAhPT0gMjA0KSB7XG4gICAgICAgICAgICByZWplY3QoXG4gICAgICAgICAgICAgIG5ldyBFcnJvcihgQW5hbHl0aWNzIHJlcG9ydGluZyBmYWlsZWQgd2l0aCBzdGF0dXMgY29kZTogJHtyZXNwb25zZS5zdGF0dXNDb2RlfS5gKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICApO1xuXG4gICAgICByZXF1ZXN0Lm9uKCdlcnJvcicsIHJlamVjdCk7XG4gICAgICBjb25zdCBxdWVyeVBhcmFtZXRlcnMgPSBkYXRhLm1hcCgocCkgPT4gcXVlcnlzdHJpbmcuc3RyaW5naWZ5KHApKS5qb2luKCdcXG4nKTtcbiAgICAgIHJlcXVlc3Qud3JpdGUocXVlcnlQYXJhbWV0ZXJzKTtcbiAgICAgIHJlcXVlc3QuZW5kKCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
174
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl0aWNzLWNvbGxlY3Rvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXIvY2xpL3NyYy9hbmFseXRpY3MvYW5hbHl0aWNzLWNvbGxlY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVILG1DQUFvQztBQUNwQyw2Q0FBK0I7QUFDL0IsdUNBQXlCO0FBQ3pCLHlEQUEyQztBQUMzQywrQ0FBaUM7QUFFakMsMEVBQTJEO0FBQzNELDhDQUFtRDtBQUNuRCxrREFBK0M7QUFDL0MsaUVBTWdDO0FBRWhDLE1BQU0sZ0JBQWdCLEdBQUcsY0FBYyxDQUFDO0FBQ3hDLE1BQU0sbUJBQW1CLEdBQUcsY0FBYyxDQUFDO0FBRTNDLE1BQWEsa0JBQWtCO0lBSzdCLFlBQW9CLE9BQXVCLEVBQUUsTUFBYztRQUF2QyxZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUN6QyxNQUFNLGlCQUFpQixHQUFzRDtZQUMzRSxDQUFDLHVDQUFnQixDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7WUFDckMsQ0FBQyx1Q0FBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxNQUFNO1lBQ25DLENBQUMsdUNBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsTUFBTTtZQUNqQyxDQUFDLHVDQUFnQixDQUFDLFVBQVUsQ0FBQyxFQUMzQixpQkFBaUIsQ0FBQyxJQUFJLENBQUMsaUJBQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxpQkFBTyxDQUFDLElBQUksS0FBSyxPQUFPO2dCQUM5RCxDQUFDLENBQUMsZ0JBQWdCO2dCQUNsQixDQUFDLENBQUMsbUJBQW1CO1lBRXpCLDJCQUEyQjtZQUMzQixDQUFDLHVDQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUEsbUJBQVUsR0FBRTtZQUMxQyxDQUFDLHVDQUFnQixDQUFDLHFCQUFxQixDQUFDLEVBQUUsRUFB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VyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM3RSxPQUFPLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQy9CLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQW5LRCxnREFtS0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHsgcmFuZG9tVVVJRCB9IGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgKiBhcyBodHRwcyBmcm9tICdodHRwcyc7XG5pbXBvcnQgKiBhcyBvcyBmcm9tICdvcyc7XG5pbXBvcnQgKiBhcyBxdWVyeXN0cmluZyBmcm9tICdxdWVyeXN0cmluZyc7XG5pbXBvcnQgKiBhcyBzZW12ZXIgZnJvbSAnc2VtdmVyJztcbmltcG9ydCB0eXBlIHsgQ29tbWFuZENvbnRleHQgfSBmcm9tICcuLi9jb21tYW5kLWJ1aWxkZXIvY29tbWFuZC1tb2R1bGUnO1xuaW1wb3J0IHsgbmdEZWJ1ZyB9IGZyb20gJy4uL3V0aWxpdGllcy9lbnZpcm9ubWVudC1vcHRpb25zJztcbmltcG9ydCB7IGFzc2VydElzRXJyb3IgfSBmcm9tICcuLi91dGlsaXRpZXMvZXJyb3InO1xuaW1wb3J0IHsgVkVSU0lPTiB9IGZyb20gJy4uL3V0aWxpdGllcy92ZXJzaW9uJztcbmltcG9ydCB7XG4gIEV2ZW50Q3VzdG9tRGltZW5zaW9uLFxuICBFdmVudEN1c3RvbU1ldHJpYyxcbiAgUHJpbWl0aXZlVHlwZXMsXG4gIFJlcXVlc3RQYXJhbWV0ZXIsXG4gIFVzZXJDdXN0b21EaW1lbnNpb24sXG59IGZyb20gJy4vYW5hbHl0aWNzLXBhcmFtZXRlcnMnO1xuXG5jb25zdCBUUkFDS0lOR19JRF9QUk9EID0gJ0ctVkVUTkpCVzhMNCc7XG5jb25zdCBUUkFDS0lOR19JRF9TVEFHSU5HID0gJ0ctVEJNUFJMMUJUTSc7XG5cbmV4cG9ydCBjbGFzcyBBbmFseXRpY3NDb2xsZWN0b3Ige1xuICBwcml2YXRlIHRyYWNraW5nRXZlbnRzUXVldWU6IFJlY29yZDxzdHJpbmcsIFByaW1pdGl2ZVR5cGVzIHwgdW5kZWZpbmVkPltdIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIHJlYWRvbmx5IHJlcXVlc3RQYXJhbWV0ZXJTdHJpbmdpZmllZDogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IHVzZXJQYXJhbWV0ZXJzOiBSZWNvcmQ8VXNlckN1c3RvbURpbWVuc2lvbiwgUHJpbWl0aXZlVHlwZXMgfCB1bmRlZmluZWQ+O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29udGV4dDogQ29tbWFuZENvbnRleHQsIHVzZXJJZDogc3RyaW5nKSB7XG4gICAgY29uc3QgcmVxdWVzdFBhcmFtZXRlcnM6IFBhcnRpYWw8UmVjb3JkPFJlcXVlc3RQYXJhbWV0ZXIsIFByaW1pdGl2ZVR5cGVzPj4gPSB7XG4gICAgICBbUmVxdWVzdFBhcmFtZXRlci5Qcm90b2NvbFZlcnNpb25dOiAyLFxuICAgICAgW1JlcXVlc3RQYXJhbWV0ZXIuQ2xpZW50SWRdOiB1c2VySWQsXG4gICAgICBbUmVxdWVzdFBhcmFtZXRlci5Vc2VySWRdOiB1c2VySWQsXG4gICAgICBbUmVxdWVzdFBhcmFtZXRlci5UcmFja2luZ0lkXTpcbiAgICAgICAgL15cXGQrXFwuXFxkK1xcLlxcZCskLy50ZXN0KFZFUlNJT04uZnVsbCkgJiYgVkVSU0lPTi5mdWxsICE9PSAnMC4wLjAnXG4gICAgICAgICAgPyBUUkFDS0lOR19JRF9QUk9EXG4gICAgICAgICAgOiBUUkFDS0lOR19JRF9TVEFHSU5HLFxuXG4gICAgICAvLyBCdWlsdC1pbiB1c2VyIHByb3BlcnRpZXNcbiAgICAgIFtSZXF1ZXN0UGFyYW1ldGVyLlNlc3Npb25JZF06IHJhbmRvbVVVSUQoKSxcbiAgICAgIFtSZXF1ZXN0UGFyYW1ldGVyLlVzZXJBZ2VudEFyY2hpdGVjdHVyZV06IG9zLmFyY2goKSxcbiAgICAgIFtSZXF1ZXN0UGFyYW1ldGVyLlVzZXJBZ2VudFBsYXRmb3JtXTogb3MucGxhdGZvcm0oKSxcbiAgICAgIFtSZXF1ZXN0UGFyYW1ldGVyLlVzZXJBZ2VudFBsYXRmb3JtVmVyc2lvbl06IG9zLnJlbGVhc2UoKSxcbiAgICAgIFtSZXF1ZXN0UGFyYW1ldGVyLlNlc3Npb25FbmdhZ2VkXTogMSxcbiAgICB9O1xuXG4gICAgaWYgKG5nRGVidWcpIHtcbiAgICAgIHJlcXVlc3RQYXJhbWV0ZXJzW1JlcXVlc3RQYXJhbWV0ZXIuRGVidWdWaWV3XSA9IDE7XG4gICAgfVxuXG4gICAgdGhpcy5yZXF1ZXN0UGFyYW1ldGVyU3RyaW5naWZpZWQgPSBxdWVyeXN0cmluZy5zdHJpbmdpZnkocmVxdWVzdFBhcmFtZXRlcnMpO1xuXG4gICAgY29uc3QgcGFyc2VkVmVyc2lvbiA9IHNlbXZlci5wYXJzZShwcm9jZXNzLnZlcnNpb24pO1xuICAgIGNvbnN0IHBhY2thZ2VNYW5hZ2VyVmVyc2lvbiA9IGNvbnRleHQucGFja2FnZU1hbmFnZXIudmVyc2lvbjtcblxuICAgIHRoaXMudXNlclBhcmFtZXRlcnMgPSB7XG4gICAgICAvLyBXaGlsZSBhcmNoaXRlY3R1cmUgaXMgYmVpbmcgY29sbGVjdCBieSBHQSBhcyBVc2VyQWdlbnRBcmNoaXRlY3R1cmUuXG4gICAgICAvLyBJdCBkb2Vzbid0IGxvb2sgbGlrZSB0aGVyZSBpcyBhIHdheSB0byBxdWVyeSB0aGlzLiBUaGVyZWZvcmUgd2UgY29sbGVjdCB0aGlzIGFzIGEgY3VzdG9tIHVzZXIgZGltZW5zaW9uIHRvby5cbiAgICAgIFtVc2VyQ3VzdG9tRGltZW5zaW9uLk9zQXJjaGl0ZWN0dXJlXTogb3MuYXJjaCgpLFxuICAgICAgLy8gV2hpbGUgVXNlciBJRCBpcyBiZWluZyBjb2xsZWN0ZWQgYnkgR0EsIHRoaXMgaXMgbm90IHZpc2libGUgaW4gcmVwb3J0cy9mb3IgZmlsdGVyaW5nLlxuICAgICAgW1VzZXJDdXN0b21EaW1lbnNpb24uVXNlcklkXTogdXNlcklkLFxuICAgICAgW1VzZXJDdXN0b21EaW1lbnNpb24uTm9kZVZlcnNpb25dOiBwYXJzZWRWZXJzaW9uXG4gICAgICAgID8gYCR7cGFyc2VkVmVyc2lvbi5tYWpvcn0uJHtwYXJzZWRWZXJzaW9uLm1pbm9yfS4ke3BhcnNlZFZlcnNpb24ucGF0Y2h9YFxuICAgICAgICA6ICdvdGhlcicsXG4gICAgICBbVXNlckN1c3RvbURpbWVuc2lvbi5Ob2RlTWFqb3JWZXJzaW9uXTogcGFyc2VkVmVyc2lvbj8ubWFqb3IsXG4gICAgICBbVXNlckN1c3RvbURpbWVuc2lvbi5QYWNrYWdlTWFuYWdlcl06IGNvbnRleHQucGFja2FnZU1hbmFnZXIubmFtZSxcbiAgICAgIFtVc2VyQ3VzdG9tRGltZW5zaW9uLlBhY2thZ2VNYW5hZ2VyVmVyc2lvbl06IHBhY2thZ2VNYW5hZ2VyVmVyc2lvbixcbiAgICAgIFtVc2VyQ3VzdG9tRGltZW5zaW9uLlBhY2thZ2VNYW5hZ2VyTWFqb3JWZXJzaW9uXTogcGFja2FnZU1hbmFnZXJWZXJzaW9uXG4gICAgICAgID8gK3BhY2thZ2VNYW5hZ2VyVmVyc2lvbi5zcGxpdCgnLicsIDEpWzBdXG4gICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgW1VzZXJDdXN0b21EaW1lbnNpb24uQW5ndWxhckNMSVZlcnNpb25dOiBWRVJTSU9OLmZ1bGwsXG4gICAgICBbVXNlckN1c3RvbURpbWVuc2lvbi5Bbmd1bGFyQ0xJTWFqb3JWZXJzaW9uXTogVkVSU0lPTi5tYWpvcixcbiAgICB9O1xuICB9XG5cbiAgcmVwb3J0V29ya3NwYWNlSW5mb0V2ZW50KFxuICAgIHBhcmFtZXRlcnM6IFBhcnRpYWw8UmVjb3JkPEV2ZW50Q3VzdG9tTWV0cmljLCBzdHJpbmcgfCBib29sZWFuIHwgbnVtYmVyIHwgdW5kZWZpbmVkPj4sXG4gICk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnQoJ3dvcmtzcGFjZV9pbmZvJywgcGFyYW1ldGVycyk7XG4gIH1cblxuICByZXBvcnRSZWJ1aWxkUnVuRXZlbnQoXG4gICAgcGFyYW1ldGVyczogUGFydGlhbDxcbiAgICAgIFJlY29yZDxFdmVudEN1c3RvbU1ldHJpYyAmIEV2ZW50Q3VzdG9tRGltZW5zaW9uLCBzdHJpbmcgfCBib29sZWFuIHwgbnVtYmVyIHwgdW5kZWZpbmVkPlxuICAgID4sXG4gICk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnQoJ3J1bl9yZWJ1aWxkJywgcGFyYW1ldGVycyk7XG4gIH1cblxuICByZXBvcnRCdWlsZFJ1bkV2ZW50KFxuICAgIHBhcmFtZXRlcnM6IFBhcnRpYWw8XG4gICAgICBSZWNvcmQ8RXZlbnRDdXN0b21NZXRyaWMgJiBFdmVudEN1c3RvbURpbWVuc2lvbiwgc3RyaW5nIHwgYm9vbGVhbiB8IG51bWJlciB8IHVuZGVmaW5lZD5cbiAgICA+LFxuICApOiB2b2lkIHtcbiAgICB0aGlzLmV2ZW50KCdydW5fYnVpbGQnLCBwYXJhbWV0ZXJzKTtcbiAgfVxuXG4gIHJlcG9ydEFyY2hpdGVjdFJ1bkV2ZW50KHBhcmFtZXRlcnM6IFBhcnRpYWw8UmVjb3JkPEV2ZW50Q3VzdG9tRGltZW5zaW9uLCBQcmltaXRpdmVUeXBlcz4+KTogdm9pZCB7XG4gICAgdGhpcy5ldmVudCgncnVuX2FyY2hpdGVjdCcsIHBhcmFtZXRlcnMpO1xuICB9XG5cbiAgcmVwb3J0U2NoZW1hdGljUnVuRXZlbnQocGFyYW1ldGVyczogUGFydGlhbDxSZWNvcmQ8RXZlbnRDdXN0b21EaW1lbnNpb24sIFByaW1pdGl2ZVR5cGVzPj4pOiB2b2lkIHtcbiAgICB0aGlzLmV2ZW50KCdydW5fc2NoZW1hdGljJywgcGFyYW1ldGVycyk7XG4gIH1cblxuICByZXBvcnRDb21tYW5kUnVuRXZlbnQoY29tbWFuZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudCgncnVuX2NvbW1hbmQnLCB7IFtFdmVudEN1c3RvbURpbWVuc2lvbi5Db21tYW5kXTogY29tbWFuZCB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZXZlbnQoZXZlbnROYW1lOiBzdHJpbmcsIHBhcmFtZXRlcnM/OiBSZWNvcmQ8c3RyaW5nLCBQcmltaXRpdmVUeXBlcz4pOiB2b2lkIHtcbiAgICB0aGlzLnRyYWNraW5nRXZlbnRzUXVldWUgPz89IFtdO1xuICAgIHRoaXMudHJhY2tpbmdFdmVudHNRdWV1ZS5wdXNoKHtcbiAgICAgIC4uLnRoaXMudXNlclBhcmFtZXRlcnMsXG4gICAgICAuLi5wYXJhbWV0ZXJzLFxuICAgICAgJ2VuJzogZXZlbnROYW1lLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEZsdXNoIG9uIGFuIGludGVydmFsIChpZiB0aGUgZXZlbnQgbG9vcCBpcyB3YWl0aW5nKS5cbiAgICpcbiAgICogQHJldHVybnMgYSBtZXRob2QgdGhhdCB3aGVuIGNhbGxlZCB3aWxsIHRlcm1pbmF0ZSB0aGUgcGVyaW9kaWNcbiAgICogZmx1c2ggYW5kIGNhbGwgZmx1c2ggb25lIGxhc3QgdGltZS5cbiAgICovXG4gIHBlcmlvZEZsdXNoKCk6ICgpID0+IFByb21pc2U8dm9pZD4ge1xuICAgIGxldCBhbmFseXRpY3NGbHVzaFByb21pc2UgPSBQcm9taXNlLnJlc29sdmUoKTtcbiAgICBjb25zdCBhbmFseXRpY3NGbHVzaEludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMudHJhY2tpbmdFdmVudHNRdWV1ZT8ubGVuZ3RoKSB7XG4gICAgICAgIGFuYWx5dGljc0ZsdXNoUHJvbWlzZSA9IGFuYWx5dGljc0ZsdXNoUHJvbWlzZS50aGVuKCgpID0+IHRoaXMuZmx1c2goKSk7XG4gICAgICB9XG4gICAgfSwgNDAwMCk7XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgY2xlYXJJbnRlcnZhbChhbmFseXRpY3NGbHVzaEludGVydmFsKTtcblxuICAgICAgLy8gRmx1c2ggb25lIGxhc3QgdGltZS5cbiAgICAgIHJldHVybiBhbmFseXRpY3NGbHVzaFByb21pc2UudGhlbigoKSA9PiB0aGlzLmZsdXNoKCkpO1xuICAgIH07XG4gIH1cblxuICBhc3luYyBmbHVzaCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBwZW5kaW5nVHJhY2tpbmdFdmVudHMgPSB0aGlzLnRyYWNraW5nRXZlbnRzUXVldWU7XG4gICAgdGhpcy5jb250ZXh0LmxvZ2dlci5kZWJ1ZyhgQW5hbHl0aWNzIGZsdXNoIHNpemUuICR7cGVuZGluZ1RyYWNraW5nRXZlbnRzPy5sZW5ndGh9LmApO1xuXG4gICAgaWYgKCFwZW5kaW5nVHJhY2tpbmdFdmVudHM/Lmxlbmd0aCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIFRoZSBiZWxvdyBpcyBuZWVkZWQgc28gdGhhdCBpZiBmbHVzaCBpcyBjYWxsZWQgbXVsdGlwbGUgdGltZXMsXG4gICAgLy8gd2UgZG9uJ3QgcmVwb3J0IHRoZSBzYW1lIGV2ZW50IG11bHRpcGxlIHRpbWVzLlxuICAgIHRoaXMudHJhY2tpbmdFdmVudHNRdWV1ZSA9IHVuZGVmaW5lZDtcblxuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0aGlzLnNlbmQocGVuZGluZ1RyYWNraW5nRXZlbnRzKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgLy8gRmFpbHVyZSB0byByZXBvcnQgYW5hbHl0aWNzIHNob3VsZG4ndCBjcmFzaCB0aGUgQ0xJLlxuICAgICAgYXNzZXJ0SXNFcnJvcihlcnJvcik7XG4gICAgICB0aGlzLmNvbnRleHQubG9nZ2VyLmRlYnVnKGBTZW5kIGFuYWx5dGljcyBlcnJvci4gJHtlcnJvci5tZXNzYWdlfS5gKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNlbmQoZGF0YTogUmVjb3JkPHN0cmluZywgUHJpbWl0aXZlVHlwZXMgfCB1bmRlZmluZWQ+W10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgY29uc3QgcmVxdWVzdCA9IGh0dHBzLnJlcXVlc3QoXG4gICAgICAgIHtcbiAgICAgICAgICBob3N0OiAnd3d3Lmdvb2dsZS1hbmFseXRpY3MuY29tJyxcbiAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgICBwYXRoOiAnL2cvY29sbGVjdD8nICsgdGhpcy5yZXF1ZXN0UGFyYW1ldGVyU3RyaW5naWZpZWQsXG4gICAgICAgIH0sXG4gICAgICAgIChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgIGlmIChyZXNwb25zZS5zdGF0dXNDb2RlICE9PSAyMDAgJiYgcmVzcG9uc2Uuc3RhdHVzQ29kZSAhPT0gMjA0KSB7XG4gICAgICAgICAgICByZWplY3QoXG4gICAgICAgICAgICAgIG5ldyBFcnJvcihgQW5hbHl0aWNzIHJlcG9ydGluZyBmYWlsZWQgd2l0aCBzdGF0dXMgY29kZTogJHtyZXNwb25zZS5zdGF0dXNDb2RlfS5gKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICApO1xuXG4gICAgICByZXF1ZXN0Lm9uKCdlcnJvcicsIHJlamVjdCk7XG4gICAgICBjb25zdCBxdWVyeVBhcmFtZXRlcnMgPSBkYXRhLm1hcCgocCkgPT4gcXVlcnlzdHJpbmcuc3RyaW5naWZ5KHApKS5qb2luKCdcXG4nKTtcbiAgICAgIHJlcXVlc3Qud3JpdGUocXVlcnlQYXJhbWV0ZXJzKTtcbiAgICAgIHJlcXVlc3QuZW5kKCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -15,6 +15,7 @@ const fs_1 = require("fs");
|
|
|
15
15
|
const jsonc_parser_1 = require("jsonc-parser");
|
|
16
16
|
const module_1 = require("module");
|
|
17
17
|
const path_1 = require("path");
|
|
18
|
+
const util_1 = require("util");
|
|
18
19
|
const vm_1 = require("vm");
|
|
19
20
|
const error_1 = require("../../utilities/error");
|
|
20
21
|
/**
|
|
@@ -40,6 +41,12 @@ function shouldWrapSchematic(schematicFile, schematicEncapsulation) {
|
|
|
40
41
|
!normalizedSchematicFile.includes('node_modules/@angular/cli/node_modules/')) {
|
|
41
42
|
return false;
|
|
42
43
|
}
|
|
44
|
+
// @angular/pwa uses dynamic imports which causes `[1] 2468039 segmentation fault` when wrapped.
|
|
45
|
+
// We should remove this when make `importModuleDynamically` work.
|
|
46
|
+
// See: https://nodejs.org/docs/latest-v14.x/api/vm.html
|
|
47
|
+
if (normalizedSchematicFile.includes('@angular/pwa')) {
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
43
50
|
// Check for first-party Angular schematic packages
|
|
44
51
|
// Angular schematics are safe to use in the wrapped VM context
|
|
45
52
|
if (/\/node_modules\/@(?:angular|schematics|nguniversal)\//.test(normalizedSchematicFile)) {
|
|
@@ -172,6 +179,12 @@ function wrap(schematicFile, schematicDirectory, moduleCache, exportName) {
|
|
|
172
179
|
__dirname: schematicDirectory,
|
|
173
180
|
__filename: schematicFile,
|
|
174
181
|
Buffer,
|
|
182
|
+
// TextEncoder is used by the compiler to generate i18n message IDs. See:
|
|
183
|
+
// https://github.com/angular/angular/blob/main/packages/compiler/src/i18n/digest.ts#L17
|
|
184
|
+
// It is referenced globally, because it may be run either on the browser or the server.
|
|
185
|
+
// Usually Node exposes it globally, but in order for it to work, our custom context
|
|
186
|
+
// has to expose it too. Issue context: https://github.com/angular/angular/issues/48940.
|
|
187
|
+
TextEncoder: util_1.TextEncoder,
|
|
175
188
|
console,
|
|
176
189
|
process,
|
|
177
190
|
get global() {
|
|
@@ -185,4 +198,4 @@ function wrap(schematicFile, schematicDirectory, moduleCache, exportName) {
|
|
|
185
198
|
function loadBuiltinModule(id) {
|
|
186
199
|
return undefined;
|
|
187
200
|
}
|
|
188
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hdGljLWVuZ2luZS1ob3N0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9jbGkvc3JjL2NvbW1hbmQtYnVpbGRlci91dGlsaXRpZXMvc2NoZW1hdGljLWVuZ2luZS1ob3N0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7Ozs7QUFFSCwyREFBb0Y7QUFDcEYsNERBQW1HO0FBQ25HLDJCQUFrQztBQUNsQywrQ0FBa0Q7QUFDbEQsbUNBQXVDO0FBQ3ZDLCtCQUF3QztBQUN4QywyQkFBNEI7QUFDNUIsaURBQXNEO0FBRXREOztHQUVHO0FBQ0gsTUFBTSx5QkFBeUIsR0FBRyxNQUFBLE9BQU8sQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsMENBQUUsV0FBVyxFQUFFLENBQUM7QUFFdEYsU0FBUyxtQkFBbUIsQ0FBQyxhQUFxQixFQUFFLHNCQUErQjtJQUNqRix3Q0FBd0M7SUFDeEMsUUFBUSx5QkFBeUIsRUFBRTtRQUNqQyxLQUFLLEdBQUcsQ0FBQztRQUNULEtBQUssT0FBTyxDQUFDO1FBQ2IsS0FBSyxLQUFLLENBQUM7UUFDWCxLQUFLLE1BQU07WUFDVCxPQUFPLEtBQUssQ0FBQztRQUNmLEtBQUssS0FBSztZQUNSLE9BQU8sSUFBSSxDQUFDO0tBQ2Y7SUFFRCxNQUFNLHVCQUF1QixHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ2xFLGtFQUFrRTtJQUNsRSx1REFBdUQ7SUFDdkQsbUZBQW1GO0lBQ25GLElBQ0UsdUJBQXVCLENBQUMsUUFBUSxDQUFDLDRCQUE0QixDQUFDO1FBQzlELENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLHlDQUF5QyxDQUFDLEVBQzVFO1FBQ0EsT0FBTyxLQUFLLENBQUM7S0FDZDtJQUVELG1EQUFtRDtJQUNuRCwrREFBK0Q7SUFDL0QsSUFBSSx1REFBdUQs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QzNFLE1BQU0sVUFBVSxHQUFHLCtEQUErRCxDQUFDO0lBQ25GLE1BQU0sVUFBVSxHQUFHLFVBQVU7UUFDM0IsQ0FBQyxDQUFDLDRCQUE0QixVQUFVLFFBQVE7UUFDaEQsQ0FBQyxDQUFDLDZCQUE2QixDQUFDO0lBRWxDLE1BQU0sTUFBTSxHQUFHLElBQUksV0FBTSxDQUFDLFVBQVUsR0FBRyxhQUFhLEdBQUcsVUFBVSxFQUFFO1FBQ2pFLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLFVBQVUsRUFBRSxDQUFDO0tBQ2QsQ0FBQyxDQUFDO0lBRUgsTUFBTSxPQUFPLEdBQUc7UUFDZCxTQUFTLEVBQUUsa0JBQWtCO1FBQzdCLFVBQVUsRUFBRSxhQUFhO1FBQ3pCLE1BQU07UUFDTixPQUFPO1FBQ1AsT0FBTztRQUNQLElBQUksTUFBTTtZQUNSLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELE9BQU8sRUFBRSxhQUFhO0tBQ3ZCLENBQUM7SUFFRixNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXZELE9BQU8sY0FBYyxDQUFDO0FBQ3hCLENBQUM7QUFFRCxTQUFTLGlCQUFpQixDQUFDLEVBQVU7SUFDbkMsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgeyBSdWxlRmFjdG9yeSwgU2NoZW1hdGljc0V4Y2VwdGlvbiwgVHJlZSB9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzJztcbmltcG9ydCB7IEZpbGVTeXN0ZW1Db2xsZWN0aW9uRGVzYywgTm9kZU1vZHVsZXNFbmdpbmVIb3N0IH0gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L3NjaGVtYXRpY3MvdG9vbHMnO1xuaW1wb3J0IHsgcmVhZEZpbGVTeW5jIH0gZnJvbSAnZnMnO1xuaW1wb3J0IHsgcGFyc2UgYXMgcGFyc2VKc29uIH0gZnJvbSAnanNvbmMtcGFyc2VyJztcbmltcG9ydCB7IGNyZWF0ZVJlcXVpcmUgfSBmcm9tICdtb2R1bGUnO1xuaW1wb3J0IHsgZGlybmFtZSwgcmVzb2x2ZSB9IGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgU2NyaXB0IH0gZnJvbSAndm0nO1xuaW1wb3J0IHsgYXNzZXJ0SXNFcnJvciB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9lcnJvcic7XG5cbi8qKlxuICogRW52aXJvbm1lbnQgdmFyaWFibGUgdG8gY29udHJvbCBzY2hlbWF0aWMgcGFja2FnZSByZWRpcmVjdGlvblxuICovXG5jb25zdCBzY2hlbWF0aWNSZWRpcmVjdFZhcmlhYmxlID0gcHJvY2Vzcy5lbnZbJ05HX1NDSEVNQVRJQ19SRURJUkVDVCddPy50b0xvd2VyQ2FzZSgpO1xuXG5mdW5jdGlvbiBzaG91bGRXcmFwU2NoZW1hdGljKHNjaGVtYXRpY0ZpbGU6IHN0cmluZywgc2NoZW1hdGljRW5jYXBzdWxhdGlvbjogYm9vbGVhbik6IGJvb2xlYW4ge1xuICAvLyBDaGVjayBlbnZpcm9ubWVudCB2YXJpYWJsZSBpZiBwcmVzZW50XG4gIHN3aXRjaCAoc2NoZW1hdGljUmVkaXJlY3RWYXJpYWJsZSkge1xuICAgIGNhc2UgJzAnOlxuICAgIGNhc2UgJ2ZhbHNlJzpcbiAgICBjYXNlICdvZmYnOlxuICAgIGNhc2UgJ25vbmUnOlxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIGNhc2UgJ2FsbCc6XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGNvbnN0IG5vcm1hbGl6ZWRTY2hlbWF0aWNGaWxlID0gc2NoZW1hdGljRmlsZS5yZXBsYWNlKC9cXFxcL2csICcvJyk7XG4gIC8vIE5ldmVyIHdyYXAgdGhlIGludGVybmFsIHVwZGF0ZSBzY2hlbWF0aWMgd2hlbiBleGVjdXRlZCBkaXJlY3RseVxuICAvLyBJdCBjb21tdW5pY2F0ZXMgd2l0aCB0aGUgdXBkYXRlIGNvbW1hbmQgdmlhIGBnbG9iYWxgXG4gIC8vIEJ1dCB3ZSBzdGlsbCB3YW50IHRvIHJlZGlyZWN0IHNjaGVtYXRpY3MgbG9jYXRlZCBpbiBgQGFuZ3VsYXIvY2xpL25vZGVfbW9kdWxlc2AuXG4gIGlmIChcbiAgICBub3JtYWxpemVkU2NoZW1hdGljRmlsZS5pbmNsdWRlcygnbm9kZV9tb2R1bGVzL0Bhbmd1bGFyL2NsaS8nKSAmJlxuICAgICFub3JtYWxpemVkU2NoZW1hdGljRmlsZS5pbmNsdWRlcygnbm9kZV9tb2R1bGVzL0Bhbmd1bGFyL2NsaS9ub2RlX21vZHVsZXMvJylcbiAgKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLy8gQ2hlY2sgZm9yIGZpcnN0LXBhcnR5IEFuZ3VsYXIgc2NoZW1hdGljIHBhY2thZ2VzXG4gIC8vIEFuZ3VsYXIgc2NoZW1hdGljcyBhcmUgc2FmZSB0byB1c2UgaW4gdGhlIHdyYXBwZWQgVk0gY29udGV4dFxuICBpZiAoL1xcL25vZGVfbW9kdWxlc1xcL0AoPzphbmd1bGFyfHNjaGVtYXRpY3N8bmd1bml2ZXJzYWwpXFwvLy50ZXN0KG5vcm1hbGl6ZWRTY2hlbWF0aWNGaWxlKSkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgLy8gT3RoZXJ3aXNlIHVzZSB0aGUgdmFsdWUgb2YgdGhlIHNjaGVtYXRpYyBjb2xsZWN0aW9uJ3MgZW5jYXBzdWxhdGlvbiBvcHRpb24gKGN1cnJlbnQgZGVmYXVsdCBvZiBmYWxzZSlcbiAgcmV0dXJuIHNjaGVtYXRpY0VuY2Fwc3VsYXRpb247XG59XG5cbmV4cG9ydCBjbGFzcyBTY2hlbWF0aWNFbmdpbmVIb3N0IGV4dGVuZHMgTm9kZU1vZHVsZXNFbmdpbmVIb3N0IHtcbiAgcHJvdGVjdGVkIG92ZXJyaWRlIF9yZXNvbHZlUmVmZXJlbmNlU3RyaW5nKFxuICAgIHJlZlN0cmluZzogc3RyaW5nLFxuICAgIHBhcmVudFBhdGg6IHN0cmluZyxcbiAgICBjb2xsZWN0aW9uRGVzY3JpcHRpb24/OiBGaWxlU3lzdGVtQ29sbGVjdGlvbkRlc2MsXG4gICkge1xuICAgIGNvbnN0IFtwYXRoLCBuYW1lXSA9IHJlZlN0cmluZy5zcGxpdCgnIycsIDIpO1xuICAgIC8vIE1pbWljIGJlaGF2aW9yIG9mIEV4cG9ydFN0cmluZ1JlZiBjbGFzcyB1c2VkIGluIGRlZmF1bHQgYmVoYXZpb3JcbiAgICBjb25zdCBmdWxsUGF0aCA9IHBhdGhbMF0gPT09ICcuJyA/IHJlc29sdmUocGFyZW50UGF0aCA/PyBwcm9jZXNzLmN3ZCgpLCBwYXRoKSA6IHBhdGg7XG5cbiAgICBjb25zdCByZWZlcmVuY2VSZXF1aXJlID0gY3JlYXRlUmVxdWlyZShfX2ZpbGVuYW1lKTtcbiAgICBjb25zdCBzY2hlbWF0aWNGaWxlID0gcmVmZXJlbmNlUmVxdWlyZS5yZXNvbHZlKGZ1bGxQYXRoLCB7IHBhdGhzOiBbcGFyZW50UGF0aF0gfSk7XG5cbiAgICBpZiAoc2hvdWxkV3JhcFNjaGVtYXRpYyhzY2hlbWF0aWNGaWxlLCAhIWNvbGxlY3Rpb25EZXNjcmlwdGlvbj8uZW5jYXBzdWxhdGlvbikpIHtcbiAgICAgIGNvbnN0IHNjaGVtYXRpY1BhdGggPSBkaXJuYW1lKHNjaGVtYXRpY0ZpbGUpO1xuXG4gICAgICBjb25zdCBtb2R1bGVDYWNoZSA9IG5ldyBNYXA8c3RyaW5nLCB1bmtub3duPigpO1xuICAgICAgY29uc3QgZmFjdG9yeUluaXRpYWxpemVyID0gd3JhcChcbiAgICAgICAgc2NoZW1hdGljRmlsZSxcbiAgICAgICAgc2NoZW1hdGljUGF0aCxcbiAgICAgICAgbW9kdWxlQ2FjaGUsXG4gICAgICAgIG5hbWUgfHwgJ2RlZmF1bHQnLFxuICAgICAgKSBhcyAoKSA9PiBSdWxlRmFjdG9yeTx7fT47XG5cbiAgICAgIGNvbnN0IGZhY3RvcnkgPSBmYWN0b3J5SW5pdGlhbGl6ZXIoKTtcbiAgICAgIGlmICghZmFjdG9yeSB8fCB0eXBlb2YgZmFjdG9yeSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHsgcmVmOiBmYWN0b3J5LCBwYXRoOiBzY2hlbWF0aWNQYXRoIH07XG4gICAgfVxuXG4gICAgLy8gQWxsIG90aGVyIHNjaGVtYXRpY3MgdXNlIGRlZmF1bHQgYmVoYXZpb3JcbiAgICByZXR1cm4gc3VwZXIuX3Jlc29sdmVSZWZlcmVuY2VTdHJpbmcocmVmU3RyaW5nLCBwYXJlbnRQYXRoLCBjb2xsZWN0aW9uRGVzY3JpcHRpb24pO1xuICB9XG59XG5cbi8qKlxuICogTWluaW1hbCBzaGltIG1vZHVsZXMgZm9yIGxlZ2FjeSBkZWVwIGltcG9ydHMgb2YgYEBzY2hlbWF0aWNzL2FuZ3VsYXJgXG4gKi9cbmNvbnN0IGxlZ2FjeU1vZHVsZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge1xuICAnQHNjaGVtYXRpY3MvYW5ndWxhci91dGlsaXR5L2NvbmZpZyc6IHtcbiAgICBnZXRXb3Jrc3BhY2UoaG9zdDogVHJlZSkge1xuICAgICAgY29uc3QgcGF0aCA9ICcvLmFuZ3VsYXIuanNvbic7XG4gICAgICBjb25zdCBkYXRhID0gaG9zdC5yZWFkKHBhdGgpO1xuICAgICAgaWYgKCFkYXRhKSB7XG4gICAgICAgIHRocm93IG5ldyBTY2hlbWF0aWNzRXhjZXB0aW9uKGBDb3VsZCBub3QgZmluZCAoJHtwYXRofSlgKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHBhcnNlSnNvbihkYXRhLnRvU3RyaW5nKCksIFtdLCB7IGFsbG93VHJhaWxpbmdDb21tYTogdHJ1ZSB9KTtcbiAgICB9LFxuICB9LFxuICAnQHNjaGVtYXRpY3MvYW5ndWxhci91dGlsaXR5L3Byb2plY3QnOiB7XG4gICAgYnVpbGREZWZhdWx0UGF0aChwcm9qZWN0OiB7IHNvdXJjZVJvb3Q/OiBzdHJpbmc7IHJvb3Q6IHN0cmluZzsgcHJvamVjdFR5cGU6IHN0cmluZyB9KTogc3RyaW5nIHtcbiAgICAgIGNvbnN0IHJvb3QgPSBwcm9qZWN0LnNvdXJjZVJvb3QgPyBgLyR7cHJvamVjdC5zb3VyY2VSb290fS9gIDogYC8ke3Byb2plY3Qucm9vdH0vc3JjL2A7XG5cbiAgICAgIHJldHVybiBgJHtyb290fSR7cHJvamVjdC5wcm9qZWN0VHlwZSA9PT0gJ2FwcGxpY2F0aW9uJyA/ICdhcHAnIDogJ2xpYid9YDtcbiAgICB9LFxuICB9LFxufTtcblxuLyoqXG4gKiBXcmFwIGEgSmF2YVNjcmlwdCBmaWxlIGluIGEgVk0gY29udGV4dCB0byBhbGxvdyBzcGVjaWZpYyBBbmd1bGFyIGRlcGVuZGVuY2llcyB0byBiZSByZWRpcmVjdGVkLlxuICogVGhpcyBWTSBzZXR1cCBpcyBPTkxZIGludGVuZGVkIHRvIHJlZGlyZWN0IGRlcGVuZGVuY2llcy5cbiAqXG4gKiBAcGFyYW0gc2NoZW1hdGljRmlsZSBBIEphdmFTY3JpcHQgc2NoZW1hdGljIGZpbGUgcGF0aCB0aGF0IHNob3VsZCBiZSB3cmFwcGVkLlxuICogQHBhcmFtIHNjaGVtYXRpY0RpcmVjdG9yeSBBIGRpcmVjdG9yeSB0aGF0IHdpbGwgYmUgdXNlZCBhcyB0aGUgbG9jYXRpb24gb2YgdGhlIEphdmFTY3JpcHQgZmlsZS5cbiAqIEBwYXJhbSBtb2R1bGVDYWNoZSBBIG1hcCB0byB1c2UgZm9yIGNhY2hpbmcgcmVwZWF0IG1vZHVsZSB1c2FnZSBhbmQgcHJvcGVyIGBpbnN0YW5jZW9mYCBzdXBwb3J0LlxuICogQHBhcmFtIGV4cG9ydE5hbWUgQW4gb3B0aW9uYWwgbmFtZSBvZiBhIHNwZWNpZmljIGV4cG9ydCB0byByZXR1cm4uIE90aGVyd2lzZSwgcmV0dXJuIGFsbCBleHBvcnRzLlxuICovXG5mdW5jdGlvbiB3cmFwKFxuICBzY2hlbWF0aWNGaWxlOiBzdHJpbmcsXG4gIHNjaGVtYXRpY0RpcmVjdG9yeTogc3RyaW5nLFxuICBtb2R1bGVDYWNoZTogTWFwPHN0cmluZywgdW5rbm93bj4sXG4gIGV4cG9ydE5hbWU/OiBzdHJpbmcsXG4pOiAoKSA9PiB1bmtub3duIHtcbiAgY29uc3QgaG9zdFJlcXVpcmUgPSBjcmVhdGVSZXF1aXJlKF9fZmlsZW5hbWUpO1xuICBjb25zdCBzY2hlbWF0aWNSZXF1aXJlID0gY3JlYXRlUmVxdWlyZShzY2hlbWF0aWNGaWxlKTtcblxuICBjb25zdCBjdXN0b21SZXF1aXJlID0gZnVuY3Rpb24gKGlkOiBzdHJpbmcpIHtcbiAgICBpZiAobGVnYWN5TW9kdWxlc1tpZF0pIHtcbiAgICAgIC8vIFByb3ZpZGUgY29tcGF0aWJpbGl0eSBtb2R1bGVzIGZvciBvbGRlciB2ZXJzaW9ucyBvZiBAYW5ndWxhci9jZGtcbiAgICAgIHJldHVybiBsZWdhY3lNb2R1bGVzW2lkXTtcbiAgICB9IGVsc2UgaWYgKGlkLnN0YXJ0c1dpdGgoJ3NjaGVtYXRpY3M6JykpIHtcbiAgICAgIC8vIFNjaGVtYXRpY3MgYnVpbHQtaW4gbW9kdWxlcyB1c2UgdGhlIGBzY2hlbWF0aWNzYCBzY2hlbWUgKHNpbWlsYXIgdG8gdGhlIE5vZGUuanMgYG5vZGVgIHNjaGVtZSlcbiAgICAgIGNvbnN0IGJ1aWx0aW5JZCA9IGlkLnNsaWNlKDExKTtcbiAgICAgIGNvbnN0IGJ1aWx0aW5Nb2R1bGUgPSBsb2FkQnVpbHRpbk1vZHVsZShidWlsdGluSWQpO1xuICAgICAgaWYgKCFidWlsdGluTW9kdWxlKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBgVW5rbm93biBzY2hlbWF0aWNzIGJ1aWx0LWluIG1vZHVsZSAnJHtpZH0nIHJlcXVlc3RlZCBmcm9tIHNjaGVtYXRpYyAnJHtzY2hlbWF0aWNGaWxlfSdgLFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gYnVpbHRpbk1vZHVsZTtcbiAgICB9IGVsc2UgaWYgKGlkLnN0YXJ0c1dpdGgoJ0Bhbmd1bGFyLWRldmtpdC8nKSB8fCBpZC5zdGFydHNXaXRoKCdAc2NoZW1hdGljcy8nKSkge1xuICAgICAgLy8gRmlsZXMgc2hvdWxkIG5vdCByZWRpcmVjdCBgQGFuZ3VsYXIvY29yZWAgYW5kIGluc3RlYWQgdXNlIHRoZSBkaXJlY3RcbiAgICAgIC8vIGRlcGVuZGVuY3kgaWYgYXZhaWxhYmxlLiBUaGlzIGFsbG93cyBvbGQgbWFqb3IgdmVyc2lvbiBtaWdyYXRpb25zIHRvIGNvbnRpbnVlIHRvIGZ1bmN0aW9uXG4gICAgICAvLyBldmVuIHRob3VnaCB0aGUgbGF0ZXN0IG1ham9yIHZlcnNpb24gbWF5IGhhdmUgYnJlYWtpbmcgY2hhbmdlcyBpbiBgQGFuZ3VsYXIvY29yZWAuXG4gICAgICBpZiAoaWQuc3RhcnRzV2l0aCgnQGFuZ3VsYXItZGV2a2l0L2NvcmUnKSkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIHJldHVybiBzY2hlbWF0aWNSZXF1aXJlKGlkKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGFzc2VydElzRXJyb3IoZSk7XG4gICAgICAgICAgaWYgKGUuY29kZSAhPT0gJ01PRFVMRV9OT1RfRk9VTkQnKSB7XG4gICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBSZXNvbHZlIGZyb20gaW5zaWRlIHRoZSBgQGFuZ3VsYXIvY2xpYCBwcm9qZWN0XG4gICAgICByZXR1cm4gaG9zdFJlcXVpcmUoaWQpO1xuICAgIH0gZWxzZSBpZiAoaWQuc3RhcnRzV2l0aCgnLicpIHx8IGlkLnN0YXJ0c1dpdGgoJ0Bhbmd1bGFyL2NkaycpKSB7XG4gICAgICAvLyBXcmFwIHJlbGF0aXZlIGZpbGVzIGluc2lkZSB0aGUgc2NoZW1hdGljIGNvbGxlY3Rpb25cbiAgICAgIC8vIEFsc28gd3JhcCBgQGFuZ3VsYXIvY2RrYCwgaXQgY29udGFpbnMgaGVscGVyIHV0aWxpdGllcyB0aGF0IGltcG9ydCBjb3JlIHNjaGVtYXRpYyBwYWNrYWdlc1xuXG4gICAgICAvLyBSZXNvbHZlIGZyb20gdGhlIG9yaWdpbmFsIGZpbGVcbiAgICAgIGNvbnN0IG1vZHVsZVBhdGggPSBzY2hlbWF0aWNSZXF1aXJlLnJlc29sdmUoaWQpO1xuXG4gICAgICAvLyBVc2UgY2FjaGVkIG1vZHVsZSBpZiBhdmFpbGFibGVcbiAgICAgIGNvbnN0IGNhY2hlZE1vZHVsZSA9IG1vZHVsZUNhY2hlLmdldChtb2R1bGVQYXRoKTtcbiAgICAgIGlmIChjYWNoZWRNb2R1bGUpIHtcbiAgICAgICAgcmV0dXJuIGNhY2hlZE1vZHVsZTtcbiAgICAgIH1cblxuICAgICAgLy8gRG8gbm90IHdyYXAgdmVuZG9yZWQgdGhpcmQtcGFydHkgcGFja2FnZXMgb3IgSlNPTiBmaWxlc1xuICAgICAgaWYgKFxuICAgICAgICAhL1svXFxcXF1ub2RlX21vZHVsZXNbL1xcXFxdQHNjaGVtYXRpY3NbL1xcXFxdYW5ndWxhclsvXFxcXF10aGlyZF9wYXJ0eVsvXFxcXF0vLnRlc3QobW9kdWxlUGF0aCkgJiZcbiAgICAgICAgIW1vZHVsZVBhdGguZW5kc1dpdGgoJy5qc29uJylcbiAgICAgICkge1xuICAgICAgICAvLyBXcmFwIG1vZHVsZSBhbmQgc2F2ZSBpbiBjYWNoZVxuICAgICAgICBjb25zdCB3cmFwcGVkTW9kdWxlID0gd3JhcChtb2R1bGVQYXRoLCBkaXJuYW1lKG1vZHVsZVBhdGgpLCBtb2R1bGVDYWNoZSkoKTtcbiAgICAgICAgbW9kdWxlQ2FjaGUuc2V0KG1vZHVsZVBhdGgsIHdyYXBwZWRNb2R1bGUpO1xuXG4gICAgICAgIHJldHVybiB3cmFwcGVkTW9kdWxlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsbCBvdGhlcnMgYXJlIHJlcXVpcmVkIGRpcmVjdGx5IGZyb20gdGhlIG9yaWdpbmFsIGZpbGVcbiAgICByZXR1cm4gc2NoZW1hdGljUmVxdWlyZShpZCk7XG4gIH07XG5cbiAgLy8gU2V0dXAgYSB3cmFwcGVyIGZ1bmN0aW9uIHRvIGNhcHR1cmUgdGhlIG1vZHVsZSdzIGV4cG9ydHNcbiAgY29uc3Qgc2NoZW1hdGljQ29kZSA9IHJlYWRGaWxlU3luYyhzY2hlbWF0aWNGaWxlLCAndXRmOCcpO1xuICAvLyBgbW9kdWxlYCBpcyByZXF1aXJlZCBkdWUgdG8gQGFuZ3VsYXIvbG9jYWxpemUgbmctYWRkIGJlaW5nIGluIFVNRCBmb3JtYXRcbiAgY29uc3QgaGVhZGVyQ29kZSA9ICcoZnVuY3Rpb24oKSB7XFxudmFyIGV4cG9ydHMgPSB7fTtcXG52YXIgbW9kdWxlID0geyBleHBvcnRzIH07XFxuJztcbiAgY29uc3QgZm9vdGVyQ29kZSA9IGV4cG9ydE5hbWVcbiAgICA/IGBcXG5yZXR1cm4gbW9kdWxlLmV4cG9ydHNbJyR7ZXhwb3J0TmFtZX0nXTt9KTtgXG4gICAgOiAnXFxucmV0dXJuIG1vZHVsZS5leHBvcnRzO30pOyc7XG5cbiAgY29uc3Qgc2NyaXB0ID0gbmV3IFNjcmlwdChoZWFkZXJDb2RlICsgc2NoZW1hdGljQ29kZSArIGZvb3RlckNvZGUsIHtcbiAgICBmaWxlbmFtZTogc2NoZW1hdGljRmlsZSxcbiAgICBsaW5lT2Zmc2V0OiAzLFxuICB9KTtcblxuICBjb25zdCBjb250ZXh0ID0ge1xuICAgIF9fZGlybmFtZTogc2NoZW1hdGljRGlyZWN0b3J5LFxuICAgIF9fZmlsZW5hbWU6IHNjaGVtYXRpY0ZpbGUsXG4gICAgQnVmZmVyLFxuICAgIGNvbnNvbGUsXG4gICAgcHJvY2VzcyxcbiAgICBnZXQgZ2xvYmFsKCkge1xuICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfSxcbiAgICByZXF1aXJlOiBjdXN0b21SZXF1aXJlLFxuICB9O1xuXG4gIGNvbnN0IGV4cG9ydHNGYWN0b3J5ID0gc2NyaXB0LnJ1bkluTmV3Q29udGV4dChjb250ZXh0KTtcblxuICByZXR1cm4gZXhwb3J0c0ZhY3Rvcnk7XG59XG5cbmZ1bmN0aW9uIGxvYWRCdWlsdGluTW9kdWxlKGlkOiBzdHJpbmcpOiB1bmtub3duIHtcbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cbiJdfQ==
|
|
201
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hdGljLWVuZ2luZS1ob3N0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9jbGkvc3JjL2NvbW1hbmQtYnVpbGRlci91dGlsaXRpZXMvc2NoZW1hdGljLWVuZ2luZS1ob3N0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7Ozs7QUFFSCwyREFBb0Y7QUFDcEYsNERBQW1HO0FBQ25HLDJCQUFrQztBQUNsQywrQ0FBa0Q7QUFDbEQsbUNBQXVDO0FBQ3ZDLCtCQUF3QztBQUN4QywrQkFBbUM7QUFDbkMsMkJBQTRCO0FBQzVCLGlEQUFzRDtBQUV0RDs7R0FFRztBQUNILE1BQU0seUJBQXlCLEdBQUcsTUFBQSxPQUFPLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLDBDQUFFLFdBQVcsRUFBRSxDQUFDO0FBRXRGLFNBQVMsbUJBQW1CLENBQUMsYUFBcUIsRUFBRSxzQkFBK0I7SUFDakYsd0NBQXdDO0lBQ3hDLFFBQVEseUJBQXlCLEVBQUU7UUFDakMsS0FBSyxHQUFHLENBQUM7UUFDVCxLQUFLLE9BQU8sQ0FBQztRQUNiLEtBQUssS0FBSyxDQUFDO1FBQ1gsS0FBSyxNQUFNO1lBQ1QsT0FBTyxLQUFLLENBQUM7UUFDZixLQUFLLEtBQUs7WUFDUixPQUFPLElBQUksQ0FBQztLQUNmO0lBRUQsTUFBTSx1QkFBdUIsR0FBRyxhQUFhLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNsRSxrRUFBa0U7SUFDbEUsdURBQXVEO0lBQ3ZELG1GQUFtRjtJQUNuRixJQUNFLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyw0QkFBNEIsQ0FBQztRQUM5RCxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyx5Q0FBeUMsQ0FBQyxFQUM1RTtRQUNBLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFFRCxtR0FBbUc7SUFDbkcsa0VBQWtFO0lBQ2xFLHdEQUF3RDtJQUN4RCxJQUFJLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsRUFBRTtRQUNwRCxPQUFPLEtBQUssQ0FBQztLQUNkO0lBRUQsbURBQW1EO0lBQ25ELCtEQUErRDtJQUMvRCxJQUFJLHVEQUF1RCxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxFQUFFO1FBQ3pGLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFFRCx3R0FBd0c7SUFDeEcsT0FBTyxzQkFBc0IsQ0FBQztBQUNoQyxDQUFDO0FBRUQsTUFBYSxtQkFBb0IsU0FBUSw2QkFBcUI7SUFDekMsdUJBQXVCLENBQ3hDLFNBQWlCLEVBQ2pCLFVBQWtCLEVBQ2xCLHFCQUFnRDtRQUVoRCxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzdDLG1FQUFtRTtRQUNuRSxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFBLGNBQU8sRUFBQyxVQUFVLGFBQVYsVUFBVSxjQUFWLFVBQVUsR0FBSSxPQUFPLENBQUMsR0FBRyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUVyRixNQUFNLGdCQUFnQixHQUFHLElBQUEsc0JBQWEsRUFBQyxVQUFVLENBQUMsQ0FBQztRQUNuRCxNQUFNLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRWxGLElBQUksbUJBQW1CLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFBLHFCQUFxQixhQUFyQixxQkFBcUIsdUJBQXJCLHFCQUFxQixDQUFFLGFBQWEsQ0FBQSxDQUFDLEVBQUU7WUFDOUUsTUFBTSxhQUFhLEdBQUcsSUFBQSxjQUFPLEVBQUMsYUFBYSxDQUFDLENBQUM7WUFFN0MsTUFBTSxXQUFXLEdBQUcsSUFBSSxHQUFHLEVBQW1CLENBQUM7WUFDL0MsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQzdCLGFBQWEsRUFDYixhQUFhLEVBQ2IsV0FBVyxFQUNYLElBQUksSUFBSSxTQUFTLENBQ08sQ0FBQztZQUUzQixNQUFNLE9BQU8sR0FBRyxrQkFBa0IsRUFBRSxDQUFDO1lBQ3JDLElBQUksQ0FBQyxPQUFPLElBQUksT0FBTyxPQUFPLEtBQUssVUFBVSxFQUFFO2dCQUM3QyxPQUFPLElBQUksQ0FBQzthQUNiO1lBRUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxDQUFDO1NBQzlDO1FBRUQsNENBQTRDO1FBQzVDLE9BQU8sS0FBSyxDQUFDLHVCQUF1QixDQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUscUJBQXFCLENBQUMsQ0FBQztJQUNyRixDQUFDO0NBQ0Y7QUFuQ0Qsa0RBbUNDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLGFBQWEsR0FBNEI7SUFDN0Msb0NBQW9DLEVBQUU7UUFDcEMsWUFBWSxDQUFDLElBQVU7WUFDckIsTUFBTSxJQUFJLEdBQUcsZ0JBQWdCLENBQUM7WUFDOUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM3QixJQUFJLENBQUMsSUFBSSxFQUFFO2dCQUNULE1BQU0sSUFBSSxnQ0FBbUIsQ0FBQyxtQkFBbUIsSUFBSSxHQUFHLENBQUMsQ0FBQzthQUMzRDtZQUVELE9BQU8sSUFBQSxvQkFBUyxFQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3RFLENBQUM7S0FDRjtJQUNELHFDQUFxQyxFQUFFO1FBQ3JDLGdCQUFnQixDQUFDLE9BQW1FO1lBQ2xGLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksT0FBTyxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxJQUFJLE9BQU8sQ0FBQztZQUV0RixPQUFPLEdBQUcsSUFBSSxHQUFHLE9BQU8sQ0FBQyxXQUFXLEtBQUssYUFBYSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzNFLENBQUM7S0FDRjtDQUNGLENBQUM7QUFFRjs7Ozs7Ozs7R0FRRztBQUNILFNBQVMsSUFBSSxDQUNYLGFBQXFCLEVBQ3JCLGtCQUEwQixFQUMxQixXQUFpQyxFQUNqQyxVQUFtQjtJQUVuQixNQUFNLFdBQVcsR0FBRyxJQUFBLHNCQUFhLEVBQUMsVUFBVSxDQUFDLENBQUM7SUFDOUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFBLHNCQUFhLEVBQUMsYUFBYSxDQUFDLENBQUM7SUFFdEQsTUFBTSxhQUFhLEdBQUcsVUFBVSxFQUFVO1FBQ3hDLElBQUksYUFBYSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQ3JCLG1FQUFtRTtZQUNuRSxPQUFPLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUMxQjthQUFNLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUN2QyxpR0FBaUc7WUFDakcsTUFBTSxTQUFTLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUMvQixNQUFNLGFBQWEsR0FBRyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNuRCxJQUFJLENBQUMsYUFBYSxFQUFFO2dCQUNsQixNQUFNLElBQUksS0FBSyxDQUNiLHVDQUF1QyxFQUFFLCtCQUErQixhQUFhLEdBQUcsQ0FDekYsQ0FBQzthQUNIO1lBRUQsT0FBTyxhQUFhLENBQUM7U0FDdEI7YUFBTSxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQzdFLHVFQUF1RTtZQUN2RSw0RkFBNEY7WUFDNUYscUZBQXFGO1lBQ3JGLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFO2dCQUN6QyxJQUFJO29CQUNGLE9BQU8sZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7aUJBQzdCO2dCQUFDLE9BQU8sQ0FBQyxFQUFFO29CQUNWLElBQUEscUJBQWEsRUFBQyxDQUFDLENBQUMsQ0FBQztvQkFDakIsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLGtCQUFrQixFQUFFO3dCQUNqQyxNQUFNLENBQUMsQ0FBQztxQkFDVDtpQkFDRjthQUNGO1lBRUQsaURBQWlEO1lBQ2pELE9BQU8sV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3hCO2FBQU0sSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLEVBQUU7WUFDOUQsc0RBQXNEO1lBQ3RELDZGQUE2RjtZQUU3RixpQ0FBaUM7WUFDakMsTUFBTSxVQUFVLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBRWhELGlDQUFpQztZQUNqQyxNQUFNLFlBQVksR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ2pELElBQUksWUFBWSxFQUFFO2dCQUNoQixPQUFPLFlBQVksQ0FBQzthQUNyQjtZQUVELDBEQUEwRDtZQUMxRCxJQUNFLENBQUMsb0VBQW9FLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztnQkFDdEYsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUM3QjtnQkFDQSxnQ0FBZ0M7Z0JBQ2hDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBQSxjQUFPLEVBQUMsVUFBVSxDQUFDLEVBQUUsV0FBVyxDQUFDLEVBQUUsQ0FBQztnQkFDM0UsV0FBVyxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsYUFBYSxDQUFDLENBQUM7Z0JBRTNDLE9BQU8sYUFBYSxDQUFDO2FBQ3RCO1NBQ0Y7UUFFRCwwREFBMEQ7UUFDMUQsT0FBTyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM5QixDQUFDLENBQUM7SUFFRiwyREFBMkQ7SUFDM0QsTUFBTSxhQUFhLEdBQUcsSUFBQSxpQkFBWSxFQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMxRCwyRUFBMkU7SUFDM0UsTUFBTSxVQUFVLEdBQUcsK0RBQStELENBQUM7SUFDbkYsTUFBTSxVQUFVLEdBQUcsVUFBVTtRQUMzQixDQUFDLENBQUMsNEJBQTRCLFVBQVUsUUFBUTtRQUNoRCxDQUFDLENBQUMsNkJBQTZCLENBQUM7SUFFbEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxXQUFNLENBQUMsVUFBVSxHQUFHLGFBQWEsR0FBRyxVQUFVLEVBQUU7UUFDakUsUUFBUSxFQUFFLGFBQWE7UUFDdkIsVUFBVSxFQUFFLENBQUM7S0FDZCxDQUFDLENBQUM7SUFFSCxNQUFNLE9BQU8sR0FBRztRQUNkLFNBQVMsRUFBRSxrQkFBa0I7UUFDN0IsVUFBVSxFQUFFLGFBQWE7UUFDekIsTUFBTTtRQUNOLHlFQUF5RTtRQUN6RSx3RkFBd0Y7UUFDeEYsd0ZBQXdGO1FBQ3hGLG9GQUFvRjtRQUNwRix3RkFBd0Y7UUFDeEYsV0FBVyxFQUFYLGtCQUFXO1FBQ1gsT0FBTztRQUNQLE9BQU87UUFDUCxJQUFJLE1BQU07WUFDUixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFDRCxPQUFPLEVBQUUsYUFBYTtLQUN2QixDQUFDO0lBRUYsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUV2RCxPQUFPLGNBQWMsQ0FBQztBQUN4QixDQUFDO0FBRUQsU0FBUyxpQkFBaUIsQ0FBQyxFQUFVO0lBQ25DLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHsgUnVsZUZhY3RvcnksIFNjaGVtYXRpY3NFeGNlcHRpb24sIFRyZWUgfSBmcm9tICdAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcyc7XG5pbXBvcnQgeyBGaWxlU3lzdGVtQ29sbGVjdGlvbkRlc2MsIE5vZGVNb2R1bGVzRW5naW5lSG9zdCB9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzL3Rvb2xzJztcbmltcG9ydCB7IHJlYWRGaWxlU3luYyB9IGZyb20gJ2ZzJztcbmltcG9ydCB7IHBhcnNlIGFzIHBhcnNlSnNvbiB9IGZyb20gJ2pzb25jLXBhcnNlcic7XG5pbXBvcnQgeyBjcmVhdGVSZXF1aXJlIH0gZnJvbSAnbW9kdWxlJztcbmltcG9ydCB7IGRpcm5hbWUsIHJlc29sdmUgfSBmcm9tICdwYXRoJztcbmltcG9ydCB7IFRleHRFbmNvZGVyIH0gZnJvbSAndXRpbCc7XG5pbXBvcnQgeyBTY3JpcHQgfSBmcm9tICd2bSc7XG5pbXBvcnQgeyBhc3NlcnRJc0Vycm9yIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2Vycm9yJztcblxuLyoqXG4gKiBFbnZpcm9ubWVudCB2YXJpYWJsZSB0byBjb250cm9sIHNjaGVtYXRpYyBwYWNrYWdlIHJlZGlyZWN0aW9uXG4gKi9cbmNvbnN0IHNjaGVtYXRpY1JlZGlyZWN0VmFyaWFibGUgPSBwcm9jZXNzLmVudlsnTkdfU0NIRU1BVElDX1JFRElSRUNUJ10/LnRvTG93ZXJDYXNlKCk7XG5cbmZ1bmN0aW9uIHNob3VsZFdyYXBTY2hlbWF0aWMoc2NoZW1hdGljRmlsZTogc3RyaW5nLCBzY2hlbWF0aWNFbmNhcHN1bGF0aW9uOiBib29sZWFuKTogYm9vbGVhbiB7XG4gIC8vIENoZWNrIGVudmlyb25tZW50IHZhcmlhYmxlIGlmIHByZXNlbnRcbiAgc3dpdGNoIChzY2hlbWF0aWNSZWRpcmVjdFZhcmlhYmxlKSB7XG4gICAgY2FzZSAnMCc6XG4gICAgY2FzZSAnZmFsc2UnOlxuICAgIGNhc2UgJ29mZic6XG4gICAgY2FzZSAnbm9uZSc6XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgY2FzZSAnYWxsJzpcbiAgICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgY29uc3Qgbm9ybWFsaXplZFNjaGVtYXRpY0ZpbGUgPSBzY2hlbWF0aWNGaWxlLnJlcGxhY2UoL1xcXFwvZywgJy8nKTtcbiAgLy8gTmV2ZXIgd3JhcCB0aGUgaW50ZXJuYWwgdXBkYXRlIHNjaGVtYXRpYyB3aGVuIGV4ZWN1dGVkIGRpcmVjdGx5XG4gIC8vIEl0IGNvbW11bmljYXRlcyB3aXRoIHRoZSB1cGRhdGUgY29tbWFuZCB2aWEgYGdsb2JhbGBcbiAgLy8gQnV0IHdlIHN0aWxsIHdhbnQgdG8gcmVkaXJlY3Qgc2NoZW1hdGljcyBsb2NhdGVkIGluIGBAYW5ndWxhci9jbGkvbm9kZV9tb2R1bGVzYC5cbiAgaWYgKFxuICAgIG5vcm1hbGl6ZWRTY2hlbWF0aWNGaWxlLmluY2x1ZGVzKCdub2RlX21vZHVsZXMvQGFuZ3VsYXIvY2xpLycpICYmXG4gICAgIW5vcm1hbGl6ZWRTY2hlbWF0aWNGaWxlLmluY2x1ZGVzKCdub2RlX21vZHVsZXMvQGFuZ3VsYXIvY2xpL25vZGVfbW9kdWxlcy8nKVxuICApIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAvLyBAYW5ndWxhci9wd2EgdXNlcyBkeW5hbWljIGltcG9ydHMgd2hpY2ggY2F1c2VzIGBbMV0gICAgMjQ2ODAzOSBzZWdtZW50YXRpb24gZmF1bHRgIHdoZW4gd3JhcHBlZC5cbiAgLy8gV2Ugc2hvdWxkIHJlbW92ZSB0aGlzIHdoZW4gbWFrZSBgaW1wb3J0TW9kdWxlRHluYW1pY2FsbHlgIHdvcmsuXG4gIC8vIFNlZTogaHR0cHM6Ly9ub2RlanMub3JnL2RvY3MvbGF0ZXN0LXYxNC54L2FwaS92bS5odG1sXG4gIGlmIChub3JtYWxpemVkU2NoZW1hdGljRmlsZS5pbmNsdWRlcygnQGFuZ3VsYXIvcHdhJykpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAvLyBDaGVjayBmb3IgZmlyc3QtcGFydHkgQW5ndWxhciBzY2hlbWF0aWMgcGFja2FnZXNcbiAgLy8gQW5ndWxhciBzY2hlbWF0aWNzIGFyZSBzYWZlIHRvIHVzZSBpbiB0aGUgd3JhcHBlZCBWTSBjb250ZXh0XG4gIGlmICgvXFwvbm9kZV9tb2R1bGVzXFwvQCg/OmFuZ3VsYXJ8c2NoZW1hdGljc3xuZ3VuaXZlcnNhbClcXC8vLnRlc3Qobm9ybWFsaXplZFNjaGVtYXRpY0ZpbGUpKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvLyBPdGhlcndpc2UgdXNlIHRoZSB2YWx1ZSBvZiB0aGUgc2NoZW1hdGljIGNvbGxlY3Rpb24ncyBlbmNhcHN1bGF0aW9uIG9wdGlvbiAoY3VycmVudCBkZWZhdWx0IG9mIGZhbHNlKVxuICByZXR1cm4gc2NoZW1hdGljRW5jYXBzdWxhdGlvbjtcbn1cblxuZXhwb3J0IGNsYXNzIFNjaGVtYXRpY0VuZ2luZUhvc3QgZXh0ZW5kcyBOb2RlTW9kdWxlc0VuZ2luZUhvc3Qge1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgX3Jlc29sdmVSZWZlcmVuY2VTdHJpbmcoXG4gICAgcmVmU3RyaW5nOiBzdHJpbmcsXG4gICAgcGFyZW50UGF0aDogc3RyaW5nLFxuICAgIGNvbGxlY3Rpb25EZXNjcmlwdGlvbj86IEZpbGVTeXN0ZW1Db2xsZWN0aW9uRGVzYyxcbiAgKSB7XG4gICAgY29uc3QgW3BhdGgsIG5hbWVdID0gcmVmU3RyaW5nLnNwbGl0KCcjJywgMik7XG4gICAgLy8gTWltaWMgYmVoYXZpb3Igb2YgRXhwb3J0U3RyaW5nUmVmIGNsYXNzIHVzZWQgaW4gZGVmYXVsdCBiZWhhdmlvclxuICAgIGNvbnN0IGZ1bGxQYXRoID0gcGF0aFswXSA9PT0gJy4nID8gcmVzb2x2ZShwYXJlbnRQYXRoID8/IHByb2Nlc3MuY3dkKCksIHBhdGgpIDogcGF0aDtcblxuICAgIGNvbnN0IHJlZmVyZW5jZVJlcXVpcmUgPSBjcmVhdGVSZXF1aXJlKF9fZmlsZW5hbWUpO1xuICAgIGNvbnN0IHNjaGVtYXRpY0ZpbGUgPSByZWZlcmVuY2VSZXF1aXJlLnJlc29sdmUoZnVsbFBhdGgsIHsgcGF0aHM6IFtwYXJlbnRQYXRoXSB9KTtcblxuICAgIGlmIChzaG91bGRXcmFwU2NoZW1hdGljKHNjaGVtYXRpY0ZpbGUsICEhY29sbGVjdGlvbkRlc2NyaXB0aW9uPy5lbmNhcHN1bGF0aW9uKSkge1xuICAgICAgY29uc3Qgc2NoZW1hdGljUGF0aCA9IGRpcm5hbWUoc2NoZW1hdGljRmlsZSk7XG5cbiAgICAgIGNvbnN0IG1vZHVsZUNhY2hlID0gbmV3IE1hcDxzdHJpbmcsIHVua25vd24+KCk7XG4gICAgICBjb25zdCBmYWN0b3J5SW5pdGlhbGl6ZXIgPSB3cmFwKFxuICAgICAgICBzY2hlbWF0aWNGaWxlLFxuICAgICAgICBzY2hlbWF0aWNQYXRoLFxuICAgICAgICBtb2R1bGVDYWNoZSxcbiAgICAgICAgbmFtZSB8fCAnZGVmYXVsdCcsXG4gICAgICApIGFzICgpID0+IFJ1bGVGYWN0b3J5PHt9PjtcblxuICAgICAgY29uc3QgZmFjdG9yeSA9IGZhY3RvcnlJbml0aWFsaXplcigpO1xuICAgICAgaWYgKCFmYWN0b3J5IHx8IHR5cGVvZiBmYWN0b3J5ICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4geyByZWY6IGZhY3RvcnksIHBhdGg6IHNjaGVtYXRpY1BhdGggfTtcbiAgICB9XG5cbiAgICAvLyBBbGwgb3RoZXIgc2NoZW1hdGljcyB1c2UgZGVmYXVsdCBiZWhhdmlvclxuICAgIHJldHVybiBzdXBlci5fcmVzb2x2ZVJlZmVyZW5jZVN0cmluZyhyZWZTdHJpbmcsIHBhcmVudFBhdGgsIGNvbGxlY3Rpb25EZXNjcmlwdGlvbik7XG4gIH1cbn1cblxuLyoqXG4gKiBNaW5pbWFsIHNoaW0gbW9kdWxlcyBmb3IgbGVnYWN5IGRlZXAgaW1wb3J0cyBvZiBgQHNjaGVtYXRpY3MvYW5ndWxhcmBcbiAqL1xuY29uc3QgbGVnYWN5TW9kdWxlczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7XG4gICdAc2NoZW1hdGljcy9hbmd1bGFyL3V0aWxpdHkvY29uZmlnJzoge1xuICAgIGdldFdvcmtzcGFjZShob3N0OiBUcmVlKSB7XG4gICAgICBjb25zdCBwYXRoID0gJy8uYW5ndWxhci5qc29uJztcbiAgICAgIGNvbnN0IGRhdGEgPSBob3N0LnJlYWQocGF0aCk7XG4gICAgICBpZiAoIWRhdGEpIHtcbiAgICAgICAgdGhyb3cgbmV3IFNjaGVtYXRpY3NFeGNlcHRpb24oYENvdWxkIG5vdCBmaW5kICgke3BhdGh9KWApO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcGFyc2VKc29uKGRhdGEudG9TdHJpbmcoKSwgW10sIHsgYWxsb3dUcmFpbGluZ0NvbW1hOiB0cnVlIH0pO1xuICAgIH0sXG4gIH0sXG4gICdAc2NoZW1hdGljcy9hbmd1bGFyL3V0aWxpdHkvcHJvamVjdCc6IHtcbiAgICBidWlsZERlZmF1bHRQYXRoKHByb2plY3Q6IHsgc291cmNlUm9vdD86IHN0cmluZzsgcm9vdDogc3RyaW5nOyBwcm9qZWN0VHlwZTogc3RyaW5nIH0pOiBzdHJpbmcge1xuICAgICAgY29uc3Qgcm9vdCA9IHByb2plY3Quc291cmNlUm9vdCA/IGAvJHtwcm9qZWN0LnNvdXJjZVJvb3R9L2AgOiBgLyR7cHJvamVjdC5yb290fS9zcmMvYDtcblxuICAgICAgcmV0dXJuIGAke3Jvb3R9JHtwcm9qZWN0LnByb2plY3RUeXBlID09PSAnYXBwbGljYXRpb24nID8gJ2FwcCcgOiAnbGliJ31gO1xuICAgIH0sXG4gIH0sXG59O1xuXG4vKipcbiAqIFdyYXAgYSBKYXZhU2NyaXB0IGZpbGUgaW4gYSBWTSBjb250ZXh0IHRvIGFsbG93IHNwZWNpZmljIEFuZ3VsYXIgZGVwZW5kZW5jaWVzIHRvIGJlIHJlZGlyZWN0ZWQuXG4gKiBUaGlzIFZNIHNldHVwIGlzIE9OTFkgaW50ZW5kZWQgdG8gcmVkaXJlY3QgZGVwZW5kZW5jaWVzLlxuICpcbiAqIEBwYXJhbSBzY2hlbWF0aWNGaWxlIEEgSmF2YVNjcmlwdCBzY2hlbWF0aWMgZmlsZSBwYXRoIHRoYXQgc2hvdWxkIGJlIHdyYXBwZWQuXG4gKiBAcGFyYW0gc2NoZW1hdGljRGlyZWN0b3J5IEEgZGlyZWN0b3J5IHRoYXQgd2lsbCBiZSB1c2VkIGFzIHRoZSBsb2NhdGlvbiBvZiB0aGUgSmF2YVNjcmlwdCBmaWxlLlxuICogQHBhcmFtIG1vZHVsZUNhY2hlIEEgbWFwIHRvIHVzZSBmb3IgY2FjaGluZyByZXBlYXQgbW9kdWxlIHVzYWdlIGFuZCBwcm9wZXIgYGluc3RhbmNlb2ZgIHN1cHBvcnQuXG4gKiBAcGFyYW0gZXhwb3J0TmFtZSBBbiBvcHRpb25hbCBuYW1lIG9mIGEgc3BlY2lmaWMgZXhwb3J0IHRvIHJldHVybi4gT3RoZXJ3aXNlLCByZXR1cm4gYWxsIGV4cG9ydHMuXG4gKi9cbmZ1bmN0aW9uIHdyYXAoXG4gIHNjaGVtYXRpY0ZpbGU6IHN0cmluZyxcbiAgc2NoZW1hdGljRGlyZWN0b3J5OiBzdHJpbmcsXG4gIG1vZHVsZUNhY2hlOiBNYXA8c3RyaW5nLCB1bmtub3duPixcbiAgZXhwb3J0TmFtZT86IHN0cmluZyxcbik6ICgpID0+IHVua25vd24ge1xuICBjb25zdCBob3N0UmVxdWlyZSA9IGNyZWF0ZVJlcXVpcmUoX19maWxlbmFtZSk7XG4gIGNvbnN0IHNjaGVtYXRpY1JlcXVpcmUgPSBjcmVhdGVSZXF1aXJlKHNjaGVtYXRpY0ZpbGUpO1xuXG4gIGNvbnN0IGN1c3RvbVJlcXVpcmUgPSBmdW5jdGlvbiAoaWQ6IHN0cmluZykge1xuICAgIGlmIChsZWdhY3lNb2R1bGVzW2lkXSkge1xuICAgICAgLy8gUHJvdmlkZSBjb21wYXRpYmlsaXR5IG1vZHVsZXMgZm9yIG9sZGVyIHZlcnNpb25zIG9mIEBhbmd1bGFyL2Nka1xuICAgICAgcmV0dXJuIGxlZ2FjeU1vZHVsZXNbaWRdO1xuICAgIH0gZWxzZSBpZiAoaWQuc3RhcnRzV2l0aCgnc2NoZW1hdGljczonKSkge1xuICAgICAgLy8gU2NoZW1hdGljcyBidWlsdC1pbiBtb2R1bGVzIHVzZSB0aGUgYHNjaGVtYXRpY3NgIHNjaGVtZSAoc2ltaWxhciB0byB0aGUgTm9kZS5qcyBgbm9kZWAgc2NoZW1lKVxuICAgICAgY29uc3QgYnVpbHRpbklkID0gaWQuc2xpY2UoMTEpO1xuICAgICAgY29uc3QgYnVpbHRpbk1vZHVsZSA9IGxvYWRCdWlsdGluTW9kdWxlKGJ1aWx0aW5JZCk7XG4gICAgICBpZiAoIWJ1aWx0aW5Nb2R1bGUpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgIGBVbmtub3duIHNjaGVtYXRpY3MgYnVpbHQtaW4gbW9kdWxlICcke2lkfScgcmVxdWVzdGVkIGZyb20gc2NoZW1hdGljICcke3NjaGVtYXRpY0ZpbGV9J2AsXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBidWlsdGluTW9kdWxlO1xuICAgIH0gZWxzZSBpZiAoaWQuc3RhcnRzV2l0aCgnQGFuZ3VsYXItZGV2a2l0LycpIHx8IGlkLnN0YXJ0c1dpdGgoJ0BzY2hlbWF0aWNzLycpKSB7XG4gICAgICAvLyBGaWxlcyBzaG91bGQgbm90IHJlZGlyZWN0IGBAYW5ndWxhci9jb3JlYCBhbmQgaW5zdGVhZCB1c2UgdGhlIGRpcmVjdFxuICAgICAgLy8gZGVwZW5kZW5jeSBpZiBhdmFpbGFibGUuIFRoaXMgYWxsb3dzIG9sZCBtYWpvciB2ZXJzaW9uIG1pZ3JhdGlvbnMgdG8gY29udGludWUgdG8gZnVuY3Rpb25cbiAgICAgIC8vIGV2ZW4gdGhvdWdoIHRoZSBsYXRlc3QgbWFqb3IgdmVyc2lvbiBtYXkgaGF2ZSBicmVha2luZyBjaGFuZ2VzIGluIGBAYW5ndWxhci9jb3JlYC5cbiAgICAgIGlmIChpZC5zdGFydHNXaXRoKCdAYW5ndWxhci1kZXZraXQvY29yZScpKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgcmV0dXJuIHNjaGVtYXRpY1JlcXVpcmUoaWQpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgYXNzZXJ0SXNFcnJvcihlKTtcbiAgICAgICAgICBpZiAoZS5jb2RlICE9PSAnTU9EVUxFX05PVF9GT1VORCcpIHtcbiAgICAgICAgICAgIHRocm93IGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFJlc29sdmUgZnJvbSBpbnNpZGUgdGhlIGBAYW5ndWxhci9jbGlgIHByb2plY3RcbiAgICAgIHJldHVybiBob3N0UmVxdWlyZShpZCk7XG4gICAgfSBlbHNlIGlmIChpZC5zdGFydHNXaXRoKCcuJykgfHwgaWQuc3RhcnRzV2l0aCgnQGFuZ3VsYXIvY2RrJykpIHtcbiAgICAgIC8vIFdyYXAgcmVsYXRpdmUgZmlsZXMgaW5zaWRlIHRoZSBzY2hlbWF0aWMgY29sbGVjdGlvblxuICAgICAgLy8gQWxzbyB3cmFwIGBAYW5ndWxhci9jZGtgLCBpdCBjb250YWlucyBoZWxwZXIgdXRpbGl0aWVzIHRoYXQgaW1wb3J0IGNvcmUgc2NoZW1hdGljIHBhY2thZ2VzXG5cbiAgICAgIC8vIFJlc29sdmUgZnJvbSB0aGUgb3JpZ2luYWwgZmlsZVxuICAgICAgY29uc3QgbW9kdWxlUGF0aCA9IHNjaGVtYXRpY1JlcXVpcmUucmVzb2x2ZShpZCk7XG5cbiAgICAgIC8vIFVzZSBjYWNoZWQgbW9kdWxlIGlmIGF2YWlsYWJsZVxuICAgICAgY29uc3QgY2FjaGVkTW9kdWxlID0gbW9kdWxlQ2FjaGUuZ2V0KG1vZHVsZVBhdGgpO1xuICAgICAgaWYgKGNhY2hlZE1vZHVsZSkge1xuICAgICAgICByZXR1cm4gY2FjaGVkTW9kdWxlO1xuICAgICAgfVxuXG4gICAgICAvLyBEbyBub3Qgd3JhcCB2ZW5kb3JlZCB0aGlyZC1wYXJ0eSBwYWNrYWdlcyBvciBKU09OIGZpbGVzXG4gICAgICBpZiAoXG4gICAgICAgICEvWy9cXFxcXW5vZGVfbW9kdWxlc1svXFxcXF1Ac2NoZW1hdGljc1svXFxcXF1hbmd1bGFyWy9cXFxcXXRoaXJkX3BhcnR5Wy9cXFxcXS8udGVzdChtb2R1bGVQYXRoKSAmJlxuICAgICAgICAhbW9kdWxlUGF0aC5lbmRzV2l0aCgnLmpzb24nKVxuICAgICAgKSB7XG4gICAgICAgIC8vIFdyYXAgbW9kdWxlIGFuZCBzYXZlIGluIGNhY2hlXG4gICAgICAgIGNvbnN0IHdyYXBwZWRNb2R1bGUgPSB3cmFwKG1vZHVsZVBhdGgsIGRpcm5hbWUobW9kdWxlUGF0aCksIG1vZHVsZUNhY2hlKSgpO1xuICAgICAgICBtb2R1bGVDYWNoZS5zZXQobW9kdWxlUGF0aCwgd3JhcHBlZE1vZHVsZSk7XG5cbiAgICAgICAgcmV0dXJuIHdyYXBwZWRNb2R1bGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxsIG90aGVycyBhcmUgcmVxdWlyZWQgZGlyZWN0bHkgZnJvbSB0aGUgb3JpZ2luYWwgZmlsZVxuICAgIHJldHVybiBzY2hlbWF0aWNSZXF1aXJlKGlkKTtcbiAgfTtcblxuICAvLyBTZXR1cCBhIHdyYXBwZXIgZnVuY3Rpb24gdG8gY2FwdHVyZSB0aGUgbW9kdWxlJ3MgZXhwb3J0c1xuICBjb25zdCBzY2hlbWF0aWNDb2RlID0gcmVhZEZpbGVTeW5jKHNjaGVtYXRpY0ZpbGUsICd1dGY4Jyk7XG4gIC8vIGBtb2R1bGVgIGlzIHJlcXVpcmVkIGR1ZSB0byBAYW5ndWxhci9sb2NhbGl6ZSBuZy1hZGQgYmVpbmcgaW4gVU1EIGZvcm1hdFxuICBjb25zdCBoZWFkZXJDb2RlID0gJyhmdW5jdGlvbigpIHtcXG52YXIgZXhwb3J0cyA9IHt9O1xcbnZhciBtb2R1bGUgPSB7IGV4cG9ydHMgfTtcXG4nO1xuICBjb25zdCBmb290ZXJDb2RlID0gZXhwb3J0TmFtZVxuICAgID8gYFxcbnJldHVybiBtb2R1bGUuZXhwb3J0c1snJHtleHBvcnROYW1lfSddO30pO2BcbiAgICA6ICdcXG5yZXR1cm4gbW9kdWxlLmV4cG9ydHM7fSk7JztcblxuICBjb25zdCBzY3JpcHQgPSBuZXcgU2NyaXB0KGhlYWRlckNvZGUgKyBzY2hlbWF0aWNDb2RlICsgZm9vdGVyQ29kZSwge1xuICAgIGZpbGVuYW1lOiBzY2hlbWF0aWNGaWxlLFxuICAgIGxpbmVPZmZzZXQ6IDMsXG4gIH0pO1xuXG4gIGNvbnN0IGNvbnRleHQgPSB7XG4gICAgX19kaXJuYW1lOiBzY2hlbWF0aWNEaXJlY3RvcnksXG4gICAgX19maWxlbmFtZTogc2NoZW1hdGljRmlsZSxcbiAgICBCdWZmZXIsXG4gICAgLy8gVGV4dEVuY29kZXIgaXMgdXNlZCBieSB0aGUgY29tcGlsZXIgdG8gZ2VuZXJhdGUgaTE4biBtZXNzYWdlIElEcy4gU2VlOlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvYmxvYi9tYWluL3BhY2thZ2VzL2NvbXBpbGVyL3NyYy9pMThuL2RpZ2VzdC50cyNMMTdcbiAgICAvLyBJdCBpcyByZWZlcmVuY2VkIGdsb2JhbGx5LCBiZWNhdXNlIGl0IG1heSBiZSBydW4gZWl0aGVyIG9uIHRoZSBicm93c2VyIG9yIHRoZSBzZXJ2ZXIuXG4gICAgLy8gVXN1YWxseSBOb2RlIGV4cG9zZXMgaXQgZ2xvYmFsbHksIGJ1dCBpbiBvcmRlciBmb3IgaXQgdG8gd29yaywgb3VyIGN1c3RvbSBjb250ZXh0XG4gICAgLy8gaGFzIHRvIGV4cG9zZSBpdCB0b28uIElzc3VlIGNvbnRleHQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzQ4OTQwLlxuICAgIFRleHRFbmNvZGVyLFxuICAgIGNvbnNvbGUsXG4gICAgcHJvY2VzcyxcbiAgICBnZXQgZ2xvYmFsKCkge1xuICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfSxcbiAgICByZXF1aXJlOiBjdXN0b21SZXF1aXJlLFxuICB9O1xuXG4gIGNvbnN0IGV4cG9ydHNGYWN0b3J5ID0gc2NyaXB0LnJ1bkluTmV3Q29udGV4dChjb250ZXh0KTtcblxuICByZXR1cm4gZXhwb3J0c0ZhY3Rvcnk7XG59XG5cbmZ1bmN0aW9uIGxvYWRCdWlsdGluTW9kdWxlKGlkOiBzdHJpbmcpOiB1bmtub3duIHtcbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cbiJdfQ==
|
|
@@ -172,6 +172,10 @@ function normalizeOptions(rawOptions, location = process.cwd(), existingNormaliz
|
|
|
172
172
|
catch (_b) { }
|
|
173
173
|
}
|
|
174
174
|
break;
|
|
175
|
+
case 'before':
|
|
176
|
+
options['before'] =
|
|
177
|
+
typeof substitutedValue === 'string' ? new Date(substitutedValue) : substitutedValue;
|
|
178
|
+
break;
|
|
175
179
|
default:
|
|
176
180
|
options[key] = substitutedValue;
|
|
177
181
|
break;
|
|
@@ -241,4 +245,4 @@ async function getNpmPackageJson(packageName, logger, options = {}) {
|
|
|
241
245
|
return response;
|
|
242
246
|
}
|
|
243
247
|
exports.getNpmPackageJson = getNpmPackageJson;
|
|
244
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFja2FnZS1tZXRhZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXIvY2xpL3NyYy91dGlsaXRpZXMvcGFja2FnZS1tZXRhZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUdILDREQUE4QztBQUM5QywyQkFBOEM7QUFDOUMseUNBQTJCO0FBQzNCLDJCQUE2QjtBQUU3QiwyQ0FBNkI7QUEyQzdCLElBQUksS0FBNEIsQ0FBQztBQUNqQyxNQUFNLG1CQUFtQixHQUFHLElBQUksR0FBRyxFQUFzRCxDQUFDO0FBRTFGLFNBQVMsV0FBVyxDQUFDLE1BQXlCLEVBQUUsU0FBa0IsRUFBRSxPQUFnQjtJQUNsRixJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ1YsSUFBSTtZQUNGLEtBQUssR0FBRyxXQUFXLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztTQUM3QztRQUFDLFdBQU0sR0FBRTtRQUVWLElBQUksU0FBUyxFQUFFO1lBQ2IsSUFBSTtnQkFDRixLQUFLLEdBQUcsRUFBRSxHQUFHLEtBQUssRUFBRSxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxFQUFFLENBQUM7YUFDN0Q7WUFBQyxXQUFNLEdBQUU7U0FDWDtLQUNGO0FBQ0gsQ0FBQztBQUVELFNBQVMsV0FBVyxDQUNsQixNQUF5QixFQUN6QixJQUFJLEdBQUcsS0FBSyxFQUNaLGNBQWMsR0FBRyxLQUFLOztJQUV0QixNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDMUIsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUMvQyxNQUFNLFdBQVcsR0FBRyxHQUFHLEdBQUcsWUFBWSxDQUFD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SSxFQUFFO0lBRU4sTUFBTSxjQUFjLEdBQUcsbUJBQW1CLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzVELElBQUksY0FBYyxFQUFFO1FBQ2xCLE9BQU8sY0FBYyxDQUFDO0tBQ3ZCO0lBRUQsTUFBTSxFQUFFLFNBQVMsR0FBRyxLQUFLLEVBQUUsT0FBTyxHQUFHLEtBQUssRUFBRSxRQUFRLEVBQUUsR0FBRyxPQUFPLENBQUM7SUFDakUsV0FBVyxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDeEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLHdEQUFhLFFBQVEsR0FBQyxDQUFDO0lBQzdDLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxXQUFXLEVBQUU7UUFDdEMsWUFBWSxFQUFFLElBQUk7UUFDbEIsR0FBRyxLQUFLO1FBQ1IsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0tBQ2xDLENBQUMsQ0FBQztJQUVILG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFFL0MsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQztBQTFCRCw4Q0EwQkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHsgbG9nZ2luZyB9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9jb3JlJztcbmltcG9ydCAqIGFzIGxvY2tmaWxlIGZyb20gJ0B5YXJucGtnL2xvY2tmaWxlJztcbmltcG9ydCB7IGV4aXN0c1N5bmMsIHJlYWRGaWxlU3luYyB9IGZyb20gJ2ZzJztcbmltcG9ydCAqIGFzIGluaSBmcm9tICdpbmknO1xuaW1wb3J0IHsgaG9tZWRpciB9IGZyb20gJ29zJztcbmltcG9ydCB0eXBlIHsgTWFuaWZlc3QsIFBhY2t1bWVudCB9IGZyb20gJ3BhY290ZSc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBhY2thZ2VNZXRhZGF0YSBleHRlbmRzIFBhY2t1bWVudCwgTmdQYWNrYWdlTWFuaWZlc3RQcm9wZXJ0aWVzIHtcbiAgdGFnczogUmVjb3JkPHN0cmluZywgUGFja2FnZU1hbmlmZXN0PjtcbiAgdmVyc2lvbnM6IFJlY29yZDxzdHJpbmcsIFBhY2thZ2VNYW5pZmVzdD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTnBtUmVwb3NpdG9yeVBhY2thZ2VKc29uIGV4dGVuZHMgUGFja2FnZU1ldGFkYXRhIHtcbiAgcmVxdWVzdGVkTmFtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgTmdBZGRTYXZlRGVwZW5kZW5jeSA9ICdkZXBlbmRlbmNpZXMnIHwgJ2RldkRlcGVuZGVuY2llcycgfCBib29sZWFuO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBhY2thZ2VJZGVudGlmaWVyIHtcbiAgdHlwZTogJ2dpdCcgfCAndGFnJyB8ICd2ZXJzaW9uJyB8ICdyYW5nZScgfCAnZmlsZScgfCAnZGlyZWN0b3J5JyB8ICdyZW1vdGUnO1xuICBuYW1lOiBzdHJpbmc7XG4gIHNjb3BlOiBzdHJpbmcgfCBudWxsO1xuICByZWdpc3RyeTogYm9vbGVhbjtcbiAgcmF3OiBzdHJpbmc7XG4gIGZldGNoU3BlYzogc3RyaW5nO1xuICByYXdTcGVjOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmdQYWNrYWdlTWFuaWZlc3RQcm9wZXJ0aWVzIHtcbiAgJ25nLWFkZCc/OiB7XG4gICAgc2F2ZT86IE5nQWRkU2F2ZURlcGVuZGVuY3k7XG4gIH07XG4gICduZy11cGRhdGUnPzoge1xuICAgIG1pZ3JhdGlvbnM/OiBzdHJpbmc7XG4gICAgcGFja2FnZUdyb3VwPzogc3RyaW5nW10gfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAgIHBhY2thZ2VHcm91cE5hbWU/OiBzdHJpbmc7XG4gICAgcmVxdWlyZW1lbnRzPzogc3RyaW5nW10gfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhY2thZ2VNYW5pZmVzdCBleHRlbmRzIE1hbmlmZXN0LCBOZ1BhY2thZ2VNYW5pZmVzdFByb3BlcnRpZXMge1xuICBkZXByZWNhdGVkPzogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIFBhY2thZ2VNYW5hZ2VyT3B0aW9ucyBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+IHtcbiAgZm9yY2VBdXRoPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG59XG5cbmxldCBucG1yYzogUGFja2FnZU1hbmFnZXJPcHRpb25zO1xuY29uc3QgbnBtUGFja2FnZUpzb25DYWNoZSA9IG5ldyBNYXA8c3RyaW5nLCBQcm9taXNlPFBhcnRpYWw8TnBtUmVwb3NpdG9yeVBhY2thZ2VKc29uPj4+KCk7XG5cbmZ1bmN0aW9uIGVuc3VyZU5wbXJjKGxvZ2dlcjogbG9nZ2luZy5Mb2dnZXJBcGksIHVzaW5nWWFybjogYm9vbGVhbiwgdmVyYm9zZTogYm9vbGVhbik6IHZvaWQge1xuICBpZiAoIW5wbXJjKSB7XG4gICAgdHJ5IHtcbiAgICAgIG5wbXJjID0gcmVhZE9wdGlvbnMobG9nZ2VyLCBmYWxzZSwgdmVyYm9zZSk7XG4gICAgfSBjYXRjaCB7fVxuXG4gICAgaWYgKHVzaW5nWWFybikge1xuICAgICAgdHJ5IHtcbiAgICAgICAgbnBtcmMgPSB7IC4uLm5wbXJjLCAuLi5yZWFkT3B0aW9ucyhsb2dnZXIsIHRydWUsIHZlcmJvc2UpIH07XG4gICAgICB9IGNhdGNoIHt9XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIHJlYWRPcHRpb25zKFxuICBsb2dnZXI6IGxvZ2dpbmcuTG9nZ2VyQXBpLFxuICB5YXJuID0gZmFsc2UsXG4gIHNob3dQb3RlbnRpYWxzID0gZmFsc2UsXG4pOiBQYWNrYWdlTWFuYWdlck9wdGlvbnMge1xuICBjb25zdCBjd2QgPSBwcm9jZXNzLmN3ZCgpO1xuICBjb25zdCBiYXNlRmlsZW5hbWUgPSB5YXJuID8gJ3lhcm5yYycgOiAnbnBtcmMnO1xuICBjb25zdCBkb3RGaWxlbmFtZSA9ICcuJyArIGJhc2VGaWxlbmFtZTtcblxuICBsZXQgZ2xvYmFsUHJlZml4OiBzdHJpbmc7XG4gIGlmIChwcm9jZXNzLmVudi5QUkVGSVgpIHtcbiAgICBnbG9iYWxQcmVmaXggPSBwcm9jZXNzLmVudi5QUkVGSVg7XG4gIH0gZWxzZSB7XG4gICAgZ2xvYmFsUHJlZml4ID0gcGF0aC5kaXJuYW1lKHByb2Nlc3MuZXhlY1BhdGgpO1xuICAgIGlmIChwcm9jZXNzLnBsYXRmb3JtICE9PSAnd2luMzInKSB7XG4gICAgICBnbG9iYWxQcmVmaXggPSBwYXRoLmRpcm5hbWUoZ2xvYmFsUHJlZml4KTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBkZWZhdWx0Q29uZmlnTG9jYXRpb25zID0gW1xuICAgICgheWFybiAmJiBwcm9jZXNzLmVudi5OUE1fQ09ORklHX0dMT0JBTENPTkZJRykgfHwgcGF0aC5qb2luKGdsb2JhbFByZWZpeCwgJ2V0YycsIGJhc2VGaWxlbmFtZSksXG4gICAgKCF5YXJuICYmIHByb2Nlc3MuZW52Lk5QTV9DT05GSUdfVVNFUkNPTkZJRykgfHwgcGF0aC5qb2luKGhvbWVkaXIoKSwgZG90RmlsZW5hbWUpLFxuICBdO1xuXG4gIGNvbnN0IHByb2plY3RDb25maWdMb2NhdGlvbnM6IHN0cmluZ1tdID0gW3BhdGguam9pbihjd2QsIGRvdEZpbGVuYW1lKV07XG4gIGlmICh5YXJuKSB7XG4gICAgY29uc3Qgcm9vdCA9IHBhdGgucGFyc2UoY3dkKS5yb290O1xuICAgIGZvciAobGV0IGN1ckRpciA9IHBhdGguZGlybmFtZShjd2QpOyBjdXJEaXIgJiYgY3VyRGlyICE9PSByb290OyBjdXJEaXIgPSBwYXRoLmRpcm5hbWUoY3VyRGlyKSkge1xuICAgICAgcHJvamVjdENvbmZpZ0xvY2F0aW9ucy51bnNoaWZ0KHBhdGguam9pbihjdXJEaXIsIGRvdEZpbGVuYW1lKSk7XG4gICAgfVxuICB9XG5cbiAgaWYgKHNob3dQb3RlbnRpYWxzKSB7XG4gICAgbG9nZ2VyLmluZm8oYExvY2F0aW5nIHBvdGVudGlhbCAke2Jhc2VGaWxlbmFtZX0gZmlsZXM6YCk7XG4gIH1cblxuICBsZXQgcmNPcHRpb25zOiBQYWNrYWdlTWFuYWdlck9wdGlvbnMgPSB7fTtcbiAgZm9yIChjb25zdCBsb2NhdGlvbiBvZiBbLi4uZGVmYXVsdENvbmZpZ0xvY2F0aW9ucywgLi4ucHJvamVjdENvbmZpZ0xvY2F0aW9uc10pIHtcbiAgICBpZiAoZXhpc3RzU3luYyhsb2NhdGlvbikpIHtcbiAgICAgIGlmIChzaG93UG90ZW50aWFscykge1xuICAgICAgICBsb2dnZXIuaW5mbyhgVHJ5aW5nICcke2xvY2F0aW9ufScuLi5mb3VuZC5gKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZGF0YSA9IHJlYWRGaWxlU3luYyhsb2NhdGlvbiwgJ3V0ZjgnKTtcbiAgICAgIC8vIE5vcm1hbGl6ZSBSQyBvcHRpb25zIHRoYXQgYXJlIG5lZWRlZCBieSAnbnBtLXJlZ2lzdHJ5LWZldGNoJy5cbiAgICAgIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL25wbS9ucG0tcmVnaXN0cnktZmV0Y2gvYmxvYi9lYmRkYmU3OGE1ZjY3MTE4YzFmN2FmMmUwMmM4YTIyYmNhZjllODUwL2luZGV4LmpzI0w5OS1MMTI2XG4gICAgICBjb25zdCByY0NvbmZpZzogUGFja2FnZU1hbmFnZXJPcHRpb25zID0geWFybiA/IGxvY2tmaWxlLnBhcnNlKGRhdGEpIDogaW5pLnBhcnNlKGRhdGEpO1xuXG4gICAgICByY09wdGlvbnMgPSBub3JtYWxpemVPcHRpb25zKHJjQ29uZmlnLCBsb2NhdGlvbiwgcmNPcHRpb25zKTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBlbnZWYXJpYWJsZXNPcHRpb25zOiBQYWNrYWdlTWFuYWdlck9wdGlvbnMgPSB7fTtcbiAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMocHJvY2Vzcy5lbnYpKSB7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgbGV0IG5vcm1hbGl6ZWROYW1lID0ga2V5LnRvTG93ZXJDYXNlKCk7XG4gICAgaWYgKG5vcm1hbGl6ZWROYW1lLnN0YXJ0c1dpdGgoJ25wbV9jb25maWdfJykpIHtcbiAgICAgIG5vcm1hbGl6ZWROYW1lID0gbm9ybWFsaXplZE5hbWUuc3Vic3RyaW5nKDExKTtcbiAgICB9IGVsc2UgaWYgKHlhcm4gJiYgbm9ybWFsaXplZE5hbWUuc3RhcnRzV2l0aCgneWFybl8nKSkge1xuICAgICAgbm9ybWFsaXplZE5hbWUgPSBub3JtYWxpemVkTmFtZS5zdWJzdHJpbmcoNSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIG5vcm1hbGl6ZWROYW1lID09PSAncmVnaXN0cnknICYmXG4gICAgICByY09wdGlvbnNbJ3JlZ2lzdHJ5J10gJiZcbiAgICAgIHZhbHVlID09PSAnaHR0cHM6Ly9yZWdpc3RyeS55YXJucGtnLmNvbScgJiZcbiAgICAgIHByb2Nlc3MuZW52WyducG1fY29uZmlnX3VzZXJfYWdlbnQnXT8uaW5jbHVkZXMoJ3lhcm4nKVxuICAgICkge1xuICAgICAgLy8gV2hlbiBydW5uaW5nIGBuZyB1cGRhdGVgIHVzaW5nIHlhcm4gKGB5YXJuIG5nIHVwZGF0ZWApLCB5YXJuIHdpbGwgc2V0IHRoZSBgbnBtX2NvbmZpZ19yZWdpc3RyeWAgZW52IHZhcmlhYmxlIHRvIGBodHRwczovL3JlZ2lzdHJ5Lnlhcm5wa2cuY29tYFxuICAgICAgLy8gZXZlbiB3aGVuIGFuIFJDIGZpbGUgaXMgcHJlc2VudCB3aXRoIGEgZGlmZmVyZW50IHJlcG9zaXRvcnkuXG4gICAgICAvLyBUaGlzIGNhdXNlcyB0aGUgcmVnaXN0cnkgc3BlY2lmaWVkIGluIHRoZSBSQyB0byBhbHdheXMgYmUgb3ZlcnJpZGRlbiB3aXRoIHRoZSBiZWxvdyBsb2dpYy5cbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cblxuICAgIG5vcm1hbGl6ZWROYW1lID0gbm9ybWFsaXplZE5hbWUucmVwbGFjZSgvKD8hXilfL2csICctJyk7IC8vIGRvbid0IHJlcGxhY2UgXyBhdCB0aGUgc3RhcnQgb2YgdGhlIGtleS5zXG4gICAgZW52VmFyaWFibGVzT3B0aW9uc1tub3JtYWxpemVkTmFtZV0gPSB2YWx1ZTtcbiAgfVxuXG4gIHJldHVybiBub3JtYWxpemVPcHRpb25zKGVudlZhcmlhYmxlc09wdGlvbnMsIHVuZGVmaW5lZCwgcmNPcHRpb25zKTtcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplT3B0aW9ucyhcbiAgcmF3T3B0aW9uczogUGFja2FnZU1hbmFnZXJPcHRpb25zLFxuICBsb2NhdGlvbiA9IHByb2Nlc3MuY3dkKCksXG4gIGV4aXN0aW5nTm9ybWFsaXplZE9wdGlvbnM6IFBhY2thZ2VNYW5hZ2VyT3B0aW9ucyA9IHt9LFxuKTogUGFja2FnZU1hbmFnZXJPcHRpb25zIHtcbiAgY29uc3Qgb3B0aW9ucyA9IHsgLi4uZXhpc3RpbmdOb3JtYWxpemVkT3B0aW9ucyB9O1xuXG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKHJhd09wdGlvbnMpKSB7XG4gICAgbGV0IHN1YnN0aXR1dGVkVmFsdWUgPSB2YWx1ZTtcblxuICAgIC8vIFN1YnN0aXR1dGUgYW55IGVudmlyb25tZW50IHZhcmlhYmxlIHJlZmVyZW5jZXMuXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHN1YnN0aXR1dGVkVmFsdWUgPSB2YWx1ZS5yZXBsYWNlKC9cXCRcXHsoW159XSspXFx9LywgKF8sIG5hbWUpID0+IHByb2Nlc3MuZW52W25hbWVdIHx8ICcnKTtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKGtleSkge1xuICAgICAgLy8gVW5sZXNzIGF1dGggb3B0aW9ucyBhcmUgc2NvcGUgd2l0aCB0aGUgcmVnaXN0cnkgdXJsIGl0IGFwcGVhcnMgdGhhdCBucG0tcmVnaXN0cnktZmV0Y2ggaWdub3JlcyB0aGVtLFxuICAgICAgLy8gZXZlbiB0aG91Z2ggdGhleSBhcmUgZG9jdW1lbnRlZC5cbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ucG0vbnBtLXJlZ2lzdHJ5LWZldGNoL2Jsb2IvODk1NGY2MWQ4ZDcwM2U1ZWI3ZjNkOTNjOWI0MDQ4OGY4YjFiNjJhYy9SRUFETUUubWRcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ucG0vbnBtLXJlZ2lzdHJ5LWZldGNoL2Jsb2IvODk1NGY2MWQ4ZDcwM2U1ZWI3ZjNkOTNjOWI0MDQ4OGY4YjFiNjJhYy9hdXRoLmpzI0w0NS1MOTFcbiAgICAgIGNhc2UgJ19hdXRoVG9rZW4nOlxuICAgICAgY2FzZSAndG9rZW4nOlxuICAgICAgY2FzZSAndXNlcm5hbWUnOlxuICAgICAgY2FzZSAncGFzc3dvcmQnOlxuICAgICAgY2FzZSAnX2F1dGgnOlxuICAgICAgY2FzZSAnYXV0aCc6XG4gICAgICAgIG9wdGlvbnNbJ2ZvcmNlQXV0aCddID8/PSB7fTtcbiAgICAgICAgb3B0aW9uc1snZm9yY2VBdXRoJ11ba2V5XSA9IHN1YnN0aXR1dGVkVmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnbm9wcm94eSc6XG4gICAgICBjYXNlICduby1wcm94eSc6XG4gICAgICAgIG9wdGlvbnNbJ25vUHJveHknXSA9IHN1YnN0aXR1dGVkVmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnbWF4c29ja2V0cyc6XG4gICAgICAgIG9wdGlvbnNbJ21heFNvY2tldHMnXSA9IHN1YnN0aXR1dGVkVmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnaHR0cHMtcHJveHknOlxuICAgICAgY2FzZSAncHJveHknOlxuICAgICAgICBvcHRpb25zWydwcm94eSddID0gc3Vic3RpdHV0ZWRWYWx1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdzdHJpY3Qtc3NsJzpcbiAgICAgICAgb3B0aW9uc1snc3RyaWN0U1NMJ10gPSBzdWJzdGl0dXRlZFZhbHVlO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2xvY2FsLWFkZHJlc3MnOlxuICAgICAgICBvcHRpb25zWydsb2NhbEFkZHJlc3MnXSA9IHN1YnN0aXR1dGVkVmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnY2FmaWxlJzpcbiAgICAgICAgaWYgKHR5cGVvZiBzdWJzdGl0dXRlZFZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgICAgIGNvbnN0IGNhZmlsZSA9IHBhdGgucmVzb2x2ZShwYXRoLmRpcm5hbWUobG9jYXRpb24pLCBzdWJzdGl0dXRlZFZhbHVlKTtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgb3B0aW9uc1snY2EnXSA9IHJlYWRGaWxlU3luYyhjYWZpbGUsICd1dGY4JykucmVwbGFjZSgvXFxyP1xcbi9nLCAnXFxuJyk7XG4gICAgICAgICAgfSBjYXRjaCB7fVxuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgb3B0aW9uc1trZXldID0gc3Vic3RpdHV0ZWRWYWx1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG9wdGlvbnM7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBmZXRjaFBhY2thZ2VNZXRhZGF0YShcbiAgbmFtZTogc3RyaW5nLFxuICBsb2dnZXI6IGxvZ2dpbmcuTG9nZ2VyQXBpLFxuICBvcHRpb25zPzoge1xuICAgIHJlZ2lzdHJ5Pzogc3RyaW5nO1xuICAgIHVzaW5nWWFybj86IGJvb2xlYW47XG4gICAgdmVyYm9zZT86IGJvb2xlYW47XG4gIH0sXG4pOiBQcm9taXNlPFBhY2thZ2VNZXRhZGF0YT4ge1xuICBjb25zdCB7IHVzaW5nWWFybiwgdmVyYm9zZSwgcmVnaXN0cnkgfSA9IHtcbiAgICByZWdpc3RyeTogdW5kZWZpbmVkLFxuICAgIHVzaW5nWWFybjogZmFsc2UsXG4gICAgdmVyYm9zZTogZmFsc2UsXG4gICAgLi4ub3B0aW9ucyxcbiAgfTtcblxuICBlbnN1cmVOcG1yYyhsb2dnZXIsIHVzaW5nWWFybiwgdmVyYm9zZSk7XG4gIGNvbnN0IHsgcGFja3VtZW50IH0gPSBhd2FpdCBpbXBvcnQoJ3BhY290ZScpO1xuICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHBhY2t1bWVudChuYW1lLCB7XG4gICAgZnVsbE1ldGFkYXRhOiB0cnVlLFxuICAgIC4uLm5wbXJjLFxuICAgIC4uLihyZWdpc3RyeSA/IHsgcmVnaXN0cnkgfSA6IHt9KSxcbiAgfSk7XG5cbiAgLy8gTm9ybWFsaXplIHRoZSByZXNwb25zZVxuICBjb25zdCBtZXRhZGF0YTogUGFja2FnZU1ldGFkYXRhID0ge1xuICAgIC4uLnJlc3BvbnNlLFxuICAgIHRhZ3M6IHt9LFxuICB9O1xuXG4gIGlmIChyZXNwb25zZVsnZGlzdC10YWdzJ10pIHtcbiAgICBmb3IgKGNvbnN0IFt0YWcsIHZlcnNpb25dIG9mIE9iamVjdC5lbnRyaWVzKHJlc3BvbnNlWydkaXN0LXRhZ3MnXSkpIHtcbiAgICAgIGNvbnN0IG1hbmlmZXN0ID0gbWV0YWRhdGEudmVyc2lvbnNbdmVyc2lvbl07XG4gICAgICBpZiAobWFuaWZlc3QpIHtcbiAgICAgICAgbWV0YWRhdGEudGFnc1t0YWddID0gbWFuaWZlc3Q7XG4gICAgICB9IGVsc2UgaWYgKHZlcmJvc2UpIHtcbiAgICAgICAgbG9nZ2VyLndhcm4oYFBhY2thZ2UgJHttZXRhZGF0YS5uYW1lfSBoYXMgaW52YWxpZCB2ZXJzaW9uIG1ldGFkYXRhIGZvciAnJHt0YWd9Jy5gKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gbWV0YWRhdGE7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBmZXRjaFBhY2thZ2VNYW5pZmVzdChcbiAgbmFtZTogc3RyaW5nLFxuICBsb2dnZXI6IGxvZ2dpbmcuTG9nZ2VyQXBpLFxuICBvcHRpb25zOiB7XG4gICAgcmVnaXN0cnk/OiBzdHJpbmc7XG4gICAgdXNpbmdZYXJuPzogYm9vbGVhbjtcbiAgICB2ZXJib3NlPzogYm9vbGVhbjtcbiAgfSA9IHt9LFxuKTogUHJvbWlzZTxQYWNrYWdlTWFuaWZlc3Q+IHtcbiAgY29uc3QgeyB1c2luZ1lhcm4gPSBmYWxzZSwgdmVyYm9zZSA9IGZhbHNlLCByZWdpc3RyeSB9ID0gb3B0aW9ucztcbiAgZW5zdXJlTnBtcmMobG9nZ2VyLCB1c2luZ1lhcm4sIHZlcmJvc2UpO1xuICBjb25zdCB7IG1hbmlmZXN0IH0gPSBhd2FpdCBpbXBvcnQoJ3BhY290ZScpO1xuXG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgbWFuaWZlc3QobmFtZSwge1xuICAgIGZ1bGxNZXRhZGF0YTogdHJ1ZSxcbiAgICAuLi5ucG1yYyxcbiAgICAuLi4ocmVnaXN0cnkgPyB7IHJlZ2lzdHJ5IH0gOiB7fSksXG4gIH0pO1xuXG4gIHJldHVybiByZXNwb25zZTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldE5wbVBhY2thZ2VKc29uKFxuICBwYWNrYWdlTmFtZTogc3RyaW5nLFxuICBsb2dnZXI6IGxvZ2dpbmcuTG9nZ2VyQXBpLFxuICBvcHRpb25zOiB7XG4gICAgcmVnaXN0cnk/OiBzdHJpbmc7XG4gICAgdXNpbmdZYXJuPzogYm9vbGVhbjtcbiAgICB2ZXJib3NlPzogYm9vbGVhbjtcbiAgfSA9IHt9LFxuKTogUHJvbWlzZTxQYXJ0aWFsPE5wbVJlcG9zaXRvcnlQYWNrYWdlSnNvbj4+IHtcbiAgY29uc3QgY2FjaGVkUmVzcG9uc2UgPSBucG1QYWNrYWdlSnNvbkNhY2hlLmdldChwYWNrYWdlTmFtZSk7XG4gIGlmIChjYWNoZWRSZXNwb25zZSkge1xuICAgIHJldHVybiBjYWNoZWRSZXNwb25zZTtcbiAgfVxuXG4gIGNvbnN0IHsgdXNpbmdZYXJuID0gZmFsc2UsIHZlcmJvc2UgPSBmYWxzZSwgcmVnaXN0cnkgfSA9IG9wdGlvbnM7XG4gIGVuc3VyZU5wbXJjKGxvZ2dlciwgdXNpbmdZYXJuLCB2ZXJib3NlKTtcbiAgY29uc3QgeyBwYWNrdW1lbnQgfSA9IGF3YWl0IGltcG9ydCgncGFjb3RlJyk7XG4gIGNvbnN0IHJlc3BvbnNlID0gcGFja3VtZW50KHBhY2thZ2VOYW1lLCB7XG4gICAgZnVsbE1ldGFkYXRhOiB0cnVlLFxuICAgIC4uLm5wbXJjLFxuICAgIC4uLihyZWdpc3RyeSA/IHsgcmVnaXN0cnkgfSA6IHt9KSxcbiAgfSk7XG5cbiAgbnBtUGFja2FnZUpzb25DYWNoZS5zZXQocGFja2FnZU5hbWUsIHJlc3BvbnNlKTtcblxuICByZXR1cm4gcmVzcG9uc2U7XG59XG4iXX0=
|
|
248
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFja2FnZS1tZXRhZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXIvY2xpL3NyYy91dGlsaXRpZXMvcGFja2FnZS1tZXRhZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUdILDREQUE4QztBQUM5QywyQkFBOEM7QUFDOUMseUNBQTJCO0FBQzNCLDJCQUE2QjtBQUU3QiwyQ0FBNkI7QUEyQzdCLElBQUksS0FBNEIsQ0FBQztBQUNqQyxNQUFNLG1CQUFtQixHQUFHLElBQUksR0FBRyxFQUFzRCxDQUFDO0FBRTFGLFNBQVMsV0FBVyxDQUFDLE1BQXlCLEVBQUUsU0FBa0IsRUFBRSxPQUFnQjtJQUNsRixJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ1YsSUFBSTtZQUNGLEtBQUssR0FBRyxXQUFXLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztTQUM3QztRQUFDLFdBQU0sR0FBRTtRQUVWLElBQUksU0FBUyxFQUFFO1lBQ2IsSUFBSTtnQkFDRixLQUFLLEdBQUcsRUFBRSxHQUFHLEtBQUssRUFBRSxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxFQUFFLENBQUM7YUFDN0Q7WUFBQyxXQUFNLEdBQUU7U0FDWDtLQUNGO0FBQ0gsQ0FBQztBQUVELFNBQVMsV0FBVyxDQUNsQixNQUF5QixFQUN6QixJQUFJLEdBQUcsS0FBSyxFQUNaLGNBQWMsR0FBRyxLQUFLOztJQUV0QixNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDMUIsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUMvQyxNQUFNLFdBQVcsR0FBRyxHQUFHLEdBQUcsWUFBWSxDQUFD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UUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztLQUNsQyxDQUFDLENBQUM7SUFFSCxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDO0FBcEJELG9EQW9CQztBQUVNLEtBQUssVUFBVSxpQkFBaUIsQ0FDckMsV0FBbUIsRUFDbkIsTUFBeUIsRUFDekIsVUFJSSxFQUFFO0lBRU4sTUFBTSxjQUFjLEdBQUcsbUJBQW1CLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzVELElBQUksY0FBYyxFQUFFO1FBQ2xCLE9BQU8sY0FBYyxDQUFDO0tBQ3ZCO0lBRUQsTUFBTSxFQUFFLFNBQVMsR0FBRyxLQUFLLEVBQUUsT0FBTyxHQUFHLEtBQUssRUFBRSxRQUFRLEVBQUUsR0FBRyxPQUFPLENBQUM7SUFDakUsV0FBVyxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDeEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLHdEQUFhLFFBQVEsR0FBQyxDQUFDO0lBQzdDLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxXQUFXLEVBQUU7UUFDdEMsWUFBWSxFQUFFLElBQUk7UUFDbEIsR0FBRyxLQUFLO1FBQ1IsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0tBQ2xDLENBQUMsQ0FBQztJQUVILG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFFL0MsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQztBQTFCRCw4Q0EwQkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHsgbG9nZ2luZyB9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9jb3JlJztcbmltcG9ydCAqIGFzIGxvY2tmaWxlIGZyb20gJ0B5YXJucGtnL2xvY2tmaWxlJztcbmltcG9ydCB7IGV4aXN0c1N5bmMsIHJlYWRGaWxlU3luYyB9IGZyb20gJ2ZzJztcbmltcG9ydCAqIGFzIGluaSBmcm9tICdpbmknO1xuaW1wb3J0IHsgaG9tZWRpciB9IGZyb20gJ29zJztcbmltcG9ydCB0eXBlIHsgTWFuaWZlc3QsIFBhY2t1bWVudCB9IGZyb20gJ3BhY290ZSc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBhY2thZ2VNZXRhZGF0YSBleHRlbmRzIFBhY2t1bWVudCwgTmdQYWNrYWdlTWFuaWZlc3RQcm9wZXJ0aWVzIHtcbiAgdGFnczogUmVjb3JkPHN0cmluZywgUGFja2FnZU1hbmlmZXN0PjtcbiAgdmVyc2lvbnM6IFJlY29yZDxzdHJpbmcsIFBhY2thZ2VNYW5pZmVzdD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTnBtUmVwb3NpdG9yeVBhY2thZ2VKc29uIGV4dGVuZHMgUGFja2FnZU1ldGFkYXRhIHtcbiAgcmVxdWVzdGVkTmFtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgTmdBZGRTYXZlRGVwZW5kZW5jeSA9ICdkZXBlbmRlbmNpZXMnIHwgJ2RldkRlcGVuZGVuY2llcycgfCBib29sZWFuO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBhY2thZ2VJZGVudGlmaWVyIHtcbiAgdHlwZTogJ2dpdCcgfCAndGFnJyB8ICd2ZXJzaW9uJyB8ICdyYW5nZScgfCAnZmlsZScgfCAnZGlyZWN0b3J5JyB8ICdyZW1vdGUnO1xuICBuYW1lOiBzdHJpbmc7XG4gIHNjb3BlOiBzdHJpbmcgfCBudWxsO1xuICByZWdpc3RyeTogYm9vbGVhbjtcbiAgcmF3OiBzdHJpbmc7XG4gIGZldGNoU3BlYzogc3RyaW5nO1xuICByYXdTcGVjOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmdQYWNrYWdlTWFuaWZlc3RQcm9wZXJ0aWVzIHtcbiAgJ25nLWFkZCc/OiB7XG4gICAgc2F2ZT86IE5nQWRkU2F2ZURlcGVuZGVuY3k7XG4gIH07XG4gICduZy11cGRhdGUnPzoge1xuICAgIG1pZ3JhdGlvbnM/OiBzdHJpbmc7XG4gICAgcGFja2FnZUdyb3VwPzogc3RyaW5nW10gfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAgIHBhY2thZ2VHcm91cE5hbWU/OiBzdHJpbmc7XG4gICAgcmVxdWlyZW1lbnRzPzogc3RyaW5nW10gfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhY2thZ2VNYW5pZmVzdCBleHRlbmRzIE1hbmlmZXN0LCBOZ1BhY2thZ2VNYW5pZmVzdFByb3BlcnRpZXMge1xuICBkZXByZWNhdGVkPzogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIFBhY2thZ2VNYW5hZ2VyT3B0aW9ucyBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+IHtcbiAgZm9yY2VBdXRoPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG59XG5cbmxldCBucG1yYzogUGFja2FnZU1hbmFnZXJPcHRpb25zO1xuY29uc3QgbnBtUGFja2FnZUpzb25DYWNoZSA9IG5ldyBNYXA8c3RyaW5nLCBQcm9taXNlPFBhcnRpYWw8TnBtUmVwb3NpdG9yeVBhY2thZ2VKc29uPj4+KCk7XG5cbmZ1bmN0aW9uIGVuc3VyZU5wbXJjKGxvZ2dlcjogbG9nZ2luZy5Mb2dnZXJBcGksIHVzaW5nWWFybjogYm9vbGVhbiwgdmVyYm9zZTogYm9vbGVhbik6IHZvaWQge1xuICBpZiAoIW5wbXJjKSB7XG4gICAgdHJ5IHtcbiAgICAgIG5wbXJjID0gcmVhZE9wdGlvbnMobG9nZ2VyLCBmYWxzZSwgdmVyYm9zZSk7XG4gICAgfSBjYXRjaCB7fVxuXG4gICAgaWYgKHVzaW5nWWFybikge1xuICAgICAgdHJ5IHtcbiAgICAgICAgbnBtcmMgPSB7IC4uLm5wbXJjLCAuLi5yZWFkT3B0aW9ucyhsb2dnZXIsIHRydWUsIHZlcmJvc2UpIH07XG4gICAgICB9IGNhdGNoIHt9XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIHJlYWRPcHRpb25zKFxuICBsb2dnZXI6IGxvZ2dpbmcuTG9nZ2VyQXBpLFxuICB5YXJuID0gZmFsc2UsXG4gIHNob3dQb3RlbnRpYWxzID0gZmFsc2UsXG4pOiBQYWNrYWdlTWFuYWdlck9wdGlvbnMge1xuICBjb25zdCBjd2QgPSBwcm9jZXNzLmN3ZCgpO1xuICBjb25zdCBiYXNlRmlsZW5hbWUgPSB5YXJuID8gJ3lhcm5yYycgOiAnbnBtcmMnO1xuICBjb25zdCBkb3RGaWxlbmFtZSA9ICcuJyArIGJhc2VGaWxlbmFtZTtcblxuICBsZXQgZ2xvYmFsUHJlZml4OiBzdHJpbmc7XG4gIGlmIChwcm9jZXNzLmVudi5QUkVGSVgpIHtcbiAgICBnbG9iYWxQcmVmaXggPSBwcm9jZXNzLmVudi5QUkVGSVg7XG4gIH0gZWxzZSB7XG4gICAgZ2xvYmFsUHJlZml4ID0gcGF0aC5kaXJuYW1lKHByb2Nlc3MuZXhlY1BhdGgpO1xuICAgIGlmIChwcm9jZXNzLnBsYXRmb3JtICE9PSAnd2luMzInKSB7XG4gICAgICBnbG9iYWxQcmVmaXggPSBwYXRoLmRpcm5hbWUoZ2xvYmFsUHJlZml4KTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBkZWZhdWx0Q29uZmlnTG9jYXRpb25zID0gW1xuICAgICgheWFybiAmJiBwcm9jZXNzLmVudi5OUE1fQ09ORklHX0dMT0JBTENPTkZJRykgfHwgcGF0aC5qb2luKGdsb2JhbFByZWZpeCwgJ2V0YycsIGJhc2VGaWxlbmFtZSksXG4gICAgKCF5YXJuICYmIHByb2Nlc3MuZW52Lk5QTV9DT05GSUdfVVNFUkNPTkZJRykgfHwgcGF0aC5qb2luKGhvbWVkaXIoKSwgZG90RmlsZW5hbWUpLFxuICBdO1xuXG4gIGNvbnN0IHByb2plY3RDb25maWdMb2NhdGlvbnM6IHN0cmluZ1tdID0gW3BhdGguam9pbihjd2QsIGRvdEZpbGVuYW1lKV07XG4gIGlmICh5YXJuKSB7XG4gICAgY29uc3Qgcm9vdCA9IHBhdGgucGFyc2UoY3dkKS5yb290O1xuICAgIGZvciAobGV0IGN1ckRpciA9IHBhdGguZGlybmFtZShjd2QpOyBjdXJEaXIgJiYgY3VyRGlyICE9PSByb290OyBjdXJEaXIgPSBwYXRoLmRpcm5hbWUoY3VyRGlyKSkge1xuICAgICAgcHJvamVjdENvbmZpZ0xvY2F0aW9ucy51bnNoaWZ0KHBhdGguam9pbihjdXJEaXIsIGRvdEZpbGVuYW1lKSk7XG4gICAgfVxuICB9XG5cbiAgaWYgKHNob3dQb3RlbnRpYWxzKSB7XG4gICAgbG9nZ2VyLmluZm8oYExvY2F0aW5nIHBvdGVudGlhbCAke2Jhc2VGaWxlbmFtZX0gZmlsZXM6YCk7XG4gIH1cblxuICBsZXQgcmNPcHRpb25zOiBQYWNrYWdlTWFuYWdlck9wdGlvbnMgPSB7fTtcbiAgZm9yIChjb25zdCBsb2NhdGlvbiBvZiBbLi4uZGVmYXVsdENvbmZpZ0xvY2F0aW9ucywgLi4ucHJvamVjdENvbmZpZ0xvY2F0aW9uc10pIHtcbiAgICBpZiAoZXhpc3RzU3luYyhsb2NhdGlvbikpIHtcbiAgICAgIGlmIChzaG93UG90ZW50aWFscykge1xuICAgICAgICBsb2dnZXIuaW5mbyhgVHJ5aW5nICcke2xvY2F0aW9ufScuLi5mb3VuZC5gKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZGF0YSA9IHJlYWRGaWxlU3luYyhsb2NhdGlvbiwgJ3V0ZjgnKTtcbiAgICAgIC8vIE5vcm1hbGl6ZSBSQyBvcHRpb25zIHRoYXQgYXJlIG5lZWRlZCBieSAnbnBtLXJlZ2lzdHJ5LWZldGNoJy5cbiAgICAgIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL25wbS9ucG0tcmVnaXN0cnktZmV0Y2gvYmxvYi9lYmRkYmU3OGE1ZjY3MTE4YzFmN2FmMmUwMmM4YTIyYmNhZjllODUwL2luZGV4LmpzI0w5OS1MMTI2XG4gICAgICBjb25zdCByY0NvbmZpZzogUGFja2FnZU1hbmFnZXJPcHRpb25zID0geWFybiA/IGxvY2tmaWxlLnBhcnNlKGRhdGEpIDogaW5pLnBhcnNlKGRhdGEpO1xuXG4gICAgICByY09wdGlvbnMgPSBub3JtYWxpemVPcHRpb25zKHJjQ29uZmlnLCBsb2NhdGlvbiwgcmNPcHRpb25zKTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBlbnZWYXJpYWJsZXNPcHRpb25zOiBQYWNrYWdlTWFuYWdlck9wdGlvbnMgPSB7fTtcbiAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMocHJvY2Vzcy5lbnYpKSB7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgbGV0IG5vcm1hbGl6ZWROYW1lID0ga2V5LnRvTG93ZXJDYXNlKCk7XG4gICAgaWYgKG5vcm1hbGl6ZWROYW1lLnN0YXJ0c1dpdGgoJ25wbV9jb25maWdfJykpIHtcbiAgICAgIG5vcm1hbGl6ZWROYW1lID0gbm9ybWFsaXplZE5hbWUuc3Vic3RyaW5nKDExKTtcbiAgICB9IGVsc2UgaWYgKHlhcm4gJiYgbm9ybWFsaXplZE5hbWUuc3RhcnRzV2l0aCgneWFybl8nKSkge1xuICAgICAgbm9ybWFsaXplZE5hbWUgPSBub3JtYWxpemVkTmFtZS5zdWJzdHJpbmcoNSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIG5vcm1hbGl6ZWROYW1lID09PSAncmVnaXN0cnknICYmXG4gICAgICByY09wdGlvbnNbJ3JlZ2lzdHJ5J10gJiZcbiAgICAgIHZhbHVlID09PSAnaHR0cHM6Ly9yZWdpc3RyeS55YXJucGtnLmNvbScgJiZcbiAgICAgIHByb2Nlc3MuZW52WyducG1fY29uZmlnX3VzZXJfYWdlbnQnXT8uaW5jbHVkZXMoJ3lhcm4nKVxuICAgICkge1xuICAgICAgLy8gV2hlbiBydW5uaW5nIGBuZyB1cGRhdGVgIHVzaW5nIHlhcm4gKGB5YXJuIG5nIHVwZGF0ZWApLCB5YXJuIHdpbGwgc2V0IHRoZSBgbnBtX2NvbmZpZ19yZWdpc3RyeWAgZW52IHZhcmlhYmxlIHRvIGBodHRwczovL3JlZ2lzdHJ5Lnlhcm5wa2cuY29tYFxuICAgICAgLy8gZXZlbiB3aGVuIGFuIFJDIGZpbGUgaXMgcHJlc2VudCB3aXRoIGEgZGlmZmVyZW50IHJlcG9zaXRvcnkuXG4gICAgICAvLyBUaGlzIGNhdXNlcyB0aGUgcmVnaXN0cnkgc3BlY2lmaWVkIGluIHRoZSBSQyB0byBhbHdheXMgYmUgb3ZlcnJpZGRlbiB3aXRoIHRoZSBiZWxvdyBsb2dpYy5cbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cblxuICAgIG5vcm1hbGl6ZWROYW1lID0gbm9ybWFsaXplZE5hbWUucmVwbGFjZSgvKD8hXilfL2csICctJyk7IC8vIGRvbid0IHJlcGxhY2UgXyBhdCB0aGUgc3RhcnQgb2YgdGhlIGtleS5zXG4gICAgZW52VmFyaWFibGVzT3B0aW9uc1tub3JtYWxpemVkTmFtZV0gPSB2YWx1ZTtcbiAgfVxuXG4gIHJldHVybiBub3JtYWxpemVPcHRpb25zKGVudlZhcmlhYmxlc09wdGlvbnMsIHVuZGVmaW5lZCwgcmNPcHRpb25zKTtcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplT3B0aW9ucyhcbiAgcmF3T3B0aW9uczogUGFja2FnZU1hbmFnZXJPcHRpb25zLFxuICBsb2NhdGlvbiA9IHByb2Nlc3MuY3dkKCksXG4gIGV4aXN0aW5nTm9ybWFsaXplZE9wdGlvbnM6IFBhY2thZ2VNYW5hZ2VyT3B0aW9ucyA9IHt9LFxuKTogUGFja2FnZU1hbmFnZXJPcHRpb25zIHtcbiAgY29uc3Qgb3B0aW9ucyA9IHsgLi4uZXhpc3RpbmdOb3JtYWxpemVkT3B0aW9ucyB9O1xuXG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKHJhd09wdGlvbnMpKSB7XG4gICAgbGV0IHN1YnN0aXR1dGVkVmFsdWUgPSB2YWx1ZTtcblxuICAgIC8vIFN1YnN0aXR1dGUgYW55IGVudmlyb25tZW50IHZhcmlhYmxlIHJlZmVyZW5jZXMuXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHN1YnN0aXR1dGVkVmFsdWUgPSB2YWx1ZS5yZXBsYWNlKC9cXCRcXHsoW159XSspXFx9LywgKF8sIG5hbWUpID0+IHByb2Nlc3MuZW52W25hbWVdIHx8ICcnKTtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKGtleSkge1xuICAgICAgLy8gVW5sZXNzIGF1dGggb3B0aW9ucyBhcmUgc2NvcGUgd2l0aCB0aGUgcmVnaXN0cnkgdXJsIGl0IGFwcGVhcnMgdGhhdCBucG0tcmVnaXN0cnktZmV0Y2ggaWdub3JlcyB0aGVtLFxuICAgICAgLy8gZXZlbiB0aG91Z2ggdGhleSBhcmUgZG9jdW1lbnRlZC5cbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ucG0vbnBtLXJlZ2lzdHJ5LWZldGNoL2Jsb2IvODk1NGY2MWQ4ZDcwM2U1ZWI3ZjNkOTNjOWI0MDQ4OGY4YjFiNjJhYy9SRUFETUUubWRcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ucG0vbnBtLXJlZ2lzdHJ5LWZldGNoL2Jsb2IvODk1NGY2MWQ4ZDcwM2U1ZWI3ZjNkOTNjOWI0MDQ4OGY4YjFiNjJhYy9hdXRoLmpzI0w0NS1MOTFcbiAgICAgIGNhc2UgJ19hdXRoVG9rZW4nOlxuICAgICAgY2FzZSAndG9rZW4nOlxuICAgICAgY2FzZSAndXNlcm5hbWUnOlxuICAgICAgY2FzZSAncGFzc3dvcmQnOlxuICAgICAgY2FzZSAnX2F1dGgnOlxuICAgICAgY2FzZSAnYXV0aCc6XG4gICAgICAgIG9wdGlvbnNbJ2ZvcmNlQXV0aCddID8/PSB7fTtcbiAgICAgICAgb3B0aW9uc1snZm9yY2VBdXRoJ11ba2V5XSA9IHN1YnN0aXR1dGVkVmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnbm9wcm94eSc6XG4gICAgICBjYXNlICduby1wcm94eSc6XG4gICAgICAgIG9wdGlvbnNbJ25vUHJveHknXSA9IHN1YnN0aXR1dGVkVmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnbWF4c29ja2V0cyc6XG4gICAgICAgIG9wdGlvbnNbJ21heFNvY2tldHMnXSA9IHN1YnN0aXR1dGVkVmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnaHR0cHMtcHJveHknOlxuICAgICAgY2FzZSAncHJveHknOlxuICAgICAgICBvcHRpb25zWydwcm94eSddID0gc3Vic3RpdHV0ZWRWYWx1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdzdHJpY3Qtc3NsJzpcbiAgICAgICAgb3B0aW9uc1snc3RyaWN0U1NMJ10gPSBzdWJzdGl0dXRlZFZhbHVlO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2xvY2FsLWFkZHJlc3MnOlxuICAgICAgICBvcHRpb25zWydsb2NhbEFkZHJlc3MnXSA9IHN1YnN0aXR1dGVkVmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnY2FmaWxlJzpcbiAgICAgICAgaWYgKHR5cGVvZiBzdWJzdGl0dXRlZFZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgICAgIGNvbnN0IGNhZmlsZSA9IHBhdGgucmVzb2x2ZShwYXRoLmRpcm5hbWUobG9jYXRpb24pLCBzdWJzdGl0dXRlZFZhbHVlKTtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgb3B0aW9uc1snY2EnXSA9IHJlYWRGaWxlU3luYyhjYWZpbGUsICd1dGY4JykucmVwbGFjZSgvXFxyP1xcbi9nLCAnXFxuJyk7XG4gICAgICAgICAgfSBjYXRjaCB7fVxuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYmVmb3JlJzpcbiAgICAgICAgb3B0aW9uc1snYmVmb3JlJ10gPVxuICAgICAgICAgIHR5cGVvZiBzdWJzdGl0dXRlZFZhbHVlID09PSAnc3RyaW5nJyA/IG5ldyBEYXRlKHN1YnN0aXR1dGVkVmFsdWUpIDogc3Vic3RpdHV0ZWRWYWx1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBvcHRpb25zW2tleV0gPSBzdWJzdGl0dXRlZFZhbHVlO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICByZXR1cm4gb3B0aW9ucztcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZldGNoUGFja2FnZU1ldGFkYXRhKFxuICBuYW1lOiBzdHJpbmcsXG4gIGxvZ2dlcjogbG9nZ2luZy5Mb2dnZXJBcGksXG4gIG9wdGlvbnM/OiB7XG4gICAgcmVnaXN0cnk/OiBzdHJpbmc7XG4gICAgdXNpbmdZYXJuPzogYm9vbGVhbjtcbiAgICB2ZXJib3NlPzogYm9vbGVhbjtcbiAgfSxcbik6IFByb21pc2U8UGFja2FnZU1ldGFkYXRhPiB7XG4gIGNvbnN0IHsgdXNpbmdZYXJuLCB2ZXJib3NlLCByZWdpc3RyeSB9ID0ge1xuICAgIHJlZ2lzdHJ5OiB1bmRlZmluZWQsXG4gICAgdXNpbmdZYXJuOiBmYWxzZSxcbiAgICB2ZXJib3NlOiBmYWxzZSxcbiAgICAuLi5vcHRpb25zLFxuICB9O1xuXG4gIGVuc3VyZU5wbXJjKGxvZ2dlciwgdXNpbmdZYXJuLCB2ZXJib3NlKTtcbiAgY29uc3QgeyBwYWNrdW1lbnQgfSA9IGF3YWl0IGltcG9ydCgncGFjb3RlJyk7XG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgcGFja3VtZW50KG5hbWUsIHtcbiAgICBmdWxsTWV0YWRhdGE6IHRydWUsXG4gICAgLi4ubnBtcmMsXG4gICAgLi4uKHJlZ2lzdHJ5ID8geyByZWdpc3RyeSB9IDoge30pLFxuICB9KTtcblxuICAvLyBOb3JtYWxpemUgdGhlIHJlc3BvbnNlXG4gIGNvbnN0IG1ldGFkYXRhOiBQYWNrYWdlTWV0YWRhdGEgPSB7XG4gICAgLi4ucmVzcG9uc2UsXG4gICAgdGFnczoge30sXG4gIH07XG5cbiAgaWYgKHJlc3BvbnNlWydkaXN0LXRhZ3MnXSkge1xuICAgIGZvciAoY29uc3QgW3RhZywgdmVyc2lvbl0gb2YgT2JqZWN0LmVudHJpZXMocmVzcG9uc2VbJ2Rpc3QtdGFncyddKSkge1xuICAgICAgY29uc3QgbWFuaWZlc3QgPSBtZXRhZGF0YS52ZXJzaW9uc1t2ZXJzaW9uXTtcbiAgICAgIGlmIChtYW5pZmVzdCkge1xuICAgICAgICBtZXRhZGF0YS50YWdzW3RhZ10gPSBtYW5pZmVzdDtcbiAgICAgIH0gZWxzZSBpZiAodmVyYm9zZSkge1xuICAgICAgICBsb2dnZXIud2FybihgUGFja2FnZSAke21ldGFkYXRhLm5hbWV9IGhhcyBpbnZhbGlkIHZlcnNpb24gbWV0YWRhdGEgZm9yICcke3RhZ30nLmApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBtZXRhZGF0YTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZldGNoUGFja2FnZU1hbmlmZXN0KFxuICBuYW1lOiBzdHJpbmcsXG4gIGxvZ2dlcjogbG9nZ2luZy5Mb2dnZXJBcGksXG4gIG9wdGlvbnM6IHtcbiAgICByZWdpc3RyeT86IHN0cmluZztcbiAgICB1c2luZ1lhcm4/OiBib29sZWFuO1xuICAgIHZlcmJvc2U/OiBib29sZWFuO1xuICB9ID0ge30sXG4pOiBQcm9taXNlPFBhY2thZ2VNYW5pZmVzdD4ge1xuICBjb25zdCB7IHVzaW5nWWFybiA9IGZhbHNlLCB2ZXJib3NlID0gZmFsc2UsIHJlZ2lzdHJ5IH0gPSBvcHRpb25zO1xuICBlbnN1cmVOcG1yYyhsb2dnZXIsIHVzaW5nWWFybiwgdmVyYm9zZSk7XG4gIGNvbnN0IHsgbWFuaWZlc3QgfSA9IGF3YWl0IGltcG9ydCgncGFjb3RlJyk7XG5cbiAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBtYW5pZmVzdChuYW1lLCB7XG4gICAgZnVsbE1ldGFkYXRhOiB0cnVlLFxuICAgIC4uLm5wbXJjLFxuICAgIC4uLihyZWdpc3RyeSA/IHsgcmVnaXN0cnkgfSA6IHt9KSxcbiAgfSk7XG5cbiAgcmV0dXJuIHJlc3BvbnNlO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0TnBtUGFja2FnZUpzb24oXG4gIHBhY2thZ2VOYW1lOiBzdHJpbmcsXG4gIGxvZ2dlcjogbG9nZ2luZy5Mb2dnZXJBcGksXG4gIG9wdGlvbnM6IHtcbiAgICByZWdpc3RyeT86IHN0cmluZztcbiAgICB1c2luZ1lhcm4/OiBib29sZWFuO1xuICAgIHZlcmJvc2U/OiBib29sZWFuO1xuICB9ID0ge30sXG4pOiBQcm9taXNlPFBhcnRpYWw8TnBtUmVwb3NpdG9yeVBhY2thZ2VKc29uPj4ge1xuICBjb25zdCBjYWNoZWRSZXNwb25zZSA9IG5wbVBhY2thZ2VKc29uQ2FjaGUuZ2V0KHBhY2thZ2VOYW1lKTtcbiAgaWYgKGNhY2hlZFJlc3BvbnNlKSB7XG4gICAgcmV0dXJuIGNhY2hlZFJlc3BvbnNlO1xuICB9XG5cbiAgY29uc3QgeyB1c2luZ1lhcm4gPSBmYWxzZSwgdmVyYm9zZSA9IGZhbHNlLCByZWdpc3RyeSB9ID0gb3B0aW9ucztcbiAgZW5zdXJlTnBtcmMobG9nZ2VyLCB1c2luZ1lhcm4sIHZlcmJvc2UpO1xuICBjb25zdCB7IHBhY2t1bWVudCB9ID0gYXdhaXQgaW1wb3J0KCdwYWNvdGUnKTtcbiAgY29uc3QgcmVzcG9uc2UgPSBwYWNrdW1lbnQocGFja2FnZU5hbWUsIHtcbiAgICBmdWxsTWV0YWRhdGE6IHRydWUsXG4gICAgLi4ubnBtcmMsXG4gICAgLi4uKHJlZ2lzdHJ5ID8geyByZWdpc3RyeSB9IDoge30pLFxuICB9KTtcblxuICBucG1QYWNrYWdlSnNvbkNhY2hlLnNldChwYWNrYWdlTmFtZSwgcmVzcG9uc2UpO1xuXG4gIHJldHVybiByZXNwb25zZTtcbn1cbiJdfQ==
|
package/src/utilities/version.js
CHANGED
|
@@ -20,7 +20,7 @@ class Version {
|
|
|
20
20
|
this.patch = patch;
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
-
// TODO: Convert this to use build-time version stamping after flipping the build script to use bazel
|
|
24
|
-
// export const VERSION = new Version('15.2.0-
|
|
23
|
+
// TODO(bazel): Convert this to use build-time version stamping after flipping the build script to use bazel
|
|
24
|
+
// export const VERSION = new Version('15.2.0-rc.0');
|
|
25
25
|
exports.VERSION = new Version(JSON.parse((0, fs_1.readFileSync)((0, path_1.resolve)(__dirname, '../../package.json'), 'utf-8')).version);
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXIvY2xpL3NyYy91dGlsaXRpZXMvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFFSCwyQkFBa0M7QUFDbEMsK0JBQStCO0FBRS9CLCtDQUErQztBQUMvQyxNQUFNLE9BQU87SUFLWCxZQUE0QixJQUFZO1FBQVosU0FBSSxHQUFKLElBQUksQ0FBUTtRQUN0QyxNQUFNLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7Q0FDRjtBQUVELDRHQUE0RztBQUM1RywyREFBMkQ7QUFDOUMsUUFBQSxPQUFPLEdBQUcsSUFBSSxPQUFPLENBRTlCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBQSxpQkFBWSxFQUFDLElBQUEsY0FBTyxFQUFDLFNBQVMsRUFBRSxvQkFBb0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUczRSxDQUFDLE9BQU8sQ0FDVixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7IHJlYWRGaWxlU3luYyB9IGZyb20gJ2ZzJztcbmltcG9ydCB7IHJlc29sdmUgfSBmcm9tICdwYXRoJztcblxuLy8gU2FtZSBzdHJ1Y3R1cmUgYXMgdXNlZCBpbiBmcmFtZXdvcmsgcGFja2FnZXNcbmNsYXNzIFZlcnNpb24ge1xuICBwdWJsaWMgcmVhZG9ubHkgbWFqb3I6IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IG1pbm9yOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBwYXRjaDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBmdWxsOiBzdHJpbmcpIHtcbiAgICBjb25zdCBbbWFqb3IsIG1pbm9yLCBwYXRjaF0gPSBmdWxsLnNwbGl0KCctJywgMSlbMF0uc3BsaXQoJy4nLCAzKTtcbiAgICB0aGlzLm1ham9yID0gbWFqb3I7XG4gICAgdGhpcy5taW5vciA9IG1pbm9yO1xuICAgIHRoaXMucGF0Y2ggPSBwYXRjaDtcbiAgfVxufVxuXG4vLyBUT0RPKGJhemVsKTogQ29udmVydCB0aGlzIHRvIHVzZSBidWlsZC10aW1lIHZlcnNpb24gc3RhbXBpbmcgYWZ0ZXIgZmxpcHBpbmcgdGhlIGJ1aWxkIHNjcmlwdCB0byB1c2UgYmF6ZWxcbi8vIGV4cG9ydCBjb25zdCBWRVJTSU9OID0gbmV3IFZlcnNpb24oJzAuMC4wLVBMQUNFSE9MREVSJyk7XG5leHBvcnQgY29uc3QgVkVSU0lPTiA9IG5ldyBWZXJzaW9uKFxuICAoXG4gICAgSlNPTi5wYXJzZShyZWFkRmlsZVN5bmMocmVzb2x2ZShfX2Rpcm5hbWUsICcuLi8uLi9wYWNrYWdlLmpzb24nKSwgJ3V0Zi04JykpIGFzIHtcbiAgICAgIHZlcnNpb246IHN0cmluZztcbiAgICB9XG4gICkudmVyc2lvbixcbik7XG4iXX0=
|