aws-cdk 2.38.1 → 2.40.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/README.md +11 -0
- package/THIRD_PARTY_LICENSES +83 -3
- package/build-info.json +2 -2
- package/lib/api/aws-auth/aws-sdk-inifile.js +2 -3
- package/lib/api/aws-auth/awscli-compatible.js +5 -7
- package/lib/api/aws-auth/sdk-provider.js +18 -12
- package/lib/api/aws-auth/sdk.d.ts +20 -0
- package/lib/api/aws-auth/sdk.js +40 -5
- package/lib/api/bootstrap/bootstrap-environment.js +14 -15
- package/lib/api/bootstrap/deploy-bootstrap.js +5 -7
- package/lib/api/cloudformation-deployments.d.ts +28 -0
- package/lib/api/cloudformation-deployments.js +30 -15
- package/lib/api/cxapp/cloud-assembly.js +3 -4
- package/lib/api/cxapp/cloud-executable.js +2 -3
- package/lib/api/cxapp/exec.js +8 -10
- package/lib/api/deploy-stack.js +11 -13
- package/lib/api/evaluate-cloudformation-template.js +6 -11
- package/lib/api/hotswap/appsync-mapping-templates.js +4 -5
- package/lib/api/hotswap/code-build-projects.js +2 -3
- package/lib/api/hotswap/common.d.ts +6 -1
- package/lib/api/hotswap/common.js +14 -4
- package/lib/api/hotswap/ecs-services.js +23 -6
- package/lib/api/hotswap/lambda-functions.js +6 -9
- package/lib/api/hotswap/s3-bucket-deployments.js +3 -5
- package/lib/api/hotswap/stepfunctions-state-machines.js +2 -3
- package/lib/api/hotswap-deployments.js +5 -7
- package/lib/api/logs/logs-monitor.js +5 -8
- package/lib/api/nested-stack-helpers.js +9 -11
- package/lib/api/toolkit-info.js +12 -17
- package/lib/api/util/cloudformation/stack-activity-monitor.js +17 -27
- package/lib/api/util/cloudformation.js +7 -11
- package/lib/api/util/placeholders.js +2 -3
- package/lib/assets.js +3 -4
- package/lib/build.d.ts +6 -0
- package/lib/build.js +20 -0
- package/lib/cdk-toolkit.d.ts +15 -0
- package/lib/cdk-toolkit.js +62 -20
- package/lib/cli.js +15 -15
- package/lib/context-providers/load-balancers.js +11 -18
- package/lib/context-providers/security-groups.js +5 -7
- package/lib/deploy.d.ts +7 -0
- package/lib/deploy.js +51 -0
- package/lib/import.js +8 -13
- package/lib/index.js +9378 -2580
- package/lib/init-templates/app/go/%name%.template.go +2 -0
- package/lib/init-templates/app/go/%name%_test.template.go +1 -1
- package/lib/init-templates/app/go/go.template.mod +1 -1
- package/lib/init-templates/sample-app/go/%name%.template.go +2 -0
- package/lib/init-templates/sample-app/go/%name%_test.template.go +1 -1
- package/lib/init-templates/sample-app/go/go.template.mod +1 -1
- package/lib/notices.js +11 -17
- package/lib/settings.js +4 -5
- package/lib/setup-sandbox.js +2 -1
- package/lib/util/asset-publishing.d.ts +16 -0
- package/lib/util/asset-publishing.js +34 -9
- package/lib/util/directories.js +2 -3
- package/lib/version.js +2 -2
- package/package.json +13 -12
- package/test/api/bootstrap2.test.js +2 -3
- package/test/api/cloud-executable.test.js +2 -3
- package/test/api/cloudformation-deployments.test.js +123 -1
- package/test/api/deploy-stack.test.js +4 -7
- package/test/api/fake-sts.js +13 -9
- package/test/api/hotswap/ecs-services-hotswap-deployments.test.js +113 -1
- package/test/api/hotswap/hotswap-deployments.test.js +4 -4
- package/test/api/sdk-provider.test.js +22 -11
- package/test/aws-sdk-non-public-apis.test.js +2 -3
- package/test/build.test.d.ts +1 -0
- package/test/build.test.js +31 -0
- package/test/cdk-toolkit.test.js +27 -1
- package/test/context-providers/load-balancers.test.js +3 -5
- package/test/deploy.test.d.ts +1 -0
- package/test/deploy.test.js +186 -0
- package/test/import.test.js +2 -2
- package/test/init.test.js +2 -3
- package/test/integ/cli/app/app.js +8 -1
- package/test/integ/cli/bootstrapping.integtest.js +9 -20
- package/test/integ/cli/cli.integtest.js +57 -34
- package/test/integ/github-helpers.js +2 -3
- package/test/integ/helpers/aws.js +4 -7
- package/test/integ/helpers/cdk.js +21 -30
- package/test/integ/helpers/sam.js +10 -17
- package/test/util/mock-child_process.js +3 -4
- package/test/util/mock-sdk.js +4 -6
- package/test/util/mock-toolkitinfo.js +4 -5
- package/test/util.js +3 -5
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.publishAssets = void 0;
|
|
3
|
+
exports.buildAssets = exports.publishAssets = void 0;
|
|
4
4
|
const cxapi = require("@aws-cdk/cx-api");
|
|
5
5
|
const cdk_assets = require("cdk-assets");
|
|
6
6
|
const credentials_1 = require("../api/aws-auth/credentials");
|
|
@@ -9,7 +9,6 @@ const logging_1 = require("../logging");
|
|
|
9
9
|
* Use cdk-assets to publish all assets in the given manifest.
|
|
10
10
|
*/
|
|
11
11
|
async function publishAssets(manifest, sdk, targetEnv, options = {}) {
|
|
12
|
-
var _a;
|
|
13
12
|
// This shouldn't really happen (it's a programming error), but we don't have
|
|
14
13
|
// the types here to guide us. Do an runtime validation to be super super sure.
|
|
15
14
|
if (targetEnv.account === undefined ||
|
|
@@ -20,9 +19,11 @@ async function publishAssets(manifest, sdk, targetEnv, options = {}) {
|
|
|
20
19
|
}
|
|
21
20
|
const publisher = new cdk_assets.AssetPublishing(manifest, {
|
|
22
21
|
aws: new PublishingAws(sdk, targetEnv),
|
|
23
|
-
progressListener: new PublishingProgressListener(
|
|
22
|
+
progressListener: new PublishingProgressListener(options.quiet ?? false),
|
|
24
23
|
throwOnError: false,
|
|
25
24
|
publishInParallel: true,
|
|
25
|
+
buildAssets: options.buildAssets ?? true,
|
|
26
|
+
publishAssets: true,
|
|
26
27
|
});
|
|
27
28
|
await publisher.publish();
|
|
28
29
|
if (publisher.hasFailures) {
|
|
@@ -30,6 +31,32 @@ async function publishAssets(manifest, sdk, targetEnv, options = {}) {
|
|
|
30
31
|
}
|
|
31
32
|
}
|
|
32
33
|
exports.publishAssets = publishAssets;
|
|
34
|
+
/**
|
|
35
|
+
* Use cdk-assets to build all assets in the given manifest.
|
|
36
|
+
*/
|
|
37
|
+
async function buildAssets(manifest, sdk, targetEnv, options = {}) {
|
|
38
|
+
// This shouldn't really happen (it's a programming error), but we don't have
|
|
39
|
+
// the types here to guide us. Do an runtime validation to be super super sure.
|
|
40
|
+
if (targetEnv.account === undefined ||
|
|
41
|
+
targetEnv.account === cxapi.UNKNOWN_ACCOUNT ||
|
|
42
|
+
targetEnv.region === undefined ||
|
|
43
|
+
targetEnv.account === cxapi.UNKNOWN_REGION) {
|
|
44
|
+
throw new Error(`Asset building requires resolved account and region, got ${JSON.stringify(targetEnv)}`);
|
|
45
|
+
}
|
|
46
|
+
const publisher = new cdk_assets.AssetPublishing(manifest, {
|
|
47
|
+
aws: new PublishingAws(sdk, targetEnv),
|
|
48
|
+
progressListener: new PublishingProgressListener(options.quiet ?? false),
|
|
49
|
+
throwOnError: false,
|
|
50
|
+
publishInParallel: true,
|
|
51
|
+
buildAssets: true,
|
|
52
|
+
publishAssets: false,
|
|
53
|
+
});
|
|
54
|
+
await publisher.publish();
|
|
55
|
+
if (publisher.hasFailures) {
|
|
56
|
+
throw new Error('Failed to build one or more assets. See the error messages above for more information.');
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
exports.buildAssets = buildAssets;
|
|
33
60
|
class PublishingAws {
|
|
34
61
|
constructor(
|
|
35
62
|
/**
|
|
@@ -45,15 +72,14 @@ class PublishingAws {
|
|
|
45
72
|
this.sdkCache = new Map();
|
|
46
73
|
}
|
|
47
74
|
async discoverPartition() {
|
|
48
|
-
|
|
49
|
-
return (_a = (await this.aws.baseCredentialsPartition(this.targetEnv, credentials_1.Mode.ForWriting))) !== null && _a !== void 0 ? _a : 'aws';
|
|
75
|
+
return (await this.aws.baseCredentialsPartition(this.targetEnv, credentials_1.Mode.ForWriting)) ?? 'aws';
|
|
50
76
|
}
|
|
51
77
|
async discoverDefaultRegion() {
|
|
52
78
|
return this.targetEnv.region;
|
|
53
79
|
}
|
|
54
80
|
async discoverCurrentAccount() {
|
|
55
81
|
const account = await this.aws.defaultAccount();
|
|
56
|
-
return account
|
|
82
|
+
return account ?? {
|
|
57
83
|
accountId: '<unknown account>',
|
|
58
84
|
partition: 'aws',
|
|
59
85
|
};
|
|
@@ -74,10 +100,9 @@ class PublishingAws {
|
|
|
74
100
|
* Get an SDK appropriate for the given client options
|
|
75
101
|
*/
|
|
76
102
|
async sdk(options) {
|
|
77
|
-
var _a;
|
|
78
103
|
const env = {
|
|
79
104
|
...this.targetEnv,
|
|
80
|
-
region:
|
|
105
|
+
region: options.region ?? this.targetEnv.region,
|
|
81
106
|
};
|
|
82
107
|
const cacheKey = JSON.stringify({
|
|
83
108
|
env,
|
|
@@ -116,4 +141,4 @@ class PublishingProgressListener {
|
|
|
116
141
|
handler(`[${event.percentComplete}%] ${type}: ${event.message}`);
|
|
117
142
|
}
|
|
118
143
|
}
|
|
119
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtcHVibGlzaGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImFzc2V0LXB1Ymxpc2hpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEseUNBQXlDO0FBRXpDLHlDQUF5QztBQUN6Qyw2REFBbUQ7QUFHbkQsd0NBQWlEO0FBU2pEOztHQUVHO0FBQ0ksS0FBSyxVQUFVLGFBQWEsQ0FDakMsUUFBa0MsRUFDbEMsR0FBZ0IsRUFDaEIsU0FBNEIsRUFDNUIsVUFBZ0MsRUFBRTs7SUFFbEMsNkVBQTZFO0lBQzdFLCtFQUErRTtJQUMvRSxJQUNFLFNBQVMsQ0FBQyxPQUFPLEtBQUssU0FBUztRQUMvQixTQUFTLENBQUMsT0FBTyxLQUFLLEtBQUssQ0FBQyxlQUFlO1FBQzNDLFNBQVMsQ0FBQyxNQUFNLEtBQUssU0FBUztRQUM5QixTQUFTLENBQUMsT0FBTyxLQUFLLEtBQUssQ0FBQyxjQUFjLEVBQzFDO1FBQ0EsTUFBTSxJQUFJLEtBQUssQ0FBQyw4REFBOEQsSUFBSSxDQUFDLFNBQVMsQ0FBRSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7S0FDN0c7SUFFRCxNQUFNLFNBQVMsR0FBRyxJQUFJLFVBQVUsQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFO1FBQ3pELEdBQUcsRUFBRSxJQUFJLGFBQWEsQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDO1FBQ3RDLGdCQUFnQixFQUFFLElBQUksMEJBQTBCLE9BQUMsT0FBTyxDQUFDLEtBQUssbUNBQUksS0FBSyxDQUFDO1FBQ3hFLFlBQVksRUFBRSxLQUFLO1FBQ25CLGlCQUFpQixFQUFFLElBQUk7S0FDeEIsQ0FBQyxDQUFDO0lBQ0gsTUFBTSxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDMUIsSUFBSSxTQUFTLENBQUMsV0FBVyxFQUFFO1FBQ3pCLE1BQU0sSUFBSSxLQUFLLENBQUMsMEZBQTBGLENBQUMsQ0FBQztLQUM3RztBQUNILENBQUM7QUEzQkQsc0NBMkJDO0FBRUQsTUFBTSxh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LEtBQUssRUFBRSxlQUFLO0lBQ1osS0FBSyxFQUFMLGVBQUs7SUFDTCxJQUFJLEVBQUUsZUFBSztJQUNYLEtBQUssRUFBRSxlQUFLO0lBQ1osS0FBSyxFQUFFLGVBQUs7SUFDWixPQUFPLEVBQUUsZUFBSztJQUNkLE1BQU0sRUFBRSxlQUFLO0NBQ2QsQ0FBQztBQUVGLE1BQU0sMEJBQTBCO0lBQzlCLFlBQTZCLEtBQWM7UUFBZCxVQUFLLEdBQUwsS0FBSyxDQUFTO0lBQzNDLENBQUM7SUFFTSxjQUFjLENBQUMsSUFBMEIsRUFBRSxLQUFrQztRQUNsRixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDLGVBQUssQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlFLE9BQU8sQ0FBQyxJQUFJLEtBQUssQ0FBQyxlQUFlLE1BQU0sSUFBSSxLQUFLLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGN4YXBpIGZyb20gJ0Bhd3MtY2RrL2N4LWFwaSc7XG5pbXBvcnQgKiBhcyBBV1MgZnJvbSAnYXdzLXNkayc7XG5pbXBvcnQgKiBhcyBjZGtfYXNzZXRzIGZyb20gJ2Nkay1hc3NldHMnO1xuaW1wb3J0IHsgTW9kZSB9IGZyb20gJy4uL2FwaS9hd3MtYXV0aC9jcmVkZW50aWFscyc7XG5pbXBvcnQgeyBJU0RLIH0gZnJvbSAnLi4vYXBpL2F3cy1hdXRoL3Nkayc7XG5pbXBvcnQgeyBTZGtQcm92aWRlciB9IGZyb20gJy4uL2FwaS9hd3MtYXV0aC9zZGstcHJvdmlkZXInO1xuaW1wb3J0IHsgZGVidWcsIGVycm9yLCBwcmludCB9IGZyb20gJy4uL2xvZ2dpbmcnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFB1Ymxpc2hBc3NldHNPcHRpb25zIHtcbiAgLyoqXG4gICAqIFByaW50IHByb2dyZXNzIGF0ICdkZWJ1ZycgbGV2ZWxcbiAgICovXG4gIHJlYWRvbmx5IHF1aWV0PzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBVc2UgY2RrLWFzc2V0cyB0byBwdWJsaXNoIGFsbCBhc3NldHMgaW4gdGhlIGdpdmVuIG1hbmlmZXN0LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcHVibGlzaEFzc2V0cyhcbiAgbWFuaWZlc3Q6IGNka19hc3NldHMuQXNzZXRNYW5pZmVzdCxcbiAgc2RrOiBTZGtQcm92aWRlcixcbiAgdGFyZ2V0RW52OiBjeGFwaS5FbnZpcm9ubWVudCxcbiAgb3B0aW9uczogUHVibGlzaEFzc2V0c09wdGlvbnMgPSB7fSxcbikge1xuICAvLyBUaGlzIHNob3VsZG4ndCByZWFsbHkgaGFwcGVuIChpdCdzIGEgcHJvZ3JhbW1pbmcgZXJyb3IpLCBidXQgd2UgZG9uJ3QgaGF2ZVxuICAvLyB0aGUgdHlwZXMgaGVyZSB0byBndWlkZSB1cy4gRG8gYW4gcnVudGltZSB2YWxpZGF0aW9uIHRvIGJlIHN1cGVyIHN1cGVyIHN1cmUuXG4gIGlmIChcbiAgICB0YXJnZXRFbnYuYWNjb3VudCA9PT0gdW5kZWZpbmVkIHx8XG4gICAgdGFyZ2V0RW52LmFjY291bnQgPT09IGN4YXBpLlVOS05PV05fQUNDT1VOVCB8fFxuICAgIHRhcmdldEVudi5yZWdpb24gPT09IHVuZGVmaW5lZCB8fFxuICAgIHRhcmdldEVudi5hY2NvdW50ID09PSBjeGFwaS5VTktOT1dOX1JFR0lPTlxuICApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEFzc2V0IHB1Ymxpc2hpbmcgcmVxdWlyZXMgcmVzb2x2ZWQgYWNjb3VudCBhbmQgcmVnaW9uLCBnb3QgJHtKU09OLnN0cmluZ2lmeSggdGFyZ2V0RW52KX1gKTtcbiAgfVxuXG4gIGNvbnN0IHB1Ymxpc2hlciA9IG5ldyBjZGtfYXNzZXRzLkFzc2V0UHVibGlzaGluZyhtYW5pZmVzdCwge1xuICAgIGF3czogbmV3IFB1Ymxpc2hpbmdBd3Moc2RrLCB0YXJnZXRFbnYpLFxuICAgIHByb2dyZXNzTGlzdGVuZXI6IG5ldyBQdWJsaXNoaW5nUHJvZ3Jlc3NMaXN0ZW5lcihvcHRpb25zLnF1aWV0ID8/IGZhbHNlKSxcbiAgICB0aHJvd09uRXJyb3I6IGZhbHNlLFxuICAgIHB1Ymxpc2hJblBhcmFsbGVsOiB0cnVlLFxuICB9KTtcbiAgYXdhaXQgcHVibGlzaGVyLnB1Ymxpc2goKTtcbiAgaWYgKHB1Ymxpc2hlci5oYXNGYWlsdXJlcykge1xuICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIHB1Ymxpc2ggb25lIG9yIG1vcmUgYXNzZXRzLiBTZWUgdGhlIGVycm9yIG1lc3NhZ2VzIGFib3ZlIGZvciBtb3JlIGluZm9ybWF0aW9uLicpO1xuICB9XG59XG5cbmNsYXNzIFB1Ymxpc2hpbmdBd3MgaW1wbGVtZW50cyBjZGtfYXNzZXRzLklBd3Mge1xuICBwcml2YXRlIHNka0NhY2hlOiBNYXA8U3RyaW5nLCBJU0RLPiA9IG5ldyBNYXAoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiBUaGUgYmFzZSBTREsgdG8gd29yayB3aXRoXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBhd3M6IFNka1Byb3ZpZGVyLFxuXG4gICAgLyoqXG4gICAgICogRW52aXJvbm1lbnQgd2hlcmUgdGhlIHN0YWNrIHdlJ3JlIGRlcGxveWluZyBpcyBnb2luZ1xuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFyZ2V0RW52OiBjeGFwaS5FbnZpcm9ubWVudCkge1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGRpc2NvdmVyUGFydGl0aW9uKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmF3cy5iYXNlQ3JlZGVudGlhbHNQYXJ0aXRpb24odGhpcy50YXJnZXRFbnYsIE1vZGUuRm9yV3JpdGluZykpID8/ICdhd3MnO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGRpc2NvdmVyRGVmYXVsdFJlZ2lvbigpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLnRhcmdldEVudi5yZWdpb247XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZGlzY292ZXJDdXJyZW50QWNjb3VudCgpOiBQcm9taXNlPGNka19hc3NldHMuQWNjb3VudD4ge1xuICAgIGNvbnN0IGFjY291bnQgPSBhd2FpdCB0aGlzLmF3cy5kZWZhdWx0QWNjb3VudCgpO1xuICAgIHJldHVybiBhY2NvdW50ID8/IHtcbiAgICAgIGFjY291bnRJZDogJzx1bmtub3duIGFjY291bnQ+JyxcbiAgICAgIHBhcnRpdGlvbjogJ2F3cycsXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBkaXNjb3ZlclRhcmdldEFjY291bnQob3B0aW9uczogY2RrX2Fzc2V0cy5DbGllbnRPcHRpb25zKTogUHJvbWlzZTxjZGtfYXNzZXRzLkFjY291bnQ+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuc2RrKG9wdGlvbnMpKS5jdXJyZW50QWNjb3VudCgpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHMzQ2xpZW50KG9wdGlvbnM6IGNka19hc3NldHMuQ2xpZW50T3B0aW9ucyk6IFByb21pc2U8QVdTLlMzPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLnNkayhvcHRpb25zKSkuczMoKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBlY3JDbGllbnQob3B0aW9uczogY2RrX2Fzc2V0cy5DbGllbnRPcHRpb25zKTogUHJvbWlzZTxBV1MuRUNSPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLnNkayhvcHRpb25zKSkuZWNyKCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgc2VjcmV0c01hbmFnZXJDbGllbnQob3B0aW9uczogY2RrX2Fzc2V0cy5DbGllbnRPcHRpb25zKTogUHJvbWlzZTxBV1MuU2VjcmV0c01hbmFnZXI+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuc2RrKG9wdGlvbnMpKS5zZWNyZXRzTWFuYWdlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhbiBTREsgYXBwcm9wcmlhdGUgZm9yIHRoZSBnaXZlbiBjbGllbnQgb3B0aW9uc1xuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBzZGsob3B0aW9uczogY2RrX2Fzc2V0cy5DbGllbnRPcHRpb25zKTogUHJvbWlzZTxJU0RLPiB7XG4gICAgY29uc3QgZW52ID0ge1xuICAgICAgLi4udGhpcy50YXJnZXRFbnYsXG4gICAgICByZWdpb246IG9wdGlvbnMucmVnaW9uID8/IHRoaXMudGFyZ2V0RW52LnJlZ2lvbiwgLy8gRGVmYXVsdDogc2FtZSByZWdpb24gYXMgdGhlIHN0YWNrXG4gICAgfTtcblxuICAgIGNvbnN0IGNhY2hlS2V5ID0gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgZW52LCAvLyByZWdpb24sIG5hbWUsIGFjY291bnRcbiAgICAgIGFzc3VtZVJ1bGVBcm46IG9wdGlvbnMuYXNzdW1lUm9sZUFybixcbiAgICAgIGFzc3VtZVJvbGVFeHRlcm5hbElkOiBvcHRpb25zLmFzc3VtZVJvbGVFeHRlcm5hbElkLFxuICAgIH0pO1xuXG4gICAgY29uc3QgbWF5YmVTZGsgPSB0aGlzLnNka0NhY2hlLmdldChjYWNoZUtleSk7XG4gICAgaWYgKG1heWJlU2RrKSB7XG4gICAgICByZXR1cm4gbWF5YmVTZGs7XG4gICAgfVxuXG4gICAgY29uc3Qgc2RrID0gKGF3YWl0IHRoaXMuYXdzLmZvckVudmlyb25tZW50KGVudiwgTW9kZS5Gb3JXcml0aW5nLCB7XG4gICAgICBhc3N1bWVSb2xlQXJuOiBvcHRpb25zLmFzc3VtZVJvbGVBcm4sXG4gICAgICBhc3N1bWVSb2xlRXh0ZXJuYWxJZDogb3B0aW9ucy5hc3N1bWVSb2xlRXh0ZXJuYWxJZCxcbiAgICB9KSkuc2RrO1xuICAgIHRoaXMuc2RrQ2FjaGUuc2V0KGNhY2hlS2V5LCBzZGspO1xuXG4gICAgcmV0dXJuIHNkaztcbiAgfVxufVxuXG5jb25zdCBFVkVOVF9UT19MT0dHRVI6IFJlY29yZDxjZGtfYXNzZXRzLkV2ZW50VHlwZSwgKHg6IHN0cmluZykgPT4gdm9pZD4gPSB7XG4gIGJ1aWxkOiBkZWJ1ZyxcbiAgY2FjaGVkOiBkZWJ1ZyxcbiAgY2hlY2s6IGRlYnVnLFxuICBkZWJ1ZyxcbiAgZmFpbDogZXJyb3IsXG4gIGZvdW5kOiBkZWJ1ZyxcbiAgc3RhcnQ6IHByaW50LFxuICBzdWNjZXNzOiBwcmludCxcbiAgdXBsb2FkOiBkZWJ1Zyxcbn07XG5cbmNsYXNzIFB1Ymxpc2hpbmdQcm9ncmVzc0xpc3RlbmVyIGltcGxlbWVudHMgY2RrX2Fzc2V0cy5JUHVibGlzaFByb2dyZXNzTGlzdGVuZXIge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHF1aWV0OiBib29sZWFuKSB7XG4gIH1cblxuICBwdWJsaWMgb25QdWJsaXNoRXZlbnQodHlwZTogY2RrX2Fzc2V0cy5FdmVudFR5cGUsIGV2ZW50OiBjZGtfYXNzZXRzLklQdWJsaXNoUHJvZ3Jlc3MpOiB2b2lkIHtcbiAgICBjb25zdCBoYW5kbGVyID0gdGhpcy5xdWlldCAmJiB0eXBlICE9PSAnZmFpbCcgPyBkZWJ1ZyA6IEVWRU5UX1RPX0xPR0dFUlt0eXBlXTtcbiAgICBoYW5kbGVyKGBbJHtldmVudC5wZXJjZW50Q29tcGxldGV9JV0gJHt0eXBlfTogJHtldmVudC5tZXNzYWdlfWApO1xuICB9XG59XG4iXX0=
|
|
144
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtcHVibGlzaGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImFzc2V0LXB1Ymxpc2hpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEseUNBQXlDO0FBRXpDLHlDQUF5QztBQUN6Qyw2REFBbUQ7QUFHbkQsd0NBQWlEO0FBZ0JqRDs7R0FFRztBQUNJLEtBQUssVUFBVSxhQUFhLENBQ2pDLFFBQWtDLEVBQ2xDLEdBQWdCLEVBQ2hCLFNBQTRCLEVBQzVCLFVBQWdDLEVBQUU7SUFFbEMsNkVBQTZFO0lBQzdFLCtFQUErRTtJQUMvRSxJQUNFLFNBQVMsQ0FBQyxPQUFPLEtBQUssU0FBUztRQUMvQixTQUFTLENBQUMsT0FBTyxLQUFLLEtBQUssQ0FBQyxlQUFlO1FBQzNDLFNBQVMsQ0FBQyxNQUFNLEtBQUssU0FBUztRQUM5QixTQUFTLENBQUMsT0FBTyxLQUFLLEtBQUssQ0FBQyxjQUFjLEVBQzFDO1FBQ0EsTUFBTSxJQUFJLEtBQUssQ0FBQyw4REFBOEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7S0FDNUc7SUFFRCxNQUFNLFNBQVMsR0FBRyxJQUFJLFVBQVUsQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFO1FBQ3pELEdBQUcsRUFBRSxJQUFJLGFBQWEsQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDO1FBQ3RDLGdCQUFnQixFQUFFLElBQUksMEJBQTBCLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUM7UUFDeEUsWUFBWSxFQUFFLEtBQUs7UUFDbkIsaUJBQWlCLEVBQUUsSUFBSTtRQUN2QixXQUFXLEVBQUUsT0FBTyxDQUFDLFdBQVcsSUFBSSxJQUFJO1FBQ3hDLGFBQWEsRUFBRSxJQUFJO0tBQ3BCLENBQUMsQ0FBQztJQUNILE1BQU0sU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzFCLElBQUksU0FBUyxDQUFDLFdBQVcsRUFBRTtRQUN6QixNQUFNLElBQUksS0FBSyxD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TyxFQUFFLGVBQUs7SUFDZCxNQUFNLEVBQUUsZUFBSztDQUNkLENBQUM7QUFFRixNQUFNLDBCQUEwQjtJQUM5QixZQUE2QixLQUFjO1FBQWQsVUFBSyxHQUFMLEtBQUssQ0FBUztJQUMzQyxDQUFDO0lBRU0sY0FBYyxDQUFDLElBQTBCLEVBQUUsS0FBa0M7UUFDbEYsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxlQUFLLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5RSxPQUFPLENBQUMsSUFBSSxLQUFLLENBQUMsZUFBZSxNQUFNLElBQUksS0FBSyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNuRSxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjeGFwaSBmcm9tICdAYXdzLWNkay9jeC1hcGknO1xuaW1wb3J0ICogYXMgQVdTIGZyb20gJ2F3cy1zZGsnO1xuaW1wb3J0ICogYXMgY2RrX2Fzc2V0cyBmcm9tICdjZGstYXNzZXRzJztcbmltcG9ydCB7IE1vZGUgfSBmcm9tICcuLi9hcGkvYXdzLWF1dGgvY3JlZGVudGlhbHMnO1xuaW1wb3J0IHsgSVNESyB9IGZyb20gJy4uL2FwaS9hd3MtYXV0aC9zZGsnO1xuaW1wb3J0IHsgU2RrUHJvdmlkZXIgfSBmcm9tICcuLi9hcGkvYXdzLWF1dGgvc2RrLXByb3ZpZGVyJztcbmltcG9ydCB7IGRlYnVnLCBlcnJvciwgcHJpbnQgfSBmcm9tICcuLi9sb2dnaW5nJztcblxuZXhwb3J0IGludGVyZmFjZSBQdWJsaXNoQXNzZXRzT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBQcmludCBwcm9ncmVzcyBhdCAnZGVidWcnIGxldmVsXG4gICAqL1xuICByZWFkb25seSBxdWlldD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gYnVpbGQgYXNzZXRzIGJlZm9yZSBwdWJsaXNoaW5nLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlIFRvIHJlbWFpbiBiYWNrd2FyZCBjb21wYXRpYmxlLlxuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRBc3NldHM/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFVzZSBjZGstYXNzZXRzIHRvIHB1Ymxpc2ggYWxsIGFzc2V0cyBpbiB0aGUgZ2l2ZW4gbWFuaWZlc3QuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwdWJsaXNoQXNzZXRzKFxuICBtYW5pZmVzdDogY2RrX2Fzc2V0cy5Bc3NldE1hbmlmZXN0LFxuICBzZGs6IFNka1Byb3ZpZGVyLFxuICB0YXJnZXRFbnY6IGN4YXBpLkVudmlyb25tZW50LFxuICBvcHRpb25zOiBQdWJsaXNoQXNzZXRzT3B0aW9ucyA9IHt9LFxuKSB7XG4gIC8vIFRoaXMgc2hvdWxkbid0IHJlYWxseSBoYXBwZW4gKGl0J3MgYSBwcm9ncmFtbWluZyBlcnJvciksIGJ1dCB3ZSBkb24ndCBoYXZlXG4gIC8vIHRoZSB0eXBlcyBoZXJlIHRvIGd1aWRlIHVzLiBEbyBhbiBydW50aW1lIHZhbGlkYXRpb24gdG8gYmUgc3VwZXIgc3VwZXIgc3VyZS5cbiAgaWYgKFxuICAgIHRhcmdldEVudi5hY2NvdW50ID09PSB1bmRlZmluZWQgfHxcbiAgICB0YXJnZXRFbnYuYWNjb3VudCA9PT0gY3hhcGkuVU5LTk9XTl9BQ0NPVU5UIHx8XG4gICAgdGFyZ2V0RW52LnJlZ2lvbiA9PT0gdW5kZWZpbmVkIHx8XG4gICAgdGFyZ2V0RW52LmFjY291bnQgPT09IGN4YXBpLlVOS05PV05fUkVHSU9OXG4gICkge1xuICAgIHRocm93IG5ldyBFcnJvcihgQXNzZXQgcHVibGlzaGluZyByZXF1aXJlcyByZXNvbHZlZCBhY2NvdW50IGFuZCByZWdpb24sIGdvdCAke0pTT04uc3RyaW5naWZ5KHRhcmdldEVudil9YCk7XG4gIH1cblxuICBjb25zdCBwdWJsaXNoZXIgPSBuZXcgY2RrX2Fzc2V0cy5Bc3NldFB1Ymxpc2hpbmcobWFuaWZlc3QsIHtcbiAgICBhd3M6IG5ldyBQdWJsaXNoaW5nQXdzKHNkaywgdGFyZ2V0RW52KSxcbiAgICBwcm9ncmVzc0xpc3RlbmVyOiBuZXcgUHVibGlzaGluZ1Byb2dyZXNzTGlzdGVuZXIob3B0aW9ucy5xdWlldCA/PyBmYWxzZSksXG4gICAgdGhyb3dPbkVycm9yOiBmYWxzZSxcbiAgICBwdWJsaXNoSW5QYXJhbGxlbDogdHJ1ZSxcbiAgICBidWlsZEFzc2V0czogb3B0aW9ucy5idWlsZEFzc2V0cyA/PyB0cnVlLFxuICAgIHB1Ymxpc2hBc3NldHM6IHRydWUsXG4gIH0pO1xuICBhd2FpdCBwdWJsaXNoZXIucHVibGlzaCgpO1xuICBpZiAocHVibGlzaGVyLmhhc0ZhaWx1cmVzKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gcHVibGlzaCBvbmUgb3IgbW9yZSBhc3NldHMuIFNlZSB0aGUgZXJyb3IgbWVzc2FnZXMgYWJvdmUgZm9yIG1vcmUgaW5mb3JtYXRpb24uJyk7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdWlsZEFzc2V0c09wdGlvbnMge1xuICAvKipcbiAgICogUHJpbnQgcHJvZ3Jlc3MgYXQgJ2RlYnVnJyBsZXZlbFxuICAgKi9cbiAgcmVhZG9ubHkgcXVpZXQ/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFVzZSBjZGstYXNzZXRzIHRvIGJ1aWxkIGFsbCBhc3NldHMgaW4gdGhlIGdpdmVuIG1hbmlmZXN0LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYnVpbGRBc3NldHMoXG4gIG1hbmlmZXN0OiBjZGtfYXNzZXRzLkFzc2V0TWFuaWZlc3QsXG4gIHNkazogU2RrUHJvdmlkZXIsXG4gIHRhcmdldEVudjogY3hhcGkuRW52aXJvbm1lbnQsXG4gIG9wdGlvbnM6IEJ1aWxkQXNzZXRzT3B0aW9ucyA9IHt9LFxuKSB7XG4gIC8vIFRoaXMgc2hvdWxkbid0IHJlYWxseSBoYXBwZW4gKGl0J3MgYSBwcm9ncmFtbWluZyBlcnJvciksIGJ1dCB3ZSBkb24ndCBoYXZlXG4gIC8vIHRoZSB0eXBlcyBoZXJlIHRvIGd1aWRlIHVzLiBEbyBhbiBydW50aW1lIHZhbGlkYXRpb24gdG8gYmUgc3VwZXIgc3VwZXIgc3VyZS5cbiAgaWYgKFxuICAgIHRhcmdldEVudi5hY2NvdW50ID09PSB1bmRlZmluZWQgfHxcbiAgICB0YXJnZXRFbnYuYWNjb3VudCA9PT0gY3hhcGkuVU5LTk9XTl9BQ0NPVU5UIHx8XG4gICAgdGFyZ2V0RW52LnJlZ2lvbiA9PT0gdW5kZWZpbmVkIHx8XG4gICAgdGFyZ2V0RW52LmFjY291bnQgPT09IGN4YXBpLlVOS05PV05fUkVHSU9OXG4gICkge1xuICAgIHRocm93IG5ldyBFcnJvcihgQXNzZXQgYnVpbGRpbmcgcmVxdWlyZXMgcmVzb2x2ZWQgYWNjb3VudCBhbmQgcmVnaW9uLCBnb3QgJHtKU09OLnN0cmluZ2lmeSh0YXJnZXRFbnYpfWApO1xuICB9XG5cbiAgY29uc3QgcHVibGlzaGVyID0gbmV3IGNka19hc3NldHMuQXNzZXRQdWJsaXNoaW5nKG1hbmlmZXN0LCB7XG4gICAgYXdzOiBuZXcgUHVibGlzaGluZ0F3cyhzZGssIHRhcmdldEVudiksXG4gICAgcHJvZ3Jlc3NMaXN0ZW5lcjogbmV3IFB1Ymxpc2hpbmdQcm9ncmVzc0xpc3RlbmVyKG9wdGlvbnMucXVpZXQgPz8gZmFsc2UpLFxuICAgIHRocm93T25FcnJvcjogZmFsc2UsXG4gICAgcHVibGlzaEluUGFyYWxsZWw6IHRydWUsXG4gICAgYnVpbGRBc3NldHM6IHRydWUsXG4gICAgcHVibGlzaEFzc2V0czogZmFsc2UsXG4gIH0pO1xuICBhd2FpdCBwdWJsaXNoZXIucHVibGlzaCgpO1xuICBpZiAocHVibGlzaGVyLmhhc0ZhaWx1cmVzKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gYnVpbGQgb25lIG9yIG1vcmUgYXNzZXRzLiBTZWUgdGhlIGVycm9yIG1lc3NhZ2VzIGFib3ZlIGZvciBtb3JlIGluZm9ybWF0aW9uLicpO1xuICB9XG59XG5cbmNsYXNzIFB1Ymxpc2hpbmdBd3MgaW1wbGVtZW50cyBjZGtfYXNzZXRzLklBd3Mge1xuICBwcml2YXRlIHNka0NhY2hlOiBNYXA8U3RyaW5nLCBJU0RLPiA9IG5ldyBNYXAoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiBUaGUgYmFzZSBTREsgdG8gd29yayB3aXRoXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBhd3M6IFNka1Byb3ZpZGVyLFxuXG4gICAgLyoqXG4gICAgICogRW52aXJvbm1lbnQgd2hlcmUgdGhlIHN0YWNrIHdlJ3JlIGRlcGxveWluZyBpcyBnb2luZ1xuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFyZ2V0RW52OiBjeGFwaS5FbnZpcm9ubWVudCkge1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGRpc2NvdmVyUGFydGl0aW9uKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmF3cy5iYXNlQ3JlZGVudGlhbHNQYXJ0aXRpb24odGhpcy50YXJnZXRFbnYsIE1vZGUuRm9yV3JpdGluZykpID8/ICdhd3MnO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGRpc2NvdmVyRGVmYXVsdFJlZ2lvbigpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLnRhcmdldEVudi5yZWdpb247XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZGlzY292ZXJDdXJyZW50QWNjb3VudCgpOiBQcm9taXNlPGNka19hc3NldHMuQWNjb3VudD4ge1xuICAgIGNvbnN0IGFjY291bnQgPSBhd2FpdCB0aGlzLmF3cy5kZWZhdWx0QWNjb3VudCgpO1xuICAgIHJldHVybiBhY2NvdW50ID8/IHtcbiAgICAgIGFjY291bnRJZDogJzx1bmtub3duIGFjY291bnQ+JyxcbiAgICAgIHBhcnRpdGlvbjogJ2F3cycsXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBkaXNjb3ZlclRhcmdldEFjY291bnQob3B0aW9uczogY2RrX2Fzc2V0cy5DbGllbnRPcHRpb25zKTogUHJvbWlzZTxjZGtfYXNzZXRzLkFjY291bnQ+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuc2RrKG9wdGlvbnMpKS5jdXJyZW50QWNjb3VudCgpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHMzQ2xpZW50KG9wdGlvbnM6IGNka19hc3NldHMuQ2xpZW50T3B0aW9ucyk6IFByb21pc2U8QVdTLlMzPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLnNkayhvcHRpb25zKSkuczMoKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBlY3JDbGllbnQob3B0aW9uczogY2RrX2Fzc2V0cy5DbGllbnRPcHRpb25zKTogUHJvbWlzZTxBV1MuRUNSPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLnNkayhvcHRpb25zKSkuZWNyKCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgc2VjcmV0c01hbmFnZXJDbGllbnQob3B0aW9uczogY2RrX2Fzc2V0cy5DbGllbnRPcHRpb25zKTogUHJvbWlzZTxBV1MuU2VjcmV0c01hbmFnZXI+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuc2RrKG9wdGlvbnMpKS5zZWNyZXRzTWFuYWdlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhbiBTREsgYXBwcm9wcmlhdGUgZm9yIHRoZSBnaXZlbiBjbGllbnQgb3B0aW9uc1xuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBzZGsob3B0aW9uczogY2RrX2Fzc2V0cy5DbGllbnRPcHRpb25zKTogUHJvbWlzZTxJU0RLPiB7XG4gICAgY29uc3QgZW52ID0ge1xuICAgICAgLi4udGhpcy50YXJnZXRFbnYsXG4gICAgICByZWdpb246IG9wdGlvbnMucmVnaW9uID8/IHRoaXMudGFyZ2V0RW52LnJlZ2lvbiwgLy8gRGVmYXVsdDogc2FtZSByZWdpb24gYXMgdGhlIHN0YWNrXG4gICAgfTtcblxuICAgIGNvbnN0IGNhY2hlS2V5ID0gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgZW52LCAvLyByZWdpb24sIG5hbWUsIGFjY291bnRcbiAgICAgIGFzc3VtZVJ1bGVBcm46IG9wdGlvbnMuYXNzdW1lUm9sZUFybixcbiAgICAgIGFzc3VtZVJvbGVFeHRlcm5hbElkOiBvcHRpb25zLmFzc3VtZVJvbGVFeHRlcm5hbElkLFxuICAgIH0pO1xuXG4gICAgY29uc3QgbWF5YmVTZGsgPSB0aGlzLnNka0NhY2hlLmdldChjYWNoZUtleSk7XG4gICAgaWYgKG1heWJlU2RrKSB7XG4gICAgICByZXR1cm4gbWF5YmVTZGs7XG4gICAgfVxuXG4gICAgY29uc3Qgc2RrID0gKGF3YWl0IHRoaXMuYXdzLmZvckVudmlyb25tZW50KGVudiwgTW9kZS5Gb3JXcml0aW5nLCB7XG4gICAgICBhc3N1bWVSb2xlQXJuOiBvcHRpb25zLmFzc3VtZVJvbGVBcm4sXG4gICAgICBhc3N1bWVSb2xlRXh0ZXJuYWxJZDogb3B0aW9ucy5hc3N1bWVSb2xlRXh0ZXJuYWxJZCxcbiAgICB9KSkuc2RrO1xuICAgIHRoaXMuc2RrQ2FjaGUuc2V0KGNhY2hlS2V5LCBzZGspO1xuXG4gICAgcmV0dXJuIHNkaztcbiAgfVxufVxuXG5jb25zdCBFVkVOVF9UT19MT0dHRVI6IFJlY29yZDxjZGtfYXNzZXRzLkV2ZW50VHlwZSwgKHg6IHN0cmluZykgPT4gdm9pZD4gPSB7XG4gIGJ1aWxkOiBkZWJ1ZyxcbiAgY2FjaGVkOiBkZWJ1ZyxcbiAgY2hlY2s6IGRlYnVnLFxuICBkZWJ1ZyxcbiAgZmFpbDogZXJyb3IsXG4gIGZvdW5kOiBkZWJ1ZyxcbiAgc3RhcnQ6IHByaW50LFxuICBzdWNjZXNzOiBwcmludCxcbiAgdXBsb2FkOiBkZWJ1Zyxcbn07XG5cbmNsYXNzIFB1Ymxpc2hpbmdQcm9ncmVzc0xpc3RlbmVyIGltcGxlbWVudHMgY2RrX2Fzc2V0cy5JUHVibGlzaFByb2dyZXNzTGlzdGVuZXIge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHF1aWV0OiBib29sZWFuKSB7XG4gIH1cblxuICBwdWJsaWMgb25QdWJsaXNoRXZlbnQodHlwZTogY2RrX2Fzc2V0cy5FdmVudFR5cGUsIGV2ZW50OiBjZGtfYXNzZXRzLklQdWJsaXNoUHJvZ3Jlc3MpOiB2b2lkIHtcbiAgICBjb25zdCBoYW5kbGVyID0gdGhpcy5xdWlldCAmJiB0eXBlICE9PSAnZmFpbCcgPyBkZWJ1ZyA6IEVWRU5UX1RPX0xPR0dFUlt0eXBlXTtcbiAgICBoYW5kbGVyKGBbJHtldmVudC5wZXJjZW50Q29tcGxldGV9JV0gJHt0eXBlfTogJHtldmVudC5tZXNzYWdlfWApO1xuICB9XG59XG4iXX0=
|
package/lib/util/directories.js
CHANGED
|
@@ -16,11 +16,10 @@ const path = require("path");
|
|
|
16
16
|
* not have a home directory (some CI systems?) this should be fine.
|
|
17
17
|
*/
|
|
18
18
|
function cdkHomeDir() {
|
|
19
|
-
var _a;
|
|
20
19
|
const tmpDir = fs.realpathSync(os.tmpdir());
|
|
21
20
|
let home;
|
|
22
21
|
try {
|
|
23
|
-
home = path.join((
|
|
22
|
+
home = path.join((os.userInfo().homedir ?? os.homedir()).trim(), '.cdk');
|
|
24
23
|
}
|
|
25
24
|
catch { }
|
|
26
25
|
return process.env.CDK_HOME
|
|
@@ -46,4 +45,4 @@ function rootDir() {
|
|
|
46
45
|
return _rootDir(__dirname);
|
|
47
46
|
}
|
|
48
47
|
exports.rootDir = rootDir;
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0b3JpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJkaXJlY3Rvcmllcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5QkFBeUI7QUFDekIseUJBQXlCO0FBQ3pCLDZCQUE2QjtBQUU3Qjs7Ozs7Ozs7OztHQVVHO0FBQ0gsU0FBZ0IsVUFBVTtJQUN4QixNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLElBQUksSUFBSSxDQUFDO0lBQ1QsSUFBSTtRQUNGLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztLQUMxRTtJQUFDLE1BQU0sR0FBRTtJQUNWLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRO1FBQ3pCLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0FBQy9ELENBQUM7QUFURCxnQ0FTQztBQUVELFNBQWdCLFdBQVc7SUFDekIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQzFDLENBQUM7QUFGRCxrQ0FFQztBQUVELFNBQWdCLE9BQU87SUFFckIsU0FBUyxRQUFRLENBQUMsT0FBZTtRQUMvQixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsQ0FBQztRQUN4RCxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDL0IsT0FBTyxPQUFPLENBQUM7U0FDaEI7UUFDRCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssT0FBTyxFQUFFO1lBQ3JDLE1BQU0sSUFBSSxLQUFLLENBQUMsaUNBQWlDLENBQUMsQ0FBQztTQUNwRDtRQUNELE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsT0FBTyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDN0IsQ0FBQztBQWRELDBCQWNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSAnZnMnO1xuaW1wb3J0ICogYXMgb3MgZnJvbSAnb3MnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcblxuLyoqXG4gKiBSZXR1cm4gYSBsb2NhdGlvbiB0aGF0IHdpbGwgYmUgdXNlZCBhcyB0aGUgQ0RLIGhvbWUgZGlyZWN0b3J5LlxuICogQ3VycmVudGx5IHRoZSBvbmx5IHRoaW5nIHRoYXQgaXMgcGxhY2VkIGhlcmUgaXMgdGhlIGNhY2hlLlxuICpcbiAqIEZpcnN0IHRyeSB0byB1c2UgdGhlIHVzZXJzIGhvbWUgZGlyZWN0b3J5IChpLmUuIC9ob21lL3NvbWV1c2VyLyksXG4gKiBidXQgaWYgdGhhdCBkaXJlY3RvcnkgZG9lcyBub3QgZXhpc3QgZm9yIHNvbWUgcmVhc29uIGNyZWF0ZSBhIHRtcCBkaXJlY3RvcnkuXG4gKlxuICogVHlwaWNhbGx5IGl0IHdvdWxkbid0IG1ha2Ugc2Vuc2UgdG8gY3JlYXRlIGEgb25lIHRpbWUgdXNlIHRtcCBkaXJlY3RvcnkgZm9yXG4gKiB0aGUgcHVycG9zZSBvZiBjcmVhdGluZyBhIGNhY2hlLCBidXQgc2luY2UgdGhpcyBvbmx5IGFwcGxpZXMgdG8gdXNlcnMgdGhhdCBkb1xuICogbm90IGhhdmUgYSBob21lIGRpcmVjdG9yeSAoc29tZSBDSSBzeXN0ZW1zPykgdGhpcyBzaG91bGQgYmUgZmluZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNka0hvbWVEaXIoKSB7XG4gIGNvbnN0IHRtcERpciA9IGZzLnJlYWxwYXRoU3luYyhvcy50bXBkaXIoKSk7XG4gIGxldCBob21lO1xuICB0cnkge1xuICAgIGhvbWUgPSBwYXRoLmpvaW4oKG9zLnVzZXJJbmZvKCkuaG9tZWRpciA/PyBvcy5ob21lZGlyKCkpLnRyaW0oKSwgJy5jZGsnKTtcbiAgfSBjYXRjaCB7fVxuICByZXR1cm4gcHJvY2Vzcy5lbnYuQ0RLX0hPTUVcbiAgICA/IHBhdGgucmVzb2x2ZShwcm9jZXNzLmVudi5DREtfSE9NRSlcbiAgICA6IGhvbWUgfHwgZnMubWtkdGVtcFN5bmMocGF0aC5qb2luKHRtcERpciwgJy5jZGsnKSkudHJpbSgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY2RrQ2FjaGVEaXIoKSB7XG4gIHJldHVybiBwYXRoLmpvaW4oY2RrSG9tZURpcigpLCAnY2FjaGUnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJvb3REaXIoKSB7XG5cbiAgZnVuY3Rpb24gX3Jvb3REaXIoZGlybmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBtYW5pZmVzdFBhdGggPSBwYXRoLmpvaW4oZGlybmFtZSwgJ3BhY2thZ2UuanNvbicpO1xuICAgIGlmIChmcy5leGlzdHNTeW5jKG1hbmlmZXN0UGF0aCkpIHtcbiAgICAgIHJldHVybiBkaXJuYW1lO1xuICAgIH1cbiAgICBpZiAocGF0aC5kaXJuYW1lKGRpcm5hbWUpID09PSBkaXJuYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYWJsZSB0byBmaW5kIHBhY2thZ2UgbWFuaWZlc3QnKTtcbiAgICB9XG4gICAgcmV0dXJuIF9yb290RGlyKHBhdGguZGlybmFtZShkaXJuYW1lKSk7XG4gIH1cblxuICByZXR1cm4gX3Jvb3REaXIoX19kaXJuYW1lKTtcbn1cbiJdfQ==
|
package/lib/version.js
CHANGED
|
@@ -100,7 +100,7 @@ async function displayVersionMessage(currentVersion = versionNumber(), versionCh
|
|
|
100
100
|
return;
|
|
101
101
|
}
|
|
102
102
|
try {
|
|
103
|
-
const laterVersion = await latestVersionIfHigher(currentVersion, versionCheckCache
|
|
103
|
+
const laterVersion = await latestVersionIfHigher(currentVersion, versionCheckCache ?? new VersionCheckTTL());
|
|
104
104
|
if (laterVersion) {
|
|
105
105
|
const bannerMsg = console_formatters_1.formatAsBanner(getVersionMessage(currentVersion, laterVersion));
|
|
106
106
|
bannerMsg.forEach((e) => logging_1.print(e));
|
|
@@ -111,4 +111,4 @@ async function displayVersionMessage(currentVersion = versionNumber(), versionCh
|
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
113
|
exports.displayVersionMessage = displayVersionMessage;
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkJBQTZCO0FBQzdCLCtCQUErQjtBQUMvQiwrQkFBK0I7QUFDL0IsaUNBQWlDO0FBQ2pDLDRDQUE4QztBQUM5Qyx1RUFBZ0U7QUFDaEUsb0RBQTBEO0FBQzFELG9DQUFxRDtBQUVyRCxNQUFNLGtCQUFrQixHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQztBQUU1QyxNQUFNLDJCQUEyQixHQUEyQjtJQUMxRCxDQUFDLEVBQUUsNERBQTREO0NBQ2hFLENBQUM7QUFFVyxRQUFBLGVBQWUsR0FBRyxHQUFHLGFBQWEsRUFBRSxXQUFXLE1BQU0sRUFBRSxHQUFHLENBQUM7QUFFeEUsU0FBZ0IsYUFBYTtJQUMzQixpRUFBaUU7SUFDakUsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBTyxFQUFFLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUMzRixDQUFDO0FBSEQsc0NBR0M7QUFFRCxTQUFTLE1BQU07SUFDYixpRUFBaUU7SUFDakUsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBTyxFQUFFLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztBQUNqRSxDQUFDO0FBRUQsTUFBYSxlQUFlO0lBVzFCLFlBQVksSUFBYSxFQUFFLE9BQWdCO1FBQ3pDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxJQUFJLGVBQWUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3hELElBQUk7WUFDRixFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDdkMsRUFBRSxDQUFDLFVBQVUsQ0FB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O0FBQ2hDLENBQUM7QUFFTSxLQUFLLFVBQVUscUJBQXFCLENBQUMsY0FBYyxHQUFHLGFBQWEsRUFBRSxFQUFFLGlCQUFtQztJQUMvRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsRUFBRTtRQUNsRSxPQUFPO0tBQ1I7SUFFRCxJQUFJO1FBQ0YsTUFBTSxZQUFZLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQyxjQUFjLEVBQUUsaUJBQWlCLGFBQWpCLGlCQUFpQixjQUFqQixpQkFBaUIsR0FBSSxJQUFJLGVBQWUsRUFBRSxDQUFDLENBQUM7UUFDN0csSUFBSSxZQUFZLEVBQUU7WUFDaEIsTUFBTSxTQUFTLEdBQUcsbUNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxjQUFjLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztZQUNsRixTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxlQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNwQztLQUNGO0lBQUMsT0FBTyxHQUFHLEVBQUU7UUFDWixlQUFLLENBQUMsaUNBQWlDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0tBQ3ZEO0FBQ0gsQ0FBQztBQWRELHNEQWNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCAqIGFzIGNoYWxrIGZyb20gJ2NoYWxrJztcbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzLWV4dHJhJztcbmltcG9ydCAqIGFzIHNlbXZlciBmcm9tICdzZW12ZXInO1xuaW1wb3J0IHsgZGVidWcsIHByaW50IH0gZnJvbSAnLi4vbGliL2xvZ2dpbmcnO1xuaW1wb3J0IHsgZm9ybWF0QXNCYW5uZXIgfSBmcm9tICcuLi9saWIvdXRpbC9jb25zb2xlLWZvcm1hdHRlcnMnO1xuaW1wb3J0IHsgY2RrQ2FjaGVEaXIsIHJvb3REaXIgfSBmcm9tICcuL3V0aWwvZGlyZWN0b3JpZXMnO1xuaW1wb3J0IHsgZ2V0TGF0ZXN0VmVyc2lvbkZyb21OcG0gfSBmcm9tICcuL3V0aWwvbnBtJztcblxuY29uc3QgT05FX0RBWV9JTl9TRUNPTkRTID0gMSAqIDI0ICogNjAgKiA2MDtcblxuY29uc3QgVVBHUkFERV9ET0NVTUVOVEFUSU9OX0xJTktTOiBSZWNvcmQ8bnVtYmVyLCBzdHJpbmc+ID0ge1xuICAxOiAnaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2Nkay92Mi9ndWlkZS9taWdyYXRpbmctdjIuaHRtbCcsXG59O1xuXG5leHBvcnQgY29uc3QgRElTUExBWV9WRVJTSU9OID0gYCR7dmVyc2lvbk51bWJlcigpfSAoYnVpbGQgJHtjb21taXQoKX0pYDtcblxuZXhwb3J0IGZ1bmN0aW9uIHZlcnNpb25OdW1iZXIoKTogc3RyaW5nIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1yZXF1aXJlLWltcG9ydHNcbiAgcmV0dXJuIHJlcXVpcmUocGF0aC5qb2luKHJvb3REaXIoKSwgJ3BhY2thZ2UuanNvbicpKS52ZXJzaW9uLnJlcGxhY2UoL1xcK1swLTlhLWZdKyQvLCAnJyk7XG59XG5cbmZ1bmN0aW9uIGNvbW1pdCgpOiBzdHJpbmcge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXJlcXVpcmUtaW1wb3J0c1xuICByZXR1cm4gcmVxdWlyZShwYXRoLmpvaW4ocm9vdERpcigpLCAnYnVpbGQtaW5mby5qc29uJykpLmNvbW1pdDtcbn1cblxuZXhwb3J0IGNsYXNzIFZlcnNpb25DaGVja1RUTCB7XG4gIHB1YmxpYyBzdGF0aWMgdGltZXN0YW1wRmlsZVBhdGgoKTogc3RyaW5nIHtcbiAgICAvLyBVc2luZyB0aGUgc2FtZSBwYXRoIGZyb20gYWNjb3VudC1jYWNoZS50c1xuICAgIHJldHVybiBwYXRoLmpvaW4oY2RrQ2FjaGVEaXIoKSwgJ3JlcG8tdmVyc2lvbi10dGwnKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgZmlsZTogc3RyaW5nO1xuXG4gIC8vIEZpbGUgbW9kaWZ5IHRpbWVzIGFyZSBhY2N1cmF0ZSBvbmx5IHRvIHRoZSBzZWNvbmRcbiAgcHJpdmF0ZSByZWFkb25seSB0dGxTZWNzOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IoZmlsZT86IHN0cmluZywgdHRsU2Vjcz86IG51bWJlcikge1xuICAgIHRoaXMuZmlsZSA9IGZpbGUgfHwgVmVyc2lvbkNoZWNrVFRMLnRpbWVzdGFtcEZpbGVQYXRoKCk7XG4gICAgdHJ5IHtcbiAgICAgIGZzLm1rZGlyc1N5bmMocGF0aC5kaXJuYW1lKHRoaXMuZmlsZSkpO1xuICAgICAgZnMuYWNjZXNzU3luYyhwYXRoLmRpcm5hbWUodGhpcy5maWxlKSwgZnMuY29uc3RhbnRzLldfT0spO1xuICAgIH0gY2F0Y2gge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBEaXJlY3RvcnkgKCR7cGF0aC5kaXJuYW1lKHRoaXMuZmlsZSl9KSBpcyBub3Qgd3JpdGFibGUuYCk7XG4gICAgfVxuICAgIHRoaXMudHRsU2VjcyA9IHR0bFNlY3MgfHwgT05FX0RBWV9JTl9TRUNPTkRTO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGhhc0V4cGlyZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGxhc3RDaGVja1RpbWUgPSAoYXdhaXQgZnMuc3RhdCh0aGlzLmZpbGUpKS5tdGltZU1zO1xuICAgICAgY29uc3QgdG9kYXkgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcblxuICAgICAgaWYgKCh0b2RheSAtIGxhc3RDaGVja1RpbWUpIC8gMTAwMCA+IHRoaXMudHRsU2VjcykgeyAvLyBjb252ZXJ0IG1zIHRvIHNlY1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlmIChlcnIuY29kZSA9PT0gJ0VOT0VOVCcpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBlcnI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFzeW5jIHVwZGF0ZShsYXRlc3RWZXJzaW9uPzogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCFsYXRlc3RWZXJzaW9uKSB7XG4gICAgICBsYXRlc3RWZXJzaW9uID0gJyc7XG4gICAgfVxuICAgIGF3YWl0IGZzLndyaXRlRmlsZSh0aGlzLmZpbGUsIGxhdGVzdFZlcnNpb24pO1xuICB9XG59XG5cbi8vIEV4cG9ydCBmb3IgdW5pdCB0ZXN0aW5nIG9ubHkuXG4vLyBEb24ndCB1c2UgZGlyZWN0bHksIHVzZSBkaXNwbGF5VmVyc2lvbk1lc3NhZ2UoKSBpbnN0ZWFkLlxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGxhdGVzdFZlcnNpb25JZkhpZ2hlcihjdXJyZW50VmVyc2lvbjogc3RyaW5nLCBjYWNoZUZpbGU6IFZlcnNpb25DaGVja1RUTCk6IFByb21pc2U8c3RyaW5nfG51bGw+IHtcbiAgaWYgKCEoYXdhaXQgY2FjaGVGaWxlLmhhc0V4cGlyZWQoKSkpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGNvbnN0IGxhdGVzdFZlcnNpb24gPSBhd2FpdCBnZXRMYXRlc3RWZXJzaW9uRnJvbU5wbSgpO1xuICBjb25zdCBpc05ld2VyID0gc2VtdmVyLmd0KGxhdGVzdFZlcnNpb24sIGN1cnJlbnRWZXJzaW9uKTtcbiAgYXdhaXQgY2FjaGVGaWxlLnVwZGF0ZShsYXRlc3RWZXJzaW9uKTtcblxuICBpZiAoaXNOZXdlcikge1xuICAgIHJldHVybiBsYXRlc3RWZXJzaW9uO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG5cbmZ1bmN0aW9uIGdldE1ham9yVmVyc2lvblVwZ3JhZGVNZXNzYWdlKGN1cnJlbnRWZXJzaW9uOiBzdHJpbmcpOiBzdHJpbmcgfCB2b2lkIHtcbiAgY29uc3QgY3VycmVudE1ham9yVmVyc2lvbiA9IHNlbXZlci5tYWpvcihjdXJyZW50VmVyc2lvbik7XG4gIGlmIChVUEdSQURFX0RPQ1VNRU5UQVRJT05fTElOS1NbY3VycmVudE1ham9yVmVyc2lvbl0pIHtcbiAgICByZXR1cm4gYEluZm9ybWF0aW9uIGFib3V0IHVwZ3JhZGluZyBmcm9tIHZlcnNpb24gJHtjdXJyZW50TWFqb3JWZXJzaW9ufS54IHRvIHZlcnNpb24gJHtjdXJyZW50TWFqb3JWZXJzaW9uICsgMX0ueCBpcyBhdmFpbGFibGUgaGVyZTogJHtVUEdSQURFX0RPQ1VNRU5UQVRJT05fTElOS1NbY3VycmVudE1ham9yVmVyc2lvbl19YDtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRWZXJzaW9uTWVzc2FnZShjdXJyZW50VmVyc2lvbjogc3RyaW5nLCBsYXRlclZlcnNpb246IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgcmV0dXJuIFtcbiAgICBgTmV3ZXIgdmVyc2lvbiBvZiBDREsgaXMgYXZhaWxhYmxlIFske2NoYWxrLmdyZWVuKGxhdGVyVmVyc2lvbiBhcyBzdHJpbmcpfV1gLFxuICAgIGdldE1ham9yVmVyc2lvblVwZ3JhZGVNZXNzYWdlKGN1cnJlbnRWZXJzaW9uKSxcbiAgICAnVXBncmFkZSByZWNvbW1lbmRlZCAobnBtIGluc3RhbGwgLWcgYXdzLWNkayknLFxuICBdLmZpbHRlcihCb29sZWFuKSBhcyBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRpc3BsYXlWZXJzaW9uTWVzc2FnZShjdXJyZW50VmVyc2lvbiA9IHZlcnNpb25OdW1iZXIoKSwgdmVyc2lvbkNoZWNrQ2FjaGU/OiBWZXJzaW9uQ2hlY2tUVEwpOiBQcm9taXNlPHZvaWQ+IHtcbiAgaWYgKCFwcm9jZXNzLnN0ZG91dC5pc1RUWSB8fCBwcm9jZXNzLmVudi5DREtfRElTQUJMRV9WRVJTSU9OX0NIRUNLKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgdHJ5IHtcbiAgICBjb25zdCBsYXRlclZlcnNpb24gPSBhd2FpdCBsYXRlc3RWZXJzaW9uSWZIaWdoZXIoY3VycmVudFZlcnNpb24sIHZlcnNpb25DaGVja0NhY2hlID8/IG5ldyBWZXJzaW9uQ2hlY2tUVEwoKSk7XG4gICAgaWYgKGxhdGVyVmVyc2lvbikge1xuICAgICAgY29uc3QgYmFubmVyTXNnID0gZm9ybWF0QXNCYW5uZXIoZ2V0VmVyc2lvbk1lc3NhZ2UoY3VycmVudFZlcnNpb24sIGxhdGVyVmVyc2lvbikpO1xuICAgICAgYmFubmVyTXNnLmZvckVhY2goKGUpID0+IHByaW50KGUpKTtcbiAgICB9XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGRlYnVnKGBDb3VsZCBub3QgcnVuIHZlcnNpb24gY2hlY2sgLSAke2Vyci5tZXNzYWdlfWApO1xuICB9XG59XG4iXX0=
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkJBQTZCO0FBQzdCLCtCQUErQjtBQUMvQiwrQkFBK0I7QUFDL0IsaUNBQWlDO0FBQ2pDLDRDQUE4QztBQUM5Qyx1RUFBZ0U7QUFDaEUsb0RBQTBEO0FBQzFELG9DQUFxRDtBQUVyRCxNQUFNLGtCQUFrQixHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQztBQUU1QyxNQUFNLDJCQUEyQixHQUEyQjtJQUMxRCxDQUFDLEVBQUUsNERBQTREO0NBQ2hFLENBQUM7QUFFVyxRQUFBLGVBQWUsR0FBRyxHQUFHLGFBQWEsRUFBRSxXQUFXLE1BQU0sRUFBRSxHQUFHLENBQUM7QUFFeEUsU0FBZ0IsYUFBYTtJQUMzQixpRUFBaUU7SUFDakUsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBTyxFQUFFLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUMzRixDQUFDO0FBSEQsc0NBR0M7QUFFRCxTQUFTLE1BQU07SUFDYixpRUFBaUU7SUFDakUsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBTyxFQUFFLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztBQUNqRSxDQUFDO0FBRUQsTUFBYSxlQUFlO0lBVzFCLFlBQVksSUFBYSxFQUFFLE9BQWdCO1FBQ3pDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxJQUFJLGVBQWUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3hELElBQUk7WUFDRixFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDdkMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzNEO1FBQUMsTUFBTTtZQUNOLE1BQU0sSUFBSSxLQUFLLENBQUMsY0FBYyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztTQUM1RTtRQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxJQUFJLGtCQUFrQixDQUFDO0lBQy9DLENBQUM7SUFuQk0sTUFBTSxDQUFDLGlCQUFpQjtRQUM3Qiw0Q0FBNEM7UUFDNUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLHlCQUFXLEVBQUUsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFrQk0sS0FBSyxDQUFDLFVBQVU7UUFDckIsSUFBSTtZQUNGLE1BQU0sYUFBYSxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztZQUN6RCxNQUFNLEtBQUssR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBRW5DLElBQUksQ0FBQyxLQUFLLEdBQUcsYUFBYSxDQUFDLEdBQUcsSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxvQkFBb0I7Z0JBQ3ZFLE9BQU8sSUFBSSxDQUFDO2FBQ2I7WUFDRCxPQUFPLEtBQUssQ0FBQztTQUNkO1FBQUMsT0FBTyxHQUFHLEVBQUU7WUFDWixJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFO2dCQUN6QixPQUFPLElBQUksQ0FBQzthQUNiO2lCQUFNO2dCQUNMLE1BQU0sR0FBRyxDQUFDO2FBQ1g7U0FDRjtJQUNILENBQUM7SUFFTSxLQUFLLENBQUMsTUFBTSxDQUFDLGFBQXNCO1FBQ3hDLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDbEIsYUFBYSxHQUFHLEVBQUUsQ0FBQztTQUNwQjtRQUNELE1BQU0sRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQy9DLENBQUM7Q0FDRjtBQTlDRCwwQ0E4Q0M7QUFFRCxnQ0FBZ0M7QUFDaEMsMkRBQTJEO0FBQ3BELEtBQUssVUFBVSxxQkFBcUIsQ0FBQyxjQUFzQixFQUFFLFNBQTBCO0lBQzVGLElBQUksQ0FBQyxDQUFDLE1BQU0sU0FBUyxDQUFDLFVBQVUsRUFBRSxDQUFDLEVBQUU7UUFDbkMsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUVELE1BQU0sYUFBYSxHQUFHLE1BQU0sNkJBQXVCLEVBQUUsQ0FBQztJQUN0RCxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUN6RCxNQUFNLFNBQVMsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7SUFFdEMsSUFBSSxPQUFPLEVBQUU7UUFDWCxPQUFPLGFBQWEsQ0FBQztLQUN0QjtTQUFNO1FBQ0wsT0FBTyxJQUFJLENBQUM7S0FDYjtBQUNILENBQUM7QUFkRCxzREFjQztBQUVELFNBQVMsNkJBQTZCLENBQUMsY0FBc0I7SUFDM0QsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3pELElBQUksMkJBQTJCLENBQUMsbUJBQW1CLENBQUMsRUFBRTtRQUNwRCxPQUFPLDRDQUE0QyxtQkFBbUIsaUJBQWlCLG1CQUFtQixHQUFHLENBQUMseUJBQXlCLDJCQUEyQixDQUFDLG1CQUFtQixDQUFDLEVBQUUsQ0FBQztLQUMzTDtBQUNILENBQUM7QUFFRCxTQUFTLGlCQUFpQixDQUFDLGNBQXNCLEVBQUUsWUFBb0I7SUFDckUsT0FBTztRQUNMLHNDQUFzQyxLQUFLLENBQUMsS0FBSyxDQUFDLFlBQXNCLENBQUMsR0FBRztRQUM1RSw2QkFBNkIsQ0FBQyxjQUFjLENBQUM7UUFDN0MsOENBQThDO0tBQy9DLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBYSxDQUFDO0FBQ2hDLENBQUM7QUFFTSxLQUFLLFVBQVUscUJBQXFCLENBQUMsY0FBYyxHQUFHLGFBQWEsRUFBRSxFQUFFLGlCQUFtQztJQUMvRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsRUFBRTtRQUNsRSxPQUFPO0tBQ1I7SUFFRCxJQUFJO1FBQ0YsTUFBTSxZQUFZLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQyxjQUFjLEVBQUUsaUJBQWlCLElBQUksSUFBSSxlQUFlLEVBQUUsQ0FBQyxDQUFDO1FBQzdHLElBQUksWUFBWSxFQUFFO1lBQ2hCLE1BQU0sU0FBUyxHQUFHLG1DQUFjLENBQUMsaUJBQWlCLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUM7WUFDbEYsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsZUFBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDcEM7S0FDRjtJQUFDLE9BQU8sR0FBRyxFQUFFO1FBQ1osZUFBSyxDQUFDLGlDQUFpQyxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztLQUN2RDtBQUNILENBQUM7QUFkRCxzREFjQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgKiBhcyBjaGFsayBmcm9tICdjaGFsayc7XG5pbXBvcnQgKiBhcyBmcyBmcm9tICdmcy1leHRyYSc7XG5pbXBvcnQgKiBhcyBzZW12ZXIgZnJvbSAnc2VtdmVyJztcbmltcG9ydCB7IGRlYnVnLCBwcmludCB9IGZyb20gJy4uL2xpYi9sb2dnaW5nJztcbmltcG9ydCB7IGZvcm1hdEFzQmFubmVyIH0gZnJvbSAnLi4vbGliL3V0aWwvY29uc29sZS1mb3JtYXR0ZXJzJztcbmltcG9ydCB7IGNka0NhY2hlRGlyLCByb290RGlyIH0gZnJvbSAnLi91dGlsL2RpcmVjdG9yaWVzJztcbmltcG9ydCB7IGdldExhdGVzdFZlcnNpb25Gcm9tTnBtIH0gZnJvbSAnLi91dGlsL25wbSc7XG5cbmNvbnN0IE9ORV9EQVlfSU5fU0VDT05EUyA9IDEgKiAyNCAqIDYwICogNjA7XG5cbmNvbnN0IFVQR1JBREVfRE9DVU1FTlRBVElPTl9MSU5LUzogUmVjb3JkPG51bWJlciwgc3RyaW5nPiA9IHtcbiAgMTogJ2h0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9jZGsvdjIvZ3VpZGUvbWlncmF0aW5nLXYyLmh0bWwnLFxufTtcblxuZXhwb3J0IGNvbnN0IERJU1BMQVlfVkVSU0lPTiA9IGAke3ZlcnNpb25OdW1iZXIoKX0gKGJ1aWxkICR7Y29tbWl0KCl9KWA7XG5cbmV4cG9ydCBmdW5jdGlvbiB2ZXJzaW9uTnVtYmVyKCk6IHN0cmluZyB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tcmVxdWlyZS1pbXBvcnRzXG4gIHJldHVybiByZXF1aXJlKHBhdGguam9pbihyb290RGlyKCksICdwYWNrYWdlLmpzb24nKSkudmVyc2lvbi5yZXBsYWNlKC9cXCtbMC05YS1mXSskLywgJycpO1xufVxuXG5mdW5jdGlvbiBjb21taXQoKTogc3RyaW5nIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1yZXF1aXJlLWltcG9ydHNcbiAgcmV0dXJuIHJlcXVpcmUocGF0aC5qb2luKHJvb3REaXIoKSwgJ2J1aWxkLWluZm8uanNvbicpKS5jb21taXQ7XG59XG5cbmV4cG9ydCBjbGFzcyBWZXJzaW9uQ2hlY2tUVEwge1xuICBwdWJsaWMgc3RhdGljIHRpbWVzdGFtcEZpbGVQYXRoKCk6IHN0cmluZyB7XG4gICAgLy8gVXNpbmcgdGhlIHNhbWUgcGF0aCBmcm9tIGFjY291bnQtY2FjaGUudHNcbiAgICByZXR1cm4gcGF0aC5qb2luKGNka0NhY2hlRGlyKCksICdyZXBvLXZlcnNpb24tdHRsJyk7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IGZpbGU6IHN0cmluZztcblxuICAvLyBGaWxlIG1vZGlmeSB0aW1lcyBhcmUgYWNjdXJhdGUgb25seSB0byB0aGUgc2Vjb25kXG4gIHByaXZhdGUgcmVhZG9ubHkgdHRsU2VjczogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKGZpbGU/OiBzdHJpbmcsIHR0bFNlY3M/OiBudW1iZXIpIHtcbiAgICB0aGlzLmZpbGUgPSBmaWxlIHx8IFZlcnNpb25DaGVja1RUTC50aW1lc3RhbXBGaWxlUGF0aCgpO1xuICAgIHRyeSB7XG4gICAgICBmcy5ta2RpcnNTeW5jKHBhdGguZGlybmFtZSh0aGlzLmZpbGUpKTtcbiAgICAgIGZzLmFjY2Vzc1N5bmMocGF0aC5kaXJuYW1lKHRoaXMuZmlsZSksIGZzLmNvbnN0YW50cy5XX09LKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgRGlyZWN0b3J5ICgke3BhdGguZGlybmFtZSh0aGlzLmZpbGUpfSkgaXMgbm90IHdyaXRhYmxlLmApO1xuICAgIH1cbiAgICB0aGlzLnR0bFNlY3MgPSB0dGxTZWNzIHx8IE9ORV9EQVlfSU5fU0VDT05EUztcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBoYXNFeHBpcmVkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBsYXN0Q2hlY2tUaW1lID0gKGF3YWl0IGZzLnN0YXQodGhpcy5maWxlKSkubXRpbWVNcztcbiAgICAgIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XG5cbiAgICAgIGlmICgodG9kYXkgLSBsYXN0Q2hlY2tUaW1lKSAvIDEwMDAgPiB0aGlzLnR0bFNlY3MpIHsgLy8gY29udmVydCBtcyB0byBzZWNcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBpZiAoZXJyLmNvZGUgPT09ICdFTk9FTlQnKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhc3luYyB1cGRhdGUobGF0ZXN0VmVyc2lvbj86IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghbGF0ZXN0VmVyc2lvbikge1xuICAgICAgbGF0ZXN0VmVyc2lvbiA9ICcnO1xuICAgIH1cbiAgICBhd2FpdCBmcy53cml0ZUZpbGUodGhpcy5maWxlLCBsYXRlc3RWZXJzaW9uKTtcbiAgfVxufVxuXG4vLyBFeHBvcnQgZm9yIHVuaXQgdGVzdGluZyBvbmx5LlxuLy8gRG9uJ3QgdXNlIGRpcmVjdGx5LCB1c2UgZGlzcGxheVZlcnNpb25NZXNzYWdlKCkgaW5zdGVhZC5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBsYXRlc3RWZXJzaW9uSWZIaWdoZXIoY3VycmVudFZlcnNpb246IHN0cmluZywgY2FjaGVGaWxlOiBWZXJzaW9uQ2hlY2tUVEwpOiBQcm9taXNlPHN0cmluZ3xudWxsPiB7XG4gIGlmICghKGF3YWl0IGNhY2hlRmlsZS5oYXNFeHBpcmVkKCkpKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb25zdCBsYXRlc3RWZXJzaW9uID0gYXdhaXQgZ2V0TGF0ZXN0VmVyc2lvbkZyb21OcG0oKTtcbiAgY29uc3QgaXNOZXdlciA9IHNlbXZlci5ndChsYXRlc3RWZXJzaW9uLCBjdXJyZW50VmVyc2lvbik7XG4gIGF3YWl0IGNhY2hlRmlsZS51cGRhdGUobGF0ZXN0VmVyc2lvbik7XG5cbiAgaWYgKGlzTmV3ZXIpIHtcbiAgICByZXR1cm4gbGF0ZXN0VmVyc2lvbjtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRNYWpvclZlcnNpb25VcGdyYWRlTWVzc2FnZShjdXJyZW50VmVyc2lvbjogc3RyaW5nKTogc3RyaW5nIHwgdm9pZCB7XG4gIGNvbnN0IGN1cnJlbnRNYWpvclZlcnNpb24gPSBzZW12ZXIubWFqb3IoY3VycmVudFZlcnNpb24pO1xuICBpZiAoVVBHUkFERV9ET0NVTUVOVEFUSU9OX0xJTktTW2N1cnJlbnRNYWpvclZlcnNpb25dKSB7XG4gICAgcmV0dXJuIGBJbmZvcm1hdGlvbiBhYm91dCB1cGdyYWRpbmcgZnJvbSB2ZXJzaW9uICR7Y3VycmVudE1ham9yVmVyc2lvbn0ueCB0byB2ZXJzaW9uICR7Y3VycmVudE1ham9yVmVyc2lvbiArIDF9LnggaXMgYXZhaWxhYmxlIGhlcmU6ICR7VVBHUkFERV9ET0NVTUVOVEFUSU9OX0xJTktTW2N1cnJlbnRNYWpvclZlcnNpb25dfWA7XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0VmVyc2lvbk1lc3NhZ2UoY3VycmVudFZlcnNpb246IHN0cmluZywgbGF0ZXJWZXJzaW9uOiBzdHJpbmcpOiBzdHJpbmdbXSB7XG4gIHJldHVybiBbXG4gICAgYE5ld2VyIHZlcnNpb24gb2YgQ0RLIGlzIGF2YWlsYWJsZSBbJHtjaGFsay5ncmVlbihsYXRlclZlcnNpb24gYXMgc3RyaW5nKX1dYCxcbiAgICBnZXRNYWpvclZlcnNpb25VcGdyYWRlTWVzc2FnZShjdXJyZW50VmVyc2lvbiksXG4gICAgJ1VwZ3JhZGUgcmVjb21tZW5kZWQgKG5wbSBpbnN0YWxsIC1nIGF3cy1jZGspJyxcbiAgXS5maWx0ZXIoQm9vbGVhbikgYXMgc3RyaW5nW107XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkaXNwbGF5VmVyc2lvbk1lc3NhZ2UoY3VycmVudFZlcnNpb24gPSB2ZXJzaW9uTnVtYmVyKCksIHZlcnNpb25DaGVja0NhY2hlPzogVmVyc2lvbkNoZWNrVFRMKTogUHJvbWlzZTx2b2lkPiB7XG4gIGlmICghcHJvY2Vzcy5zdGRvdXQuaXNUVFkgfHwgcHJvY2Vzcy5lbnYuQ0RLX0RJU0FCTEVfVkVSU0lPTl9DSEVDSykge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHRyeSB7XG4gICAgY29uc3QgbGF0ZXJWZXJzaW9uID0gYXdhaXQgbGF0ZXN0VmVyc2lvbklmSGlnaGVyKGN1cnJlbnRWZXJzaW9uLCB2ZXJzaW9uQ2hlY2tDYWNoZSA/PyBuZXcgVmVyc2lvbkNoZWNrVFRMKCkpO1xuICAgIGlmIChsYXRlclZlcnNpb24pIHtcbiAgICAgIGNvbnN0IGJhbm5lck1zZyA9IGZvcm1hdEFzQmFubmVyKGdldFZlcnNpb25NZXNzYWdlKGN1cnJlbnRWZXJzaW9uLCBsYXRlclZlcnNpb24pKTtcbiAgICAgIGJhbm5lck1zZy5mb3JFYWNoKChlKSA9PiBwcmludChlKSk7XG4gICAgfVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICBkZWJ1ZyhgQ291bGQgbm90IHJ1biB2ZXJzaW9uIGNoZWNrIC0gJHtlcnIubWVzc2FnZX1gKTtcbiAgfVxufVxuIl19
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "aws-cdk",
|
|
3
3
|
"description": "CDK Toolkit, the command line tool for CDK apps",
|
|
4
|
-
"version": "2.
|
|
4
|
+
"version": "2.40.0",
|
|
5
5
|
"bin": {
|
|
6
6
|
"cdk": "bin/cdk"
|
|
7
7
|
},
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
},
|
|
60
60
|
"license": "Apache-2.0",
|
|
61
61
|
"devDependencies": {
|
|
62
|
-
"@aws-cdk/core": "2.
|
|
62
|
+
"@aws-cdk/core": "2.40.0",
|
|
63
63
|
"@octokit/rest": "^18.12.0",
|
|
64
64
|
"@types/archiver": "^5.3.1",
|
|
65
65
|
"@types/fs-extra": "^8.1.2",
|
|
@@ -67,37 +67,37 @@
|
|
|
67
67
|
"@types/jest": "^27.5.2",
|
|
68
68
|
"@types/minimatch": "^3.0.5",
|
|
69
69
|
"@types/mockery": "^1.4.30",
|
|
70
|
-
"@types/node": "^14.18.
|
|
70
|
+
"@types/node": "^14.18.26",
|
|
71
71
|
"@types/promptly": "^3.0.2",
|
|
72
|
-
"@types/semver": "^7.3.
|
|
72
|
+
"@types/semver": "^7.3.12",
|
|
73
73
|
"@types/sinon": "^9.0.11",
|
|
74
74
|
"@types/table": "^6.0.0",
|
|
75
75
|
"@types/uuid": "^8.3.4",
|
|
76
76
|
"@types/wrap-ansi": "^3.0.0",
|
|
77
77
|
"@types/yargs": "^15.0.14",
|
|
78
78
|
"aws-sdk-mock": "5.6.0",
|
|
79
|
-
"@aws-cdk/cdk-build-tools": "2.
|
|
79
|
+
"@aws-cdk/cdk-build-tools": "2.40.0",
|
|
80
80
|
"jest": "^27.5.1",
|
|
81
81
|
"madge": "^5.0.1",
|
|
82
82
|
"constructs": "^10.0.0",
|
|
83
83
|
"make-runnable": "^1.3.10",
|
|
84
84
|
"mockery": "^2.1.0",
|
|
85
85
|
"nock": "^13.2.9",
|
|
86
|
-
"@aws-cdk/pkglint": "2.
|
|
86
|
+
"@aws-cdk/pkglint": "2.40.0",
|
|
87
87
|
"sinon": "^9.2.4",
|
|
88
88
|
"ts-jest": "^27.1.5",
|
|
89
89
|
"ts-mock-imports": "^1.3.8",
|
|
90
90
|
"xml-js": "^1.6.11",
|
|
91
91
|
"axios": "^0.27.2",
|
|
92
|
-
"@aws-cdk/cloud-assembly-schema": "2.
|
|
93
|
-
"@aws-cdk/cloudformation-diff": "2.
|
|
94
|
-
"@aws-cdk/cx-api": "2.
|
|
95
|
-
"@aws-cdk/region-info": "2.
|
|
96
|
-
"@jsii/check-node": "1.
|
|
92
|
+
"@aws-cdk/cloud-assembly-schema": "2.40.0",
|
|
93
|
+
"@aws-cdk/cloudformation-diff": "2.40.0",
|
|
94
|
+
"@aws-cdk/cx-api": "2.40.0",
|
|
95
|
+
"@aws-cdk/region-info": "2.40.0",
|
|
96
|
+
"@jsii/check-node": "1.66.0",
|
|
97
97
|
"archiver": "^5.3.1",
|
|
98
98
|
"aws-sdk": "^2.1093.0",
|
|
99
99
|
"camelcase": "^6.3.0",
|
|
100
|
-
"cdk-assets": "2.
|
|
100
|
+
"cdk-assets": "2.40.0",
|
|
101
101
|
"chokidar": "^3.5.3",
|
|
102
102
|
"chalk": "^4",
|
|
103
103
|
"decamelize": "^5.0.1",
|
|
@@ -105,6 +105,7 @@
|
|
|
105
105
|
"glob": "^7.2.3",
|
|
106
106
|
"json-diff": "^0.9.0",
|
|
107
107
|
"minimatch": ">=3.1",
|
|
108
|
+
"p-queue": "^6.6.2",
|
|
108
109
|
"promptly": "^3.2.0",
|
|
109
110
|
"proxy-agent": "^5.0.0",
|
|
110
111
|
"semver": "^7.3.7",
|
|
@@ -153,7 +153,6 @@ describe('Bootstrapping v2', () => {
|
|
|
153
153
|
})).resolves.toEqual(expect.objectContaining({ noOp: true }));
|
|
154
154
|
});
|
|
155
155
|
test('bootstrap template has the right exports', async () => {
|
|
156
|
-
var _a;
|
|
157
156
|
let template;
|
|
158
157
|
mockDeployStack.mockImplementation((args) => {
|
|
159
158
|
template = args.stack.template;
|
|
@@ -163,7 +162,7 @@ describe('Bootstrapping v2', () => {
|
|
|
163
162
|
cloudFormationExecutionPolicies: ['arn:policy'],
|
|
164
163
|
},
|
|
165
164
|
});
|
|
166
|
-
const exports = Object.values(
|
|
165
|
+
const exports = Object.values(template.Outputs ?? {})
|
|
167
166
|
.filter((o) => o.Export !== undefined)
|
|
168
167
|
.map((o) => o.Export.Name);
|
|
169
168
|
expect(exports).toEqual([
|
|
@@ -288,4 +287,4 @@ describe('Bootstrapping v2', () => {
|
|
|
288
287
|
});
|
|
289
288
|
});
|
|
290
289
|
});
|
|
291
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdHN0cmFwMi50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYm9vdHN0cmFwMi50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO0FBRWxDLElBQUksQ0FBQyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUM3QyxXQUFXLEVBQUUsZUFBZTtDQUM3QixDQUFDLENBQUMsQ0FBQztBQUVKLHVDQUE4RTtBQUM5RSwrQ0FBZ0Y7QUFFaEYsSUFBSSxZQUEwQixDQUFDO0FBQy9CLFVBQVUsQ0FBQyxHQUFHLEVBQUU7SUFDZCxZQUFZLEdBQUcsSUFBSSxrQkFBWSxDQUFDLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7QUFDekQsQ0FBQyxDQUFDLENBQUM7QUFFSCxTQUFTLGtCQUFrQixDQUFDLFVBQTZDO0lBQ3ZFLE1BQU0sR0FBRyxHQUFHLElBQUksa0JBQU8sRUFBRSxDQUFDO0lBQ3pCLGlCQUFtQixDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsaUJBQVcsQ0FBQyxTQUFTLENBQUMsNkJBQWtCLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDN0gsQ0FBQztBQUVELFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxHQUFHLEVBQUU7SUFDaEMsTUFBTSxHQUFHLEdBQUc7UUFDVixPQUFPLEVBQUUsY0FBYztRQUN2QixNQUFNLEVBQUUsV0FBVztRQUNuQixJQUFJLEVBQUUsTUFBTTtLQUNiLENBQUM7SUFFRixJQUFJLEdBQW9CLENBQUM7SUFDekIsVUFBVSxDQUFDLEdBQUcsRUFBRTtRQUNkLEdBQUcsR0FBRyxJQUFJLDBCQUFlLENBQUMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUM5QyxvREFBb0Q7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QUNsRCxDQUFDLGFBQWEsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDO1lBQ3JDLDBCQUEwQjtZQUMxQixDQUFDLGFBQWEsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLENBQUM7WUFDekMseUJBQXlCO1lBQ3pCLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQztTQUM5QixDQUFDLENBQUMsbUZBQW1GLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSx1QkFBdUIsRUFBRSxVQUFVLEVBQUUsRUFBRTtZQUNsSixRQUFRO1lBQ1Isa0JBQWtCLENBQUM7Z0JBQ2pCLFVBQVUsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO29CQUN6Qjt3QkFDRSxZQUFZLEVBQUUsMEJBQTBCO3dCQUN4QyxjQUFjLEVBQUUsWUFBWTtxQkFDN0I7aUJBQ0YsQ0FBQyxDQUFDLENBQUMsU0FBUzthQUNkLENBQUMsQ0FBQztZQUVILE9BQU87WUFDUCxNQUFNLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFO2dCQUNoRCxVQUFVLEVBQUU7b0JBQ1YsdUJBQXVCO29CQUN2QiwrQkFBK0IsRUFBRSxDQUFDLFVBQVUsQ0FBQztpQkFDOUM7YUFDRixDQUFDLENBQUM7WUFFSCxPQUFPO1lBQ1AsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDbkUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDbEMsd0JBQXdCLEVBQUUsVUFBVTtpQkFDckMsQ0FBQzthQUNILENBQUMsQ0FBQyxDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgbW9ja0RlcGxveVN0YWNrID0gamVzdC5mbigpO1xuXG5qZXN0Lm1vY2soJy4uLy4uL2xpYi9hcGkvZGVwbG95LXN0YWNrJywgKCkgPT4gKHtcbiAgZGVwbG95U3RhY2s6IG1vY2tEZXBsb3lTdGFjayxcbn0pKTtcblxuaW1wb3J0IHsgQm9vdHN0cmFwcGVyLCBEZXBsb3lTdGFja09wdGlvbnMsIFRvb2xraXRJbmZvIH0gZnJvbSAnLi4vLi4vbGliL2FwaSc7XG5pbXBvcnQgeyBtb2NrQm9vdHN0cmFwU3RhY2ssIE1vY2tTZGssIE1vY2tTZGtQcm92aWRlciB9IGZyb20gJy4uL3V0aWwvbW9jay1zZGsnO1xuXG5sZXQgYm9vdHN0cmFwcGVyOiBCb290c3RyYXBwZXI7XG5iZWZvcmVFYWNoKCgpID0+IHtcbiAgYm9vdHN0cmFwcGVyID0gbmV3IEJvb3RzdHJhcHBlcih7IHNvdXJjZTogJ2RlZmF1bHQnIH0pO1xufSk7XG5cbmZ1bmN0aW9uIG1vY2tUaGVUb29sa2l0SW5mbyhzdGFja1Byb3BzOiBQYXJ0aWFsPEFXUy5DbG91ZEZvcm1hdGlvbi5TdGFjaz4pIHtcbiAgY29uc3Qgc2RrID0gbmV3IE1vY2tTZGsoKTtcbiAgKFRvb2xraXRJbmZvIGFzIGFueSkubG9va3VwID0gamVzdC5mbigpLm1vY2tSZXNvbHZlZFZhbHVlKFRvb2xraXRJbmZvLmZyb21TdGFjayhtb2NrQm9vdHN0cmFwU3RhY2soc2RrLCBzdGFja1Byb3BzKSwgc2RrKSk7XG59XG5cbmRlc2NyaWJlKCdCb290c3RyYXBwaW5nIHYyJywgKCkgPT4ge1xuICBjb25zdCBlbnYgPSB7XG4gICAgYWNjb3VudDogJzEyMzQ1Njc4OTAxMicsXG4gICAgcmVnaW9uOiAndXMtZWFzdC0xJyxcbiAgICBuYW1lOiAnbW9jaycsXG4gIH07XG5cbiAgbGV0IHNkazogTW9ja1Nka1Byb3ZpZGVyO1xuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICBzZGsgPSBuZXcgTW9ja1Nka1Byb3ZpZGVyKHsgcmVhbFNkazogZmFsc2UgfSk7XG4gICAgLy8gQnkgZGVmYXVsdCwgd2UnbGwgcmV0dXJuIGEgbm9uLWZvdW5kIHRvb2xraXQgaW5mb1xuICAgIChUb29sa2l0SW5mbyBhcyBhbnkpLmxvb2t1cCA9IGplc3QuZm4oKS5tb2NrUmVzb2x2ZWRWYWx1ZShUb29sa2l0SW5mby5ib290c3RyYXBsZXNzRGVwbG95bWVudHNPbmx5KHNkay5zZGspKTtcbiAgfSk7XG5cbiAgYWZ0ZXJFYWNoKCgpID0+IHtcbiAgICBtb2NrRGVwbG95U3RhY2subW9ja0NsZWFyKCk7XG4gIH0pO1xuXG4gIHRlc3QoJ3Bhc3NlcyB0aGUgYnVja2V0IG5hbWUgYXMgYSBDRk4gcGFyYW1ldGVyJywgYXN5bmMgKCkgPT4ge1xuICAgIGF3YWl0IGJvb3RzdHJhcHBlci5ib290c3RyYXBFbnZpcm9ubWVudChlbnYsIHNkaywge1xuICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICBidWNrZXROYW1lOiAnbXktYnVja2V0LW5hbWUnLFxuICAgICAgICBjbG91ZEZvcm1hdGlvbkV4ZWN1dGlvblBvbGljaWVzOiBbJ2Fybjpwb2xpY3knXSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBleHBlY3QobW9ja0RlcGxveVN0YWNrKS50b0hhdmVCZWVuQ2FsbGVkV2l0aChleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICBwYXJhbWV0ZXJzOiBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgIEZpbGVBc3NldHNCdWNrZXROYW1lOiAnbXktYnVja2V0LW5hbWUnLFxuICAgICAgICBQdWJsaWNBY2Nlc3NCbG9ja0NvbmZpZ3VyYXRpb246ICd0cnVlJyxcbiAgICAgIH0pLFxuICAgIH0pKTtcbiAgfSk7XG5cbiAgdGVzdCgncGFzc2VzIHRoZSBLTVMga2V5IElEIGFzIGEgQ0ZOIHBhcmFtZXRlcicsIGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCBib290c3RyYXBwZXIuYm9vdHN0cmFwRW52aXJvbm1lbnQoZW52LCBzZGssIHtcbiAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgY2xvdWRGb3JtYXRpb25FeGVjdXRpb25Qb2xpY2llczogWydhcm46cG9saWN5J10sXG4gICAgICAgIGttc0tleUlkOiAnbXkta21zLWtleS1pZCcsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgZXhwZWN0KG1vY2tEZXBsb3lTdGFjaykudG9IYXZlQmVlbkNhbGxlZFdpdGgoZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgcGFyYW1ldGVyczogZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICBGaWxlQXNzZXRzQnVja2V0S21zS2V5SWQ6ICdteS1rbXMta2V5LWlkJyxcbiAgICAgICAgUHVibGljQWNjZXNzQmxvY2tDb25maWd1cmF0aW9uOiAndHJ1ZScsXG4gICAgICB9KSxcbiAgICB9KSk7XG4gIH0pO1xuXG4gIHRlc3QoJ3Bhc3NlcyBmYWxzZSB0byBQdWJsaWNBY2Nlc3NCbG9ja0NvbmZpZ3VyYXRpb24nLCBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgYm9vdHN0cmFwcGVyLmJvb3RzdHJhcEVudmlyb25tZW50KGVudiwgc2RrLCB7XG4gICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgIGNsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUG9saWNpZXM6IFsnYXJuOnBvbGljeSddLFxuICAgICAgICBwdWJsaWNBY2Nlc3NCbG9ja0NvbmZpZ3VyYXRpb246IGZhbHNlLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGV4cGVjdChtb2NrRGVwbG95U3RhY2spLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgIHBhcmFtZXRlcnM6IGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgUHVibGljQWNjZXNzQmxvY2tDb25maWd1cmF0aW9uOiAnZmFsc2UnLFxuICAgICAgfSksXG4gICAgfSkpO1xuICB9KTtcblxuICB0ZXN0KCdwYXNzaW5nIHRydXN0ZWQgYWNjb3VudHMgd2l0aG91dCBDRk4gbWFuYWdlZCBwb2xpY2llcyByZXN1bHRzIGluIGFuIGVycm9yJywgYXN5bmMgKCkgPT4ge1xuICAgIGF3YWl0IGV4cGVjdChib290c3RyYXBwZXIuYm9vdHN0cmFwRW52aXJvbm1lbnQoZW52LCBzZGssIHtcbiAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgdHJ1c3RlZEFjY291bnRzOiBbJzEyMzQ1Njc4OTAxMiddLFxuICAgICAgfSxcbiAgICB9KSlcbiAgICAgIC5yZWplY3RzXG4gICAgICAudG9UaHJvdygvLS1jbG91ZGZvcm1hdGlvbi1leGVjdXRpb24tcG9saWNpZXMvKTtcbiAgfSk7XG5cbiAgdGVzdCgncGFzc2luZyB0cnVzdGVkIGFjY291bnRzIHdpdGhvdXQgQ0ZOIG1hbmFnZWQgcG9saWNpZXMgb24gdGhlIGV4aXN0aW5nIHN0YWNrIHJlc3VsdHMgaW4gYW4gZXJyb3InLCBhc3luYyAoKSA9PiB7XG4gICAgbW9ja1RoZVRvb2xraXRJbmZvKHtcbiAgICAgIFBhcmFtZXRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIFBhcmFtZXRlcktleTogJ0Nsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUG9saWNpZXMnLFxuICAgICAgICAgIFBhcmFtZXRlclZhbHVlOiAnJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG5cbiAgICBhd2FpdCBleHBlY3QoYm9vdHN0cmFwcGVyLmJvb3RzdHJhcEVudmlyb25tZW50KGVudiwgc2RrLCB7XG4gICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgIHRydXN0ZWRBY2NvdW50czogWycxMjM0NTY3ODkwMTInXSxcbiAgICAgIH0sXG4gICAgfSkpXG4gICAgICAucmVqZWN0c1xuICAgICAgLnRvVGhyb3coLy0tY2xvdWRmb3JtYXRpb24tZXhlY3V0aW9uLXBvbGljaWVzLyk7XG4gIH0pO1xuXG4gIHRlc3QoJ3Bhc3Npbmcgbm8gQ0ZOIG1hbmFnZWQgcG9saWNpZXMgd2l0aG91dCB0cnVzdGVkIGFjY291bnRzIGlzIG9rYXknLCBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgYm9vdHN0cmFwcGVyLmJvb3RzdHJhcEVudmlyb25tZW50KGVudiwgc2RrLCB7XG4gICAgICBwYXJhbWV0ZXJzOiB7fSxcbiAgICB9KTtcblxuICAgIGV4cGVjdChtb2NrRGVwbG95U3RhY2spLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgIHBhcmFtZXRlcnM6IGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgQ2xvdWRGb3JtYXRpb25FeGVjdXRpb25Qb2xpY2llczogJycsXG4gICAgICB9KSxcbiAgICB9KSk7XG4gIH0pO1xuXG4gIHRlc3QoJ3Bhc3NpbmcgdHJ1c3RlZCBhY2NvdW50cyBmb3IgbG9va3VwIGdlbmVyYXRlcyB0aGUgY29ycmVjdCBzdGFjayBwYXJhbWV0ZXInLCBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgYm9vdHN0cmFwcGVyLmJvb3RzdHJhcEVudmlyb25tZW50KGVudiwgc2RrLCB7XG4gICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgIHRydXN0ZWRBY2NvdW50c0Zvckxvb2t1cDogWycxMjM0NTY3ODkwMTInXSxcbiAgICAgICAgY2xvdWRGb3JtYXRpb25FeGVjdXRpb25Qb2xpY2llczogWydhd3M6Ly9mb28nXSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBleHBlY3QobW9ja0RlcGxveVN0YWNrKS50b0hhdmVCZWVuQ2FsbGVkV2l0aChleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICBwYXJhbWV0ZXJzOiBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgIFRydXN0ZWRBY2NvdW50c0Zvckxvb2t1cDogJzEyMzQ1Njc4OTAxMicsXG4gICAgICB9KSxcbiAgICB9KSk7XG4gIH0pO1xuXG4gIHRlc3QoJ2FsbG93IGFkZGluZyB0cnVzdGVkIGFjY291bnQgaWYgdGhlcmUgd2FzIGFscmVhZHkgYSBwb2xpY3kgb24gdGhlIHN0YWNrJywgYXN5bmMgKCkgPT4ge1xuICAgIC8vIEdJVkVOXG4gICAgbW9ja1RoZVRvb2xraXRJbmZvKHtcbiAgICAgIFBhcmFtZXRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIFBhcmFtZXRlcktleTogJ0Nsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUG9saWNpZXMnLFxuICAgICAgICAgIFBhcmFtZXRlclZhbHVlOiAnYXJuOmF3czpzb21ldGhpbmcnLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9KTtcblxuICAgIGF3YWl0IGJvb3RzdHJhcHBlci5ib290c3RyYXBFbnZpcm9ubWVudChlbnYsIHNkaywge1xuICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICB0cnVzdGVkQWNjb3VudHM6IFsnMTIzNDU2Nzg5MDEyJ10sXG4gICAgICB9LFxuICAgIH0pO1xuICAgIC8vIERpZCBub3QgdGhyb3dcbiAgfSk7XG5cbiAgdGVzdCgnRG8gbm90IGFsbG93IGRvd25ncmFkaW5nIGJvb3RzdHJhcCBzdGFjayB2ZXJzaW9uJywgYXN5bmMgKCkgPT4ge1xuICAgIC8vIEdJVkVOXG4gICAgbW9ja1RoZVRvb2xraXRJbmZvKHtcbiAgICAgIE91dHB1dHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIE91dHB1dEtleTogJ0Jvb3RzdHJhcFZlcnNpb24nLFxuICAgICAgICAgIE91dHB1dFZhbHVlOiAnOTk5JyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG5cbiAgICBhd2FpdCBleHBlY3QoYm9vdHN0cmFwcGVyLmJvb3RzdHJhcEVudmlyb25tZW50KGVudiwgc2RrLCB7XG4gICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgIGNsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUG9saWNpZXM6IFsnYXJuOnBvbGljeSddLFxuICAgICAgfSxcbiAgICB9KSkucmVzb2x2ZXMudG9FcXVhbChleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7IG5vT3A6IHRydWUgfSkpO1xuICB9KTtcblxuICB0ZXN0KCdib290c3RyYXAgdGVtcGxhdGUgaGFzIHRoZSByaWdodCBleHBvcnRzJywgYXN5bmMgKCkgPT4ge1xuICAgIGxldCB0ZW1wbGF0ZTogYW55O1xuICAgIG1vY2tEZXBsb3lTdGFjay5tb2NrSW1wbGVtZW50YXRpb24oKGFyZ3M6IERlcGxveVN0YWNrT3B0aW9ucykgPT4ge1xuICAgICAgdGVtcGxhdGUgPSBhcmdzLnN0YWNrLnRlbXBsYXRlO1xuICAgIH0pO1xuXG4gICAgYXdhaXQgYm9vdHN0cmFwcGVyLmJvb3RzdHJhcEVudmlyb25tZW50KGVudiwgc2RrLCB7XG4gICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgIGNsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUG9saWNpZXM6IFsnYXJuOnBvbGljeSddLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGV4cG9ydHMgPSBPYmplY3QudmFsdWVzKHRlbXBsYXRlLk91dHB1dHMgPz8ge30pXG4gICAgICAuZmlsdGVyKChvOiBhbnkpID0+IG8uRXhwb3J0ICE9PSB1bmRlZmluZWQpXG4gICAgICAubWFwKChvOiBhbnkpID0+IG8uRXhwb3J0Lk5hbWUpO1xuXG4gICAgZXhwZWN0KGV4cG9ydHMpLnRvRXF1YWwoW1xuICAgICAgLy8gVGhpcyB1c2VkIHRvIGJlIHVzZWQgYnkgYXdzLXMzLWFzc2V0c1xuICAgICAgeyAnRm46OlN1Yic6ICdDZGtCb290c3RyYXAtJHtRdWFsaWZpZXJ9LUZpbGVBc3NldEtleUFybicgfSxcbiAgICBdKTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3Rlcm1pbmF0aW9uIHByb3RlY3Rpb24nLCAoKSA9PiB7XG4gICAgdGVzdCgnc3RhY2sgaXMgbm90IHRlcm1pbmF0aW9uIHByb3RlY3RlZCBieSBkZWZhdWx0JywgYXN5bmMgKCkgPT4ge1xuICAgICAgYXdhaXQgYm9vdHN0cmFwcGVyLmJvb3RzdHJhcEVudmlyb25tZW50KGVudiwgc2RrLCB7XG4gICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICBjbG91ZEZvcm1hdGlvbkV4ZWN1dGlvblBvbGljaWVzOiBbJ2Fybjpwb2xpY3knXSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgICBleHBlY3QobW9ja0RlcGxveVN0YWNrKS50b0hhdmVCZWVuQ2FsbGVkV2l0aChleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgIHN0YWNrOiBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgICAgdGVybWluYXRpb25Qcm90ZWN0aW9uOiBmYWxzZSxcbiAgICAgICAgfSksXG4gICAgICB9KSk7XG4gICAgfSk7XG5cbiAgICB0ZXN0KCdzdGFjayBpcyB0ZXJtaW5hdGlvbiBwcm90ZWN0ZWQgd2hlbiBvcHRpb24gaXMgc2V0JywgYXN5bmMgKCkgPT4ge1xuICAgICAgYXdhaXQgYm9vdHN0cmFwcGVyLmJvb3RzdHJhcEVudmlyb25tZW50KGVudiwgc2RrLCB7XG4gICAgICAgIHRlcm1pbmF0aW9uUHJvdGVjdGlvbjogdHJ1ZSxcbiAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgIGNsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUG9saWNpZXM6IFsnYXJuOnBvbGljeSddLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGV4cGVjdChtb2NrRGVwbG95U3RhY2spLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgc3RhY2s6IGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgICB0ZXJtaW5hdGlvblByb3RlY3Rpb246IHRydWUsXG4gICAgICAgIH0pLFxuICAgICAgfSkpO1xuICAgIH0pO1xuXG4gICAgdGVzdCgndGVybWluYXRpb24gcHJvdGVjdGlvbiBpcyBsZWZ0IGFsb25lIHdoZW4gb3B0aW9uIGlzIG5vdCBnaXZlbicsIGFzeW5jICgpID0+IHtcbiAgICAgIG1vY2tUaGVUb29sa2l0SW5mbyh7XG4gICAgICAgIEVuYWJsZVRlcm1pbmF0aW9uUHJvdGVjdGlvbjogdHJ1ZSxcbiAgICAgIH0pO1xuXG4gICAgICBhd2FpdCBib290c3RyYXBwZXIuYm9vdHN0cmFwRW52aXJvbm1lbnQoZW52LCBzZGssIHtcbiAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgIGNsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUG9saWNpZXM6IFsnYXJuOnBvbGljeSddLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGV4cGVjdChtb2NrRGVwbG95U3RhY2spLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgc3RhY2s6IGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgICB0ZXJtaW5hdGlvblByb3RlY3Rpb246IHRydWUsXG4gICAgICAgIH0pLFxuICAgICAgfSkpO1xuICAgIH0pO1xuXG4gICAgdGVzdCgndGVybWluYXRpb24gcHJvdGVjdGlvbiBjYW4gYmUgc3dpdGNoZWQgb2ZmJywgYXN5bmMgKCkgPT4ge1xuICAgICAgbW9ja1RoZVRvb2xraXRJbmZvKHtcbiAgICAgICAgRW5hYmxlVGVybWluYXRpb25Qcm90ZWN0aW9uOiB0cnVlLFxuICAgICAgfSk7XG5cbiAgICAgIGF3YWl0IGJvb3RzdHJhcHBlci5ib290c3RyYXBFbnZpcm9ubWVudChlbnYsIHNkaywge1xuICAgICAgICB0ZXJtaW5hdGlvblByb3RlY3Rpb246IGZhbHNlLFxuICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgY2xvdWRGb3JtYXRpb25FeGVjdXRpb25Qb2xpY2llczogWydhcm46cG9saWN5J10sXG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgZXhwZWN0KG1vY2tEZXBsb3lTdGFjaykudG9IYXZlQmVlbkNhbGxlZFdpdGgoZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICBzdGFjazogZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICAgIHRlcm1pbmF0aW9uUHJvdGVjdGlvbjogZmFsc2UsXG4gICAgICAgIH0pLFxuICAgICAgfSkpO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnS01TIGtleScsICgpID0+IHtcbiAgICB0ZXN0LmVhY2goW1xuICAgICAgLy8gRGVmYXVsdCBjYXNlXG4gICAgICBbdW5kZWZpbmVkLCAnQVdTX01BTkFHRURfS0VZJ10sXG4gICAgICAvLyBDcmVhdGUgYSBuZXcga2V5XG4gICAgICBbdHJ1ZSwgJyddLFxuICAgICAgLy8gRG9uJ3QgY3JlYXRlIGEgbmV3IGtleVxuICAgICAgW2ZhbHNlLCAnQVdTX01BTkFHRURfS0VZJ10sXG4gICAgXSkoJyhuZXcgc3RhY2spIGNyZWF0ZUN1c3RvbWVyTWFzdGVyS2V5PSVwID0+IHBhcmFtZXRlciBiZWNvbWVzICVwICcsIGFzeW5jIChjcmVhdGVDdXN0b21lck1hc3RlcktleSwgcGFyYW1LZXlJZCkgPT4ge1xuICAgICAgLy8gR0lWRU46IG5vIGV4aXN0aW5nIHN0YWNrXG5cbiAgICAgIC8vIFdIRU5cbiAgICAgIGF3YWl0IGJvb3RzdHJhcHBlci5ib290c3RyYXBFbnZpcm9ubWVudChlbnYsIHNkaywge1xuICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgY3JlYXRlQ3VzdG9tZXJNYXN0ZXJLZXksXG4gICAgICAgICAgY2xvdWRGb3JtYXRpb25FeGVjdXRpb25Qb2xpY2llczogWydhcm46Ym9vaCddLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIC8vIFRIRU5cbiAgICAgIGV4cGVjdChtb2NrRGVwbG95U3RhY2spLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgcGFyYW1ldGVyczogZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICAgIEZpbGVBc3NldHNCdWNrZXRLbXNLZXlJZDogcGFyYW1LZXlJZCxcbiAgICAgICAgfSksXG4gICAgICB9KSk7XG4gICAgfSk7XG5cbiAgICB0ZXN0LmVhY2goW1xuICAgICAgLy8gT2xkIGJvb3RzdHJhcCBzdGFjayBiZWluZyB1cGdyYWRlZCB0byBuZXcgb25lXG4gICAgICBbdW5kZWZpbmVkLCB1bmRlZmluZWQsICdBV1NfTUFOQUdFRF9LRVknXSxcbiAgICAgIC8vIFRoZXJlIGlzIGEgdmFsdWUsIHVzZXIgZG9lc24ndCByZXF1ZXN0IGEgY2hhbmdlXG4gICAgICBbJ2Fybjphd3M6a2V5JywgdW5kZWZpbmVkLCB1bmRlZmluZWRdLFxuICAgICAgLy8gU3dpdGNoIG9mZiBleGlzdGluZyBrZXlcbiAgICAgIFsnYXJuOmF3czprZXknLCBmYWxzZSwgJ0FXU19NQU5BR0VEX0tFWSddLFxuICAgICAgLy8gU3dpdGNoIG9uIGV4aXN0aW5nIGtleVxuICAgICAgWydBV1NfTUFOQUdFRF9LRVknLCB0cnVlLCAnJ10sXG4gICAgXSkoJyh1cGdyYWRpbmcpIGN1cnJlbnQgcGFyYW0gJXAsIGNyZWF0ZUN1c3RvbWVyTWFzdGVyS2V5PSVwID0+IHBhcmFtZXRlciBiZWNvbWVzICVwICcsIGFzeW5jIChjdXJyZW50S2V5SWQsIGNyZWF0ZUN1c3RvbWVyTWFzdGVyS2V5LCBwYXJhbUtleUlkKSA9PiB7XG4gICAgICAvLyBHSVZFTlxuICAgICAgbW9ja1RoZVRvb2xraXRJbmZvKHtcbiAgICAgICAgUGFyYW1ldGVyczogY3VycmVudEtleUlkID8gW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIFBhcmFtZXRlcktleTogJ0ZpbGVBc3NldHNCdWNrZXRLbXNLZXlJZCcsXG4gICAgICAgICAgICBQYXJhbWV0ZXJWYWx1ZTogY3VycmVudEtleUlkLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0gOiB1bmRlZmluZWQsXG4gICAgICB9KTtcblxuICAgICAgLy8gV0hFTlxuICAgICAgYXdhaXQgYm9vdHN0cmFwcGVyLmJvb3RzdHJhcEVudmlyb25tZW50KGVudiwgc2RrLCB7XG4gICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICBjcmVhdGVDdXN0b21lck1hc3RlcktleSxcbiAgICAgICAgICBjbG91ZEZvcm1hdGlvbkV4ZWN1dGlvblBvbGljaWVzOiBbJ2Fybjpib29oJ10sXG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgLy8gVEhFTlxuICAgICAgZXhwZWN0KG1vY2tEZXBsb3lTdGFjaykudG9IYXZlQmVlbkNhbGxlZFdpdGgoZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICBwYXJhbWV0ZXJzOiBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgICAgRmlsZUFzc2V0c0J1Y2tldEttc0tleUlkOiBwYXJhbUtleUlkLFxuICAgICAgICB9KSxcbiAgICAgIH0pKTtcbiAgICB9KTtcbiAgfSk7XG59KTsiXX0=
|
|
290
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdHN0cmFwMi50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYm9vdHN0cmFwMi50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO0FBRWxDLElBQUksQ0FBQyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUM3QyxXQUFXLEVBQUUsZUFBZTtDQUM3QixDQUFDLENBQUMsQ0FBQztBQUVKLHVDQUE4RTtBQUM5RSwrQ0FBZ0Y7QUFFaEYsSUFBSSxZQUEwQixDQUFDO0FBQy9CLFVBQVUsQ0FBQyxHQUFHLEVBQUU7SUFDZCxZQUFZLEdBQUcsSUFBSSxrQkFBWSxDQUFDLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7QUFDekQsQ0FBQyxDQUFDLENBQUM7QUFFSCxTQUFTLGtCQUFrQixDQUFDLFVBQTZDO0lBQ3ZFLE1BQU0sR0FBRyxHQUFHLElBQUksa0JBQU8sRUFBRSxDQUFDO0lBQ3pCLGlCQUFtQixDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsaUJBQVcsQ0FBQyxTQUFTLENBQUMsNkJBQWtCLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDN0gsQ0FBQztBQUVELFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxHQUFHLEVBQUU7SUFDaEMsTUFBTSxHQUFHLEdBQUc7UUFDVixPQUFPLEVBQUUsY0FBYztRQUN2QixNQUFNLEVBQUUsV0FBVztRQUNuQixJQUFJLEVBQUUsTUFBTTtLQUNiLENBQUM7SUFFRixJQUFJLEdBQW9CLENBQUM7SUFDekIsVUFBVSxDQUFDLEdBQUcsRUFBRTtRQUNkLEdBQUcsR0FBRyxJQUFJLDBCQUFlLENBQUMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUM5QyxvREFBb0Q7UUFDbkQsaUJBQW1CLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxpQkFBVyxDQUFDLDRCQUE0QixDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQy9HLENBQUMsQ0FBQyxDQUFDO0lBRUgsU0FBUyxDQUFDLEdBQUcsRUFBRTtRQUNiLGVBQWUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUM5QixDQUFDLENBQUMsQ0FBQztJQUVILElBQUksQ0FBQywyQ0FBMkMsRUFBRSxLQUFLLElBQUksRUFBRTtRQUMzRCxNQUFNLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFO1lBQ2hELFVBQVUsRUFBRTtnQkFDVixVQUFVLEVBQUUsZ0JBQWdCO2dCQUM1QiwrQkFBK0IsRUFBRSxDQUFDLFlBQVksQ0FBQzthQUNoRDtTQUNGLENBQUMsQ0FBQztRQUVILE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7WUFDbkUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDbEMsb0JBQW9CLEVBQUUsZ0JBQWdCO2dCQUN0Qyw4QkFBOEIsRUFBRSxNQUFNO2FBQ3ZDLENBQUM7U0FDSCxDQUFDLENBQUMsQ0FBQztJQUNOLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxDQUFDLDBDQUEwQyxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQzFELE1BQU0sWUFBWSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUU7WUFDaEQsVUFBVSxFQUFFO2dCQUNWLCtCQUErQixFQUFFLENBQUMsWUFBWSxDQUFDO2dCQUMvQyxRQUFRLEVBQUUsZUFBZTthQUMxQjtTQUNGLENBQUMsQ0FBQztRQUVILE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7WUFDbkUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDbEMsd0JBQXdCLEVBQUUsZUFBZTtnQkFDekMsOEJBQThCLEVBQUUsTUFBTTthQUN2QyxDQUFDO1NBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDLENBQUMsQ0FBQztJQUVILElBQUksQ0FBQyxnREFBZ0QsRUFBRSxLQUFLLElBQUksRUFBRTtRQUNoRSxNQUFNLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFO1lBQ2hELFVBQVUsRUFBRTtnQkFDViwrQkFBK0IsRUFBRSxDQUFDLFlBQVksQ0FBQztnQkFDL0MsOEJBQThCLEVBQUUsS0FBSzthQUN0QztTQUNGLENBQUMsQ0FBQztRQUVILE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7WUFDbkUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDbEMsOEJBQThCLEVBQUUsT0FBTzthQUN4QyxDQUFDO1NBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDLENBQUMsQ0FBQztJQUVILElBQUksQ0FBQywyRUFBMkUsRUFBRSxLQUFLLElBQUksRUFBRTtRQUMzRixNQUFNLE1BQU0sQ0FBQyxZQUFZLENBQUMsb0JBQW9CLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRTtZQUN2RCxVQUFVLEVBQUU7Z0JBQ1YsZUFBZSxFQUFFLENBQUMsY0FBYyxDQUFDO2FBQ2xDO1NBQ0YsQ0FBQyxDQUFDO2FBQ0EsT0FBTzthQUNQLE9BQU8sQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO0lBQ3BELENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxDQUFDLGlHQUFpRyxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ2pILGtCQUFrQixDQUFDO1lBQ2pCLFVBQVUsRUFBRTtnQkFDVjtvQkFDRSxZQUFZLEVBQUUsaUNBQWlDO29CQUMvQyxjQUFjLEVBQUUsRUFBRTtpQkFDbkI7YUFDRjtTQUNGLENBQUMsQ0FBQztRQUVILE1BQU0sTUFBTSxDQUFDLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFO1lBQ3ZELFVBQVUsRUFBRTtnQkFDVixlQUFlLEVBQUUsQ0FBQyxjQUFjLENBQUM7YUFDbEM7U0FDRixDQUFDLENBQUM7YUFDQSxPQUFPO2FBQ1AsT0FBTyxDQUFDLHFDQUFxQyxDQUFDLENBQUM7SUFDcEQsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFJLENBQUMsa0VBQWtFLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDbEYsTUFBTSxZQUFZLENBQUMsb0JBQW9CLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRTtZQUNoRCxVQUFVLEVBQUUsRUFBRTtTQUNmLENBQUMsQ0FBQztRQUVILE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7WUFDbkUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDbEMsK0JBQStCLEVBQUUsRUFBRTthQUNwQyxDQUFDO1NBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDLENBQUMsQ0FBQztJQUVILElBQUksQ0FBQywyRUFBMkUsRUFBRSxLQUFLLElBQUksRUFBRTtRQUMzRixNQUFNLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFO1lBQ2hELFVBQVUsRUFBRTtnQkFDVix3QkFBd0IsRUFBRSxDQUFDLGNBQWMsQ0FBQztnQkFDMUMsK0JBQStCLEVBQUUsQ0FBQyxXQUFXLENBQUM7YUFDL0M7U0FDRixDQUFDLENBQUM7UUFFSCxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDO1lBQ25FLFVBQVUsRUFBRSxNQUFNLENBQUMsZ0JBQWdCLENBQUM7Z0JBQ2xDLHdCQUF3QixFQUFFLGNBQWM7YUFDekMsQ0FBQztTQUNILENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFJLENBQUMseUVBQXlFLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDekYsUUFBUTtRQUNSLGtCQUFrQixDQUFDO1lBQ2pCLFVBQVUsRUFBRTtnQkFDVjtvQkFDRSxZQUFZLEVBQUUsaUNBQWlDO29CQUMvQyxjQUFjLEVBQUUsbUJBQW1CO2lCQUNwQzthQUNGO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsTUFBTSxZQUFZLENBQUMsb0JBQW9CLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRTtZQUNoRCxVQUFVLEVBQUU7Z0JBQ1YsZUFBZSxFQUFFLENBQUMsY0FBYyxDQUFDO2FBQ2xDO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsZ0JBQWdCO0lBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxDQUFDLGtEQUFrRCxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ2xFLFFBQVE7UUFDUixrQkFBa0IsQ0FBQztZQUNqQixPQUFPLEVBQUU7Z0JBQ1A7b0JBQ0UsU0FBUyxFQUFFLGtCQUFrQjtvQkFDN0IsV0FBVyxFQUFFLEtBQUs7aUJBQ25CO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCxNQUFNLE1BQU0sQ0FBQyxZQUFZLENBQUMsb0JBQW9CLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRTtZQUN2RCxVQUFVLEVBQUU7Z0JBQ1YsK0JBQStCLEVBQUUsQ0FBQyxZQUFZLENBQUM7YUFDaEQ7U0FDRixDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDaEUsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFJLENBQUMsMENBQTBDLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDMUQsSUFBSSxRQUFhLENBQUM7UUFDbEIsZUFBZSxDQUFDLGtCQUFrQixDQUFDLENBQUMsSUFBd0IsRUFBRSxFQUFFO1lBQzlELFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sWUFBWSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUU7WUFDaEQsVUFBVSxFQUFFO2dCQUNWLCtCQUErQixFQUFFLENBQUMsWUFBWSxDQUFDO2FBQ2hEO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQzthQUNsRCxNQUFNLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDO2FBQzFDLEdBQUcsQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVsQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDO1lBQ3RCLHdDQUF3QztZQUN4QyxFQUFFLFNBQVMsRUFBRSwyQ0FBMkMsRUFBRTtTQUMzRCxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQyx3QkFBd0IsRUFBRSxHQUFHLEVBQUU7UUFDdEMsSUFBSSxDQUFDLCtDQUErQyxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQy9ELE1BQU0sWUFBWSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUU7Z0JBQ2hELFVBQVUsRUFBRTtvQkFDViwrQkFBK0IsRUFBRSxDQUFDLFlBQVksQ0FBQztpQkFDaEQ7YUFDRixDQUFDLENBQUM7WUFFSCxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDO2dCQUNuRSxLQUFLLEVBQUUsTUFBTSxDQUFDLGdCQUFnQixDQUFDO29CQUM3QixxQkFBcUIsRUFBRSxLQUFLO2lCQUM3QixDQUFDO2FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxtREFBbUQsRUFBRSxLQUFLLElBQUksRUFBRTtZQUNuRSxNQUFNLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFO2dCQUNoRCxxQkFBcUIsRUFBRSxJQUFJO2dCQUMzQixVQUFVLEVBQUU7b0JBQ1YsK0JBQStCLEVBQUUsQ0FBQyxZQUFZLENBQUM7aUJBQ2hEO2FBQ0YsQ0FBQyxDQUFDO1lBRUgsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDbkUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDN0IscUJBQXFCLEVBQUUsSUFBSTtpQkFDNUIsQ0FBQzthQUNILENBQUMsQ0FBQyxDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsK0RBQStELEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDL0Usa0JBQWtCLENBQUM7Z0JBQ2pCLDJCQUEyQixFQUFFLElBQUk7YUFDbEMsQ0FBQyxDQUFDO1lBRUgsTUFBTSxZQUFZLENBQUMsb0JBQW9CLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRTtnQkFDaEQsVUFBVSxFQUFFO29CQUNWLCtCQUErQixFQUFFLENBQUMsWUFBWSxDQUFDO2lCQUNoRDthQUNGLENBQUMsQ0FBQztZQUVILE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7Z0JBQ25FLEtBQUssRUFBRSxNQUFNLENBQUMsZ0JBQWdCLENBQUM7b0JBQzdCLHFCQUFxQixFQUFFLElBQUk7aUJBQzVCLENBQUM7YUFDSCxDQUFDLENBQUMsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLDRDQUE0QyxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQzVELGtCQUFrQixDQUFDO2dCQUNqQiwyQkFBMkIsRUFBRSxJQUFJO2FBQ2xDLENBQUMsQ0FBQztZQUVILE1BQU0sWUFBWSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUU7Z0JBQ2hELHFCQUFxQixFQUFFLEtBQUs7Z0JBQzVCLFVBQVUsRUFBRTtvQkFDViwrQkFBK0IsRUFBRSxDQUFDLFlBQVksQ0FBQztpQkFDaEQ7YUFDRixDQUFDLENBQUM7WUFFSCxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDO2dCQUNuRSxLQUFLLEVBQUUsTUFBTSxDQUFDLGdCQUFnQixDQUFDO29CQUM3QixxQkFBcUIsRUFBRSxLQUFLO2lCQUM3QixDQUFDO2FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsUUFBUSxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUU7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNSLGVBQWU7WUFDZixDQUFDLFNBQVMsRUFBRSxpQkFBaUIsQ0FBQztZQUM5QixtQkFBbUI7WUFDbkIsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ1YseUJBQXlCO1lBQ3pCLENBQUMsS0FBSyxFQUFFLGlCQUFpQixDQUFDO1NBQzNCLENBQUMsQ0FBQyxpRUFBaUUsRUFBRSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsVUFBVSxFQUFFLEVBQUU7WUFDbEgsMkJBQTJCO1lBRTNCLE9BQU87WUFDUCxNQUFNLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFO2dCQUNoRCxVQUFVLEVBQUU7b0JBQ1YsdUJBQXVCO29CQUN2QiwrQkFBK0IsRUFBRSxDQUFDLFVBQVUsQ0FBQztpQkFDOUM7YUFDRixDQUFDLENBQUM7WUFFSCxPQUFPO1lBQ1AsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDbkUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDbEMsd0JBQXdCLEVBQUUsVUFBVTtpQkFDckMsQ0FBQzthQUNILENBQUMsQ0FBQyxDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ1IsZ0RBQWdEO1lBQ2hELENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsQ0FBQztZQUN6QyxrREFBa0Q7WUFDbEQsQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQztZQUNyQywwQkFBMEI7WUFDMUIsQ0FBQyxhQUFhLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixDQUFDO1lBQ3pDLHlCQUF5QjtZQUN6QixDQUFDLGlCQUFpQixFQUFFLElBQUksRUFBRSxFQUFFLENBQUM7U0FDOUIsQ0FBQyxDQUFDLG1GQUFtRixFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsdUJBQXVCLEVBQUUsVUFBVSxFQUFFLEVBQUU7WUFDbEosUUFBUTtZQUNSLGtCQUFrQixDQUFDO2dCQUNqQixVQUFVLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztvQkFDekI7d0JBQ0UsWUFBWSxFQUFFLDBCQUEwQjt3QkFDeEMsY0FBYyxFQUFFLFlBQVk7cUJBQzdCO2lCQUNGLENBQUMsQ0FBQyxDQUFDLFNBQVM7YUFDZCxDQUFDLENBQUM7WUFFSCxPQUFPO1lBQ1AsTUFBTSxZQUFZLENBQUMsb0JBQW9CLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRTtnQkFDaEQsVUFBVSxFQUFFO29CQUNWLHVCQUF1QjtvQkFDdkIsK0JBQStCLEVBQUUsQ0FBQyxVQUFVLENBQUM7aUJBQzlDO2FBQ0YsQ0FBQyxDQUFDO1lBRUgsT0FBTztZQUNQLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7Z0JBQ25FLFVBQVUsRUFBRSxNQUFNLENBQUMsZ0JBQWdCLENBQUM7b0JBQ2xDLHdCQUF3QixFQUFFLFVBQVU7aUJBQ3JDLENBQUM7YUFDSCxDQUFDLENBQUMsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IG1vY2tEZXBsb3lTdGFjayA9IGplc3QuZm4oKTtcblxuamVzdC5tb2NrKCcuLi8uLi9saWIvYXBpL2RlcGxveS1zdGFjaycsICgpID0+ICh7XG4gIGRlcGxveVN0YWNrOiBtb2NrRGVwbG95U3RhY2ssXG59KSk7XG5cbmltcG9ydCB7IEJvb3RzdHJhcHBlciwgRGVwbG95U3RhY2tPcHRpb25zLCBUb29sa2l0SW5mbyB9IGZyb20gJy4uLy4uL2xpYi9hcGknO1xuaW1wb3J0IHsgbW9ja0Jvb3RzdHJhcFN0YWNrLCBNb2NrU2RrLCBNb2NrU2RrUHJvdmlkZXIgfSBmcm9tICcuLi91dGlsL21vY2stc2RrJztcblxubGV0IGJvb3RzdHJhcHBlcjogQm9vdHN0cmFwcGVyO1xuYmVmb3JlRWFjaCgoKSA9PiB7XG4gIGJvb3RzdHJhcHBlciA9IG5ldyBCb290c3RyYXBwZXIoeyBzb3VyY2U6ICdkZWZhdWx0JyB9KTtcbn0pO1xuXG5mdW5jdGlvbiBtb2NrVGhlVG9vbGtpdEluZm8oc3RhY2tQcm9wczogUGFydGlhbDxBV1MuQ2xvdWRGb3JtYXRpb24uU3RhY2s+KSB7XG4gIGNvbnN0IHNkayA9IG5ldyBNb2NrU2RrKCk7XG4gIChUb29sa2l0SW5mbyBhcyBhbnkpLmxvb2t1cCA9IGplc3QuZm4oKS5tb2NrUmVzb2x2ZWRWYWx1ZShUb29sa2l0SW5mby5mcm9tU3RhY2sobW9ja0Jvb3RzdHJhcFN0YWNrKHNkaywgc3RhY2tQcm9wcyksIHNkaykpO1xufVxuXG5kZXNjcmliZSgnQm9vdHN0cmFwcGluZyB2MicsICgpID0+IHtcbiAgY29uc3QgZW52ID0ge1xuICAgIGFjY291bnQ6ICcxMjM0NTY3ODkwMTInLFxuICAgIHJlZ2lvbjogJ3VzLWVhc3QtMScsXG4gICAgbmFtZTogJ21vY2snLFxuICB9O1xuXG4gIGxldCBzZGs6IE1vY2tTZGtQcm92aWRlcjtcbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgc2RrID0gbmV3IE1vY2tTZGtQcm92aWRlcih7IHJlYWxTZGs6IGZhbHNlIH0pO1xuICAgIC8vIEJ5IGRlZmF1bHQsIHdlJ2xsIHJldHVybiBhIG5vbi1mb3VuZCB0b29sa2l0IGluZm9cbiAgICAoVG9vbGtpdEluZm8gYXMgYW55KS5sb29rdXAgPSBqZXN0LmZuKCkubW9ja1Jlc29sdmVkVmFsdWUoVG9vbGtpdEluZm8uYm9vdHN0cmFwbGVzc0RlcGxveW1lbnRzT25seShzZGsuc2RrKSk7XG4gIH0pO1xuXG4gIGFmdGVyRWFjaCgoKSA9PiB7XG4gICAgbW9ja0RlcGxveVN0YWNrLm1vY2tDbGVhcigpO1xuICB9KTtcblxuICB0ZXN0KCdwYXNzZXMgdGhlIGJ1Y2tldCBuYW1lIGFzIGEgQ0ZOIHBhcmFtZXRlcicsIGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCBib290c3RyYXBwZXIuYm9vdHN0cmFwRW52aXJvbm1lbnQoZW52LCBzZGssIHtcbiAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgYnVja2V0TmFtZTogJ215LWJ1Y2tldC1uYW1lJyxcbiAgICAgICAgY2xvdWRGb3JtYXRpb25FeGVjdXRpb25Qb2xpY2llczogWydhcm46cG9saWN5J10sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgZXhwZWN0KG1vY2tEZXBsb3lTdGFjaykudG9IYXZlQmVlbkNhbGxlZFdpdGgoZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgcGFyYW1ldGVyczogZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICBGaWxlQXNzZXRzQnVja2V0TmFtZTogJ215LWJ1Y2tldC1uYW1lJyxcbiAgICAgICAgUHVibGljQWNjZXNzQmxvY2tDb25maWd1cmF0aW9uOiAndHJ1ZScsXG4gICAgICB9KSxcbiAgICB9KSk7XG4gIH0pO1xuXG4gIHRlc3QoJ3Bhc3NlcyB0aGUgS01TIGtleSBJRCBhcyBhIENGTiBwYXJhbWV0ZXInLCBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgYm9vdHN0cmFwcGVyLmJvb3RzdHJhcEVudmlyb25tZW50KGVudiwgc2RrLCB7XG4gICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgIGNsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUG9saWNpZXM6IFsnYXJuOnBvbGljeSddLFxuICAgICAgICBrbXNLZXlJZDogJ215LWttcy1rZXktaWQnLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGV4cGVjdChtb2NrRGVwbG95U3RhY2spLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgIHBhcmFtZXRlcnM6IGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgRmlsZUFzc2V0c0J1Y2tldEttc0tleUlkOiAnbXkta21zLWtleS1pZCcsXG4gICAgICAgIFB1YmxpY0FjY2Vzc0Jsb2NrQ29uZmlndXJhdGlvbjogJ3RydWUnLFxuICAgICAgfSksXG4gICAgfSkpO1xuICB9KTtcblxuICB0ZXN0KCdwYXNzZXMgZmFsc2UgdG8gUHVibGljQWNjZXNzQmxvY2tDb25maWd1cmF0aW9uJywgYXN5bmMgKCkgPT4ge1xuICAgIGF3YWl0IGJvb3RzdHJhcHBlci5ib290c3RyYXBFbnZpcm9ubWVudChlbnYsIHNkaywge1xuICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICBjbG91ZEZvcm1hdGlvbkV4ZWN1dGlvblBvbGljaWVzOiBbJ2Fybjpwb2xpY3knXSxcbiAgICAgICAgcHVibGljQWNjZXNzQmxvY2tDb25maWd1cmF0aW9uOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBleHBlY3QobW9ja0RlcGxveVN0YWNrKS50b0hhdmVCZWVuQ2FsbGVkV2l0aChleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICBwYXJhbWV0ZXJzOiBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgIFB1YmxpY0FjY2Vzc0Jsb2NrQ29uZmlndXJhdGlvbjogJ2ZhbHNlJyxcbiAgICAgIH0pLFxuICAgIH0pKTtcbiAgfSk7XG5cbiAgdGVzdCgncGFzc2luZyB0cnVzdGVkIGFjY291bnRzIHdpdGhvdXQgQ0ZOIG1hbmFnZWQgcG9saWNpZXMgcmVzdWx0cyBpbiBhbiBlcnJvcicsIGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCBleHBlY3QoYm9vdHN0cmFwcGVyLmJvb3RzdHJhcEVudmlyb25tZW50KGVudiwgc2RrLCB7XG4gICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgIHRydXN0ZWRBY2NvdW50czogWycxMjM0NTY3ODkwMTInXSxcbiAgICAgIH0sXG4gICAgfSkpXG4gICAgICAucmVqZWN0c1xuICAgICAgLnRvVGhyb3coLy0tY2xvdWRmb3JtYXRpb24tZXhlY3V0aW9uLXBvbGljaWVzLyk7XG4gIH0pO1xuXG4gIHRlc3QoJ3Bhc3NpbmcgdHJ1c3RlZCBhY2NvdW50cyB3aXRob3V0IENGTiBtYW5hZ2VkIHBvbGljaWVzIG9uIHRoZSBleGlzdGluZyBzdGFjayByZXN1bHRzIGluIGFuIGVycm9yJywgYXN5bmMgKCkgPT4ge1xuICAgIG1vY2tUaGVUb29sa2l0SW5mbyh7XG4gICAgICBQYXJhbWV0ZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBQYXJhbWV0ZXJLZXk6ICdDbG91ZEZvcm1hdGlvbkV4ZWN1dGlvblBvbGljaWVzJyxcbiAgICAgICAgICBQYXJhbWV0ZXJWYWx1ZTogJycsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pO1xuXG4gICAgYXdhaXQgZXhwZWN0KGJvb3RzdHJhcHBlci5ib290c3RyYXBFbnZpcm9ubWVudChlbnYsIHNkaywge1xuICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICB0cnVzdGVkQWNjb3VudHM6IFsnMTIzNDU2Nzg5MDEyJ10sXG4gICAgICB9LFxuICAgIH0pKVxuICAgICAgLnJlamVjdHNcbiAgICAgIC50b1Rocm93KC8tLWNsb3VkZm9ybWF0aW9uLWV4ZWN1dGlvbi1wb2xpY2llcy8pO1xuICB9KTtcblxuICB0ZXN0KCdwYXNzaW5nIG5vIENGTiBtYW5hZ2VkIHBvbGljaWVzIHdpdGhvdXQgdHJ1c3RlZCBhY2NvdW50cyBpcyBva2F5JywgYXN5bmMgKCkgPT4ge1xuICAgIGF3YWl0IGJvb3RzdHJhcHBlci5ib290c3RyYXBFbnZpcm9ubWVudChlbnYsIHNkaywge1xuICAgICAgcGFyYW1ldGVyczoge30sXG4gICAgfSk7XG5cbiAgICBleHBlY3QobW9ja0RlcGxveVN0YWNrKS50b0hhdmVCZWVuQ2FsbGVkV2l0aChleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICBwYXJhbWV0ZXJzOiBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgIENsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUG9saWNpZXM6ICcnLFxuICAgICAgfSksXG4gICAgfSkpO1xuICB9KTtcblxuICB0ZXN0KCdwYXNzaW5nIHRydXN0ZWQgYWNjb3VudHMgZm9yIGxvb2t1cCBnZW5lcmF0ZXMgdGhlIGNvcnJlY3Qgc3RhY2sgcGFyYW1ldGVyJywgYXN5bmMgKCkgPT4ge1xuICAgIGF3YWl0IGJvb3RzdHJhcHBlci5ib290c3RyYXBFbnZpcm9ubWVudChlbnYsIHNkaywge1xuICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICB0cnVzdGVkQWNjb3VudHNGb3JMb29rdXA6IFsnMTIzNDU2Nzg5MDEyJ10sXG4gICAgICAgIGNsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUG9saWNpZXM6IFsnYXdzOi8vZm9vJ10sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgZXhwZWN0KG1vY2tEZXBsb3lTdGFjaykudG9IYXZlQmVlbkNhbGxlZFdpdGgoZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgcGFyYW1ldGVyczogZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICBUcnVzdGVkQWNjb3VudHNGb3JMb29rdXA6ICcxMjM0NTY3ODkwMTInLFxuICAgICAgfSksXG4gICAgfSkpO1xuICB9KTtcblxuICB0ZXN0KCdhbGxvdyBhZGRpbmcgdHJ1c3RlZCBhY2NvdW50IGlmIHRoZXJlIHdhcyBhbHJlYWR5IGEgcG9saWN5IG9uIHRoZSBzdGFjaycsIGFzeW5jICgpID0+IHtcbiAgICAvLyBHSVZFTlxuICAgIG1vY2tUaGVUb29sa2l0SW5mbyh7XG4gICAgICBQYXJhbWV0ZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBQYXJhbWV0ZXJLZXk6ICdDbG91ZEZvcm1hdGlvbkV4ZWN1dGlvblBvbGljaWVzJyxcbiAgICAgICAgICBQYXJhbWV0ZXJWYWx1ZTogJ2Fybjphd3M6c29tZXRoaW5nJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG5cbiAgICBhd2FpdCBib290c3RyYXBwZXIuYm9vdHN0cmFwRW52aXJvbm1lbnQoZW52LCBzZGssIHtcbiAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgdHJ1c3RlZEFjY291bnRzOiBbJzEyMzQ1Njc4OTAxMiddLFxuICAgICAgfSxcbiAgICB9KTtcbiAgICAvLyBEaWQgbm90IHRocm93XG4gIH0pO1xuXG4gIHRlc3QoJ0RvIG5vdCBhbGxvdyBkb3duZ3JhZGluZyBib290c3RyYXAgc3RhY2sgdmVyc2lvbicsIGFzeW5jICgpID0+IHtcbiAgICAvLyBHSVZFTlxuICAgIG1vY2tUaGVUb29sa2l0SW5mbyh7XG4gICAgICBPdXRwdXRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBPdXRwdXRLZXk6ICdCb290c3RyYXBWZXJzaW9uJyxcbiAgICAgICAgICBPdXRwdXRWYWx1ZTogJzk5OScsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pO1xuXG4gICAgYXdhaXQgZXhwZWN0KGJvb3RzdHJhcHBlci5ib290c3RyYXBFbnZpcm9ubWVudChlbnYsIHNkaywge1xuICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICBjbG91ZEZvcm1hdGlvbkV4ZWN1dGlvblBvbGljaWVzOiBbJ2Fybjpwb2xpY3knXSxcbiAgICAgIH0sXG4gICAgfSkpLnJlc29sdmVzLnRvRXF1YWwoZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoeyBub09wOiB0cnVlIH0pKTtcbiAgfSk7XG5cbiAgdGVzdCgnYm9vdHN0cmFwIHRlbXBsYXRlIGhhcyB0aGUgcmlnaHQgZXhwb3J0cycsIGFzeW5jICgpID0+IHtcbiAgICBsZXQgdGVtcGxhdGU6IGFueTtcbiAgICBtb2NrRGVwbG95U3RhY2subW9ja0ltcGxlbWVudGF0aW9uKChhcmdzOiBEZXBsb3lTdGFja09wdGlvbnMpID0+IHtcbiAgICAgIHRlbXBsYXRlID0gYXJncy5zdGFjay50ZW1wbGF0ZTtcbiAgICB9KTtcblxuICAgIGF3YWl0IGJvb3RzdHJhcHBlci5ib290c3RyYXBFbnZpcm9ubWVudChlbnYsIHNkaywge1xuICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICBjbG91ZEZvcm1hdGlvbkV4ZWN1dGlvblBvbGljaWVzOiBbJ2Fybjpwb2xpY3knXSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBleHBvcnRzID0gT2JqZWN0LnZhbHVlcyh0ZW1wbGF0ZS5PdXRwdXRzID8/IHt9KVxuICAgICAgLmZpbHRlcigobzogYW55KSA9PiBvLkV4cG9ydCAhPT0gdW5kZWZpbmVkKVxuICAgICAgLm1hcCgobzogYW55KSA9PiBvLkV4cG9ydC5OYW1lKTtcblxuICAgIGV4cGVjdChleHBvcnRzKS50b0VxdWFsKFtcbiAgICAgIC8vIFRoaXMgdXNlZCB0byBiZSB1c2VkIGJ5IGF3cy1zMy1hc3NldHNcbiAgICAgIHsgJ0ZuOjpTdWInOiAnQ2RrQm9vdHN0cmFwLSR7UXVhbGlmaWVyfS1GaWxlQXNzZXRLZXlBcm4nIH0sXG4gICAgXSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCd0ZXJtaW5hdGlvbiBwcm90ZWN0aW9uJywgKCkgPT4ge1xuICAgIHRlc3QoJ3N0YWNrIGlzIG5vdCB0ZXJtaW5hdGlvbiBwcm90ZWN0ZWQgYnkgZGVmYXVsdCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGF3YWl0IGJvb3RzdHJhcHBlci5ib290c3RyYXBFbnZpcm9ubWVudChlbnYsIHNkaywge1xuICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgY2xvdWRGb3JtYXRpb25FeGVjdXRpb25Qb2xpY2llczogWydhcm46cG9saWN5J10sXG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgZXhwZWN0KG1vY2tEZXBsb3lTdGFjaykudG9IYXZlQmVlbkNhbGxlZFdpdGgoZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICBzdGFjazogZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICAgIHRlcm1pbmF0aW9uUHJvdGVjdGlvbjogZmFsc2UsXG4gICAgICAgIH0pLFxuICAgICAgfSkpO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnc3RhY2sgaXMgdGVybWluYXRpb24gcHJvdGVjdGVkIHdoZW4gb3B0aW9uIGlzIHNldCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGF3YWl0IGJvb3RzdHJhcHBlci5ib290c3RyYXBFbnZpcm9ubWVudChlbnYsIHNkaywge1xuICAgICAgICB0ZXJtaW5hdGlvblByb3RlY3Rpb246IHRydWUsXG4gICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICBjbG91ZEZvcm1hdGlvbkV4ZWN1dGlvblBvbGljaWVzOiBbJ2Fybjpwb2xpY3knXSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgICBleHBlY3QobW9ja0RlcGxveVN0YWNrKS50b0hhdmVCZWVuQ2FsbGVkV2l0aChleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgIHN0YWNrOiBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgICAgdGVybWluYXRpb25Qcm90ZWN0aW9uOiB0cnVlLFxuICAgICAgICB9KSxcbiAgICAgIH0pKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ3Rlcm1pbmF0aW9uIHByb3RlY3Rpb24gaXMgbGVmdCBhbG9uZSB3aGVuIG9wdGlvbiBpcyBub3QgZ2l2ZW4nLCBhc3luYyAoKSA9PiB7XG4gICAgICBtb2NrVGhlVG9vbGtpdEluZm8oe1xuICAgICAgICBFbmFibGVUZXJtaW5hdGlvblByb3RlY3Rpb246IHRydWUsXG4gICAgICB9KTtcblxuICAgICAgYXdhaXQgYm9vdHN0cmFwcGVyLmJvb3RzdHJhcEVudmlyb25tZW50KGVudiwgc2RrLCB7XG4gICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICBjbG91ZEZvcm1hdGlvbkV4ZWN1dGlvblBvbGljaWVzOiBbJ2Fybjpwb2xpY3knXSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgICBleHBlY3QobW9ja0RlcGxveVN0YWNrKS50b0hhdmVCZWVuQ2FsbGVkV2l0aChleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgIHN0YWNrOiBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgICAgdGVybWluYXRpb25Qcm90ZWN0aW9uOiB0cnVlLFxuICAgICAgICB9KSxcbiAgICAgIH0pKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ3Rlcm1pbmF0aW9uIHByb3RlY3Rpb24gY2FuIGJlIHN3aXRjaGVkIG9mZicsIGFzeW5jICgpID0+IHtcbiAgICAgIG1vY2tUaGVUb29sa2l0SW5mbyh7XG4gICAgICAgIEVuYWJsZVRlcm1pbmF0aW9uUHJvdGVjdGlvbjogdHJ1ZSxcbiAgICAgIH0pO1xuXG4gICAgICBhd2FpdCBib290c3RyYXBwZXIuYm9vdHN0cmFwRW52aXJvbm1lbnQoZW52LCBzZGssIHtcbiAgICAgICAgdGVybWluYXRpb25Qcm90ZWN0aW9uOiBmYWxzZSxcbiAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgIGNsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUG9saWNpZXM6IFsnYXJuOnBvbGljeSddLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGV4cGVjdChtb2NrRGVwbG95U3RhY2spLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgc3RhY2s6IGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgICB0ZXJtaW5hdGlvblByb3RlY3Rpb246IGZhbHNlLFxuICAgICAgICB9KSxcbiAgICAgIH0pKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ0tNUyBrZXknLCAoKSA9PiB7XG4gICAgdGVzdC5lYWNoKFtcbiAgICAgIC8vIERlZmF1bHQgY2FzZVxuICAgICAgW3VuZGVmaW5lZCwgJ0FXU19NQU5BR0VEX0tFWSddLFxuICAgICAgLy8gQ3JlYXRlIGEgbmV3IGtleVxuICAgICAgW3RydWUsICcnXSxcbiAgICAgIC8vIERvbid0IGNyZWF0ZSBhIG5ldyBrZXlcbiAgICAgIFtmYWxzZSwgJ0FXU19NQU5BR0VEX0tFWSddLFxuICAgIF0pKCcobmV3IHN0YWNrKSBjcmVhdGVDdXN0b21lck1hc3RlcktleT0lcCA9PiBwYXJhbWV0ZXIgYmVjb21lcyAlcCAnLCBhc3luYyAoY3JlYXRlQ3VzdG9tZXJNYXN0ZXJLZXksIHBhcmFtS2V5SWQpID0+IHtcbiAgICAgIC8vIEdJVkVOOiBubyBleGlzdGluZyBzdGFja1xuXG4gICAgICAvLyBXSEVOXG4gICAgICBhd2FpdCBib290c3RyYXBwZXIuYm9vdHN0cmFwRW52aXJvbm1lbnQoZW52LCBzZGssIHtcbiAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgIGNyZWF0ZUN1c3RvbWVyTWFzdGVyS2V5LFxuICAgICAgICAgIGNsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUG9saWNpZXM6IFsnYXJuOmJvb2gnXSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgICAvLyBUSEVOXG4gICAgICBleHBlY3QobW9ja0RlcGxveVN0YWNrKS50b0hhdmVCZWVuQ2FsbGVkV2l0aChleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgIHBhcmFtZXRlcnM6IGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgICBGaWxlQXNzZXRzQnVja2V0S21zS2V5SWQ6IHBhcmFtS2V5SWQsXG4gICAgICAgIH0pLFxuICAgICAgfSkpO1xuICAgIH0pO1xuXG4gICAgdGVzdC5lYWNoKFtcbiAgICAgIC8vIE9sZCBib290c3RyYXAgc3RhY2sgYmVpbmcgdXBncmFkZWQgdG8gbmV3IG9uZVxuICAgICAgW3VuZGVmaW5lZCwgdW5kZWZpbmVkLCAnQVdTX01BTkFHRURfS0VZJ10sXG4gICAgICAvLyBUaGVyZSBpcyBhIHZhbHVlLCB1c2VyIGRvZXNuJ3QgcmVxdWVzdCBhIGNoYW5nZVxuICAgICAgWydhcm46YXdzOmtleScsIHVuZGVmaW5lZCwgdW5kZWZpbmVkXSxcbiAgICAgIC8vIFN3aXRjaCBvZmYgZXhpc3Rpbmcga2V5XG4gICAgICBbJ2Fybjphd3M6a2V5JywgZmFsc2UsICdBV1NfTUFOQUdFRF9LRVknXSxcbiAgICAgIC8vIFN3aXRjaCBvbiBleGlzdGluZyBrZXlcbiAgICAgIFsnQVdTX01BTkFHRURfS0VZJywgdHJ1ZSwgJyddLFxuICAgIF0pKCcodXBncmFkaW5nKSBjdXJyZW50IHBhcmFtICVwLCBjcmVhdGVDdXN0b21lck1hc3RlcktleT0lcCA9PiBwYXJhbWV0ZXIgYmVjb21lcyAlcCAnLCBhc3luYyAoY3VycmVudEtleUlkLCBjcmVhdGVDdXN0b21lck1hc3RlcktleSwgcGFyYW1LZXlJZCkgPT4ge1xuICAgICAgLy8gR0lWRU5cbiAgICAgIG1vY2tUaGVUb29sa2l0SW5mbyh7XG4gICAgICAgIFBhcmFtZXRlcnM6IGN1cnJlbnRLZXlJZCA/IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBQYXJhbWV0ZXJLZXk6ICdGaWxlQXNzZXRzQnVja2V0S21zS2V5SWQnLFxuICAgICAgICAgICAgUGFyYW1ldGVyVmFsdWU6IGN1cnJlbnRLZXlJZCxcbiAgICAgICAgICB9LFxuICAgICAgICBdIDogdW5kZWZpbmVkLFxuICAgICAgfSk7XG5cbiAgICAgIC8vIFdIRU5cbiAgICAgIGF3YWl0IGJvb3RzdHJhcHBlci5ib290c3RyYXBFbnZpcm9ubWVudChlbnYsIHNkaywge1xuICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgY3JlYXRlQ3VzdG9tZXJNYXN0ZXJLZXksXG4gICAgICAgICAgY2xvdWRGb3JtYXRpb25FeGVjdXRpb25Qb2xpY2llczogWydhcm46Ym9vaCddLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIC8vIFRIRU5cbiAgICAgIGV4cGVjdChtb2NrRGVwbG95U3RhY2spLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgcGFyYW1ldGVyczogZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICAgIEZpbGVBc3NldHNCdWNrZXRLbXNLZXlJZDogcGFyYW1LZXlJZCxcbiAgICAgICAgfSksXG4gICAgICB9KSk7XG4gICAgfSk7XG4gIH0pO1xufSk7Il19
|
|
@@ -8,7 +8,6 @@ const util_1 = require("../util");
|
|
|
8
8
|
describe('AWS::CDK::Metadata', () => {
|
|
9
9
|
test('is generated for relocatable stacks from old frameworks', async () => {
|
|
10
10
|
await withFakeCurrentCxVersion('2.0.0', async () => {
|
|
11
|
-
var _a;
|
|
12
11
|
const cx = await testCloudExecutable({ env: `aws://${cxapi.UNKNOWN_ACCOUNT}/${cxapi.UNKNOWN_REGION}`, versionReporting: true });
|
|
13
12
|
const cxasm = await cx.synthesize();
|
|
14
13
|
const result = cxasm.stackById('withouterrors').firstStack;
|
|
@@ -21,7 +20,7 @@ describe('AWS::CDK::Metadata', () => {
|
|
|
21
20
|
},
|
|
22
21
|
Condition: 'CDKMetadataAvailable',
|
|
23
22
|
});
|
|
24
|
-
expect(
|
|
23
|
+
expect(result.template.Conditions?.CDKMetadataAvailable).toBeDefined();
|
|
25
24
|
});
|
|
26
25
|
});
|
|
27
26
|
test('is generated for stacks in supported regions from old frameworks', async () => {
|
|
@@ -129,4 +128,4 @@ async function withFakeCurrentCxVersion(version, block) {
|
|
|
129
128
|
cxschema.Manifest.version = currentVersionFn;
|
|
130
129
|
}
|
|
131
130
|
}
|
|
132
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvdWQtZXhlY3V0YWJsZS50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY2xvdWQtZXhlY3V0YWJsZS50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsMkRBQTJEO0FBQzNELHlDQUF5QztBQUN6Qyx1RUFBc0U7QUFDdEUsbUVBQXNFO0FBQ3RFLGtDQUE4QztBQUU5QyxRQUFRLENBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFO0lBQ2xDLElBQUksQ0FBQyx5REFBeUQsRUFBRSxLQUFLLElBQUksRUFBRTtRQUN6RSxNQUFNLHdCQUF3QixDQUFDLE9BQU8sRUFBRSxLQUFLLElBQUksRUFBRTs7WUFDakQsTUFBTSxFQUFFLEdBQUcsTUFBTSxtQkFBbUIsQ0FBQyxFQUFFLEdBQUcsRUFBRSxTQUFTLEtBQUssQ0FBQyxlQUFlLElBQUksS0FBSyxDQUFDLGNBQWMsRUFBRSxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFDaEksTUFBTSxLQUFLLEdBQUcsTUFBTSxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUM7WUFFcEMsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxVQUFVLENBQUM7WUFDM0QsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDO1lBQ3BGLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUM7Z0JBQ3ZCLElBQUksRUFBRSxvQkFBb0I7Z0JBQzFCLFVBQVUsRUFBRTtvQkFDVixpRUFBaUU7b0JBQ2pFLE9BQU8sRUFBRSxHQUFHLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLElBQUksSUFBSSxPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxPQUFPLEVBQUU7aUJBQzFGO2dCQUNELFNBQVMsRUFBRSxzQkFBc0I7YUFDbEMsQ0FBQyxDQUFD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QUFlLEVBQUUsS0FBdUI7SUFDakYsTUFBTSxnQkFBZ0IsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztJQUNuRCxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU8sR0FBRyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUM7SUFDMUMsSUFBSTtRQUNGLE9BQU8sTUFBTSxLQUFLLEVBQUUsQ0FBQztLQUN0QjtZQUFTO1FBQ1IsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEdBQUcsZ0JBQWdCLENBQUM7S0FDOUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY3hzY2hlbWEgZnJvbSAnQGF3cy1jZGsvY2xvdWQtYXNzZW1ibHktc2NoZW1hJztcbmltcG9ydCAqIGFzIGN4YXBpIGZyb20gJ0Bhd3MtY2RrL2N4LWFwaSc7XG5pbXBvcnQgeyBEZWZhdWx0U2VsZWN0aW9uIH0gZnJvbSAnLi4vLi4vbGliL2FwaS9jeGFwcC9jbG91ZC1hc3NlbWJseSc7XG5pbXBvcnQgeyByZWdpc3RlckNvbnRleHRQcm92aWRlciB9IGZyb20gJy4uLy4uL2xpYi9jb250ZXh0LXByb3ZpZGVycyc7XG5pbXBvcnQgeyBNb2NrQ2xvdWRFeGVjdXRhYmxlIH0gZnJvbSAnLi4vdXRpbCc7XG5cbmRlc2NyaWJlKCdBV1M6OkNESzo6TWV0YWRhdGEnLCAoKSA9PiB7XG4gIHRlc3QoJ2lzIGdlbmVyYXRlZCBmb3IgcmVsb2NhdGFibGUgc3RhY2tzIGZyb20gb2xkIGZyYW1ld29ya3MnLCBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgd2l0aEZha2VDdXJyZW50Q3hWZXJzaW9uKCcyLjAuMCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGN4ID0gYXdhaXQgdGVzdENsb3VkRXhlY3V0YWJsZSh7IGVudjogYGF3czovLyR7Y3hhcGkuVU5LTk9XTl9BQ0NPVU5UfS8ke2N4YXBpLlVOS05PV05fUkVHSU9OfWAsIHZlcnNpb25SZXBvcnRpbmc6IHRydWUgfSk7XG4gICAgICBjb25zdCBjeGFzbSA9IGF3YWl0IGN4LnN5bnRoZXNpemUoKTtcblxuICAgICAgY29uc3QgcmVzdWx0ID0gY3hhc20uc3RhY2tCeUlkKCd3aXRob3V0ZXJyb3JzJykuZmlyc3RTdGFjaztcbiAgICAgIGNvbnN0IG1ldGFkYXRhID0gcmVzdWx0LnRlbXBsYXRlLlJlc291cmNlcyAmJiByZXN1bHQudGVtcGxhdGUuUmVzb3VyY2VzLkNES01ldGFkYXRhO1xuICAgICAgZXhwZWN0KG1ldGFkYXRhKS50b0VxdWFsKHtcbiAgICAgICAgVHlwZTogJ0FXUzo6Q0RLOjpNZXRhZGF0YScsXG4gICAgICAgIFByb3BlcnRpZXM6IHtcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXJlcXVpcmUtaW1wb3J0c1xuICAgICAgICAgIE1vZHVsZXM6IGAke3JlcXVpcmUoJy4uLy4uL3BhY2thZ2UuanNvbicpLm5hbWV9PSR7cmVxdWlyZSgnLi4vLi4vcGFja2FnZS5qc29uJykudmVyc2lvbn1gLFxuICAgICAgICB9LFxuICAgICAgICBDb25kaXRpb246ICdDREtNZXRhZGF0YUF2YWlsYWJsZScsXG4gICAgICB9KTtcblxuICAgICAgZXhwZWN0KHJlc3VsdC50ZW1wbGF0ZS5Db25kaXRpb25zPy5DREtNZXRhZGF0YUF2YWlsYWJsZSkudG9CZURlZmluZWQoKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgdGVzdCgnaXMgZ2VuZXJhdGVkIGZvciBzdGFja3MgaW4gc3VwcG9ydGVkIHJlZ2lvbnMgZnJvbSBvbGQgZnJhbWV3b3JrcycsIGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCB3aXRoRmFrZUN1cnJlbnRDeFZlcnNpb24oJzIuMC4wJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgY3ggPSBhd2FpdCB0ZXN0Q2xvdWRFeGVjdXRhYmxlKHsgZW52OiAnYXdzOi8vMDEyMzQ1Njc4OTEyL3VzLWVhc3QtMScsIHZlcnNpb25SZXBvcnRpbmc6IHRydWUgfSk7XG4gICAgICBjb25zdCBjeGFzbSA9IGF3YWl0IGN4LnN5bnRoZXNpemUoKTtcblxuICAgICAgY29uc3QgcmVzdWx0ID0gY3hhc20uc3RhY2tCeUlkKCd3aXRob3V0ZXJyb3JzJykuZmlyc3RTdGFjaztcbiAgICAgIGNvbnN0IG1ldGFkYXRhID0gcmVzdWx0LnRlbXBsYXRlLlJlc291cmNlcyAmJiByZXN1bHQudGVtcGxhdGUuUmVzb3VyY2VzLkNES01ldGFkYXRhO1xuICAgICAgZXhwZWN0KG1ldGFkYXRhKS50b0VxdWFsKHtcbiAgICAgICAgVHlwZTogJ0FXUzo6Q0RLOjpNZXRhZGF0YScsXG4gICAgICAgIFByb3BlcnRpZXM6IHtcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXJlcXVpcmUtaW1wb3J0c1xuICAgICAgICAgIE1vZHVsZXM6IGAke3JlcXVpcmUoJy4uLy4uL3BhY2thZ2UuanNvbicpLm5hbWV9PSR7cmVxdWlyZSgnLi4vLi4vcGFja2FnZS5qc29uJykudmVyc2lvbn1gLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIHRlc3QoJ2lzIG5vdCBnZW5lcmF0ZWQgZm9yIHN0YWNrcyBpbiB1bnN1cHBvcnRlZCByZWdpb25zIGZyb20gb2xkIGZyYW1ld29ya3MnLCBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgd2l0aEZha2VDdXJyZW50Q3hWZXJzaW9uKCcyLjAuMCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGN4ID0gYXdhaXQgdGVzdENsb3VkRXhlY3V0YWJsZSh7IGVudjogJ2F3czovLzAxMjM0NTY3ODkxMi9iZXJtdWRhLXRyaWFuZ2xlLTEzMzcnLCB2ZXJzaW9uUmVwb3J0aW5nOiB0cnVlIH0pO1xuICAgICAgY29uc3QgY3hhc20gPSBhd2FpdCBjeC5zeW50aGVzaXplKCk7XG5cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGN4YXNtLnN0YWNrQnlJZCgnd2l0aG91dGVycm9ycycpLmZpcnN0U3RhY2s7XG4gICAgICBjb25zdCBtZXRhZGF0YSA9IHJlc3VsdC50ZW1wbGF0ZS5SZXNvdXJjZXMgJiYgcmVzdWx0LnRlbXBsYXRlLlJlc291cmNlcy5DREtNZXRhZGF0YTtcbiAgICAgIGV4cGVjdChtZXRhZGF0YSkudG9CZVVuZGVmaW5lZCgpO1xuICAgIH0pO1xuICB9KTtcblxuICB0ZXN0KCdpcyBub3QgZ2VuZXJhdGVkIGZvciBuZXcgZnJhbWV3b3JrcycsIGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCB3aXRoRmFrZUN1cnJlbnRDeFZlcnNpb24oJzguMC4wJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgY3ggPSBhd2FpdCB0ZXN0Q2xvdWRFeGVjdXRhYmxlKHsgZW52OiAnYXdzOi8vMDEyMzQ1Njc4OTEyL3VzLWVhc3QtMScsIHZlcnNpb25SZXBvcnRpbmc6IHRydWUgfSk7XG4gICAgICBjb25zdCBjeGFzbSA9IGF3YWl0IGN4LnN5bnRoZXNpemUoKTtcblxuICAgICAgY29uc3QgcmVzdWx0ID0gY3hhc20uc3RhY2tCeUlkKCd3aXRob3V0ZXJyb3JzJykuZmlyc3RTdGFjaztcbiAgICAgIGNvbnN0IG1ldGFkYXRhID0gcmVzdWx0LnRlbXBsYXRlLlJlc291cmNlcyAmJiByZXN1bHQudGVtcGxhdGUuUmVzb3VyY2VzLkNES01ldGFkYXRhO1xuICAgICAgZXhwZWN0KG1ldGFkYXRhKS50b0JlVW5kZWZpbmVkKCk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG5cbnRlc3QoJ3N0b3AgZXhlY3V0aW5nIGlmIGNvbnRleHQgcHJvdmlkZXJzIGFyZSBub3QgbWFraW5nIHByb2dyZXNzJywgYXN5bmMgKCkgPT4ge1xuICByZWdpc3RlckNvbnRleHRQcm92aWRlcihjeHNjaGVtYS5Db250ZXh0UHJvdmlkZXIuQVZBSUxBQklMSVRZX1pPTkVfUFJPVklERVIsIHtcbiAgICBhc3luYyBnZXRWYWx1ZShfOiB7IFtrZXk6IHN0cmluZ106IGFueSB9KTogUHJvbWlzZTxhbnk+IHtcbiAgICAgIHJldHVybiAnZm9vJztcbiAgICB9LFxuICB9KTtcblxuICBjb25zdCBjbG91ZEV4ZWN1dGFibGUgPSBuZXcgTW9ja0Nsb3VkRXhlY3V0YWJsZSh7XG4gICAgc3RhY2tzOiBbe1xuICAgICAgc3RhY2tOYW1lOiAndGhlc3RhY2snLFxuICAgICAgdGVtcGxhdGU6IHsgcmVzb3VyY2U6ICdub2Vycm9ycmVzb3VyY2UnIH0sXG4gICAgfV0sXG4gICAgLy8gQWx3YXlzIHJldHVybiB0aGUgc2FtZSBtaXNzaW5nIGtleXMsIHN5bnRoZXNpcyBzaG91bGQgc3RpbGwgZmluaXNoLlxuICAgIG1pc3Npbmc6IFtcbiAgICAgIHsga2V5OiAnYWJjZGVmJywgcHJvcHM6IHsgYWNjb3VudDogJzEzMjQnLCByZWdpb246ICd1cy1lYXN0LTEnIH0sIHByb3ZpZGVyOiBjeHNjaGVtYS5Db250ZXh0UHJvdmlkZXIuQVZBSUxBQklMSVRZX1pPTkVfUFJPVklERVIgfSxcbiAgICBdLFxuICB9KTtcbiAgY29uc3QgY3hhc20gPSBhd2FpdCBjbG91ZEV4ZWN1dGFibGUuc3ludGhlc2l6ZSgpO1xuXG4gIC8vIFdIRU5cbiAgYXdhaXQgY3hhc20uc2VsZWN0U3RhY2tzKHsgcGF0dGVybnM6IFsndGhlc3RhY2snXSB9LCB7IGRlZmF1bHRCZWhhdmlvcjogRGVmYXVsdFNlbGVjdGlvbi5BbGxTdGFja3MgfSk7XG5cbiAgLy8gVEhFTjogdGhlIHRlc3QgZmluaXNoZXMgbm9ybWFsbHl9KTtcbn0pO1xuXG50ZXN0KCdmYWlscyBpZiBsb29rdXBzIGFyZSBkaXNhYmxlZCBhbmQgbWlzc2luZyBjb250ZXh0IGlzIHN5bnRoZXNpemVkJywgYXN5bmMgKCkgPT4ge1xuICAvLyBHSVZFTlxuICBjb25zdCBjbG91ZEV4ZWN1dGFibGUgPSBuZXcgTW9ja0Nsb3VkRXhlY3V0YWJsZSh7XG4gICAgc3RhY2tzOiBbe1xuICAgICAgc3RhY2tOYW1lOiAndGhlc3RhY2snLFxuICAgICAgdGVtcGxhdGU6IHsgcmVzb3VyY2U6ICdub2Vycm9ycmVzb3VyY2UnIH0sXG4gICAgfV0sXG4gICAgLy8gQWx3YXlzIHJldHVybiB0aGUgc2FtZSBtaXNzaW5nIGtleXMsIHN5bnRoZXNpcyBzaG91bGQgc3RpbGwgZmluaXNoLlxuICAgIG1pc3Npbmc6IFtcbiAgICAgIHsga2V5OiAnYWJjZGVmJywgcHJvcHM6IHsgYWNjb3VudDogJzEzMjQnLCByZWdpb246ICd1cy1lYXN0LTEnIH0sIHByb3ZpZGVyOiBjeHNjaGVtYS5Db250ZXh0UHJvdmlkZXIuQVZBSUxBQklMSVRZX1pPTkVfUFJPVklERVIgfSxcbiAgICBdLFxuICB9KTtcbiAgY2xvdWRFeGVjdXRhYmxlLmNvbmZpZ3VyYXRpb24uc2V0dGluZ3Muc2V0KFsnbG9va3VwcyddLCBmYWxzZSk7XG5cbiAgLy8gV0hFTlxuICBhd2FpdCBleHBlY3QoY2xvdWRFeGVjdXRhYmxlLnN5bnRoZXNpemUoKSkucmVqZWN0cy50b1Rocm93KC9Db250ZXh0IGxvb2t1cHMgaGF2ZSBiZWVuIGRpc2FibGVkLyk7XG59KTtcblxuXG5hc3luYyBmdW5jdGlvbiB0ZXN0Q2xvdWRFeGVjdXRhYmxlKHsgZW52LCB2ZXJzaW9uUmVwb3J0aW5nID0gdHJ1ZSB9OiB7IGVudj86IHN0cmluZywgdmVyc2lvblJlcG9ydGluZz86IGJvb2xlYW4gfSA9IHt9KSB7XG4gIGNvbnN0IGNsb3VkRXhlYyA9IG5ldyBNb2NrQ2xvdWRFeGVjdXRhYmxlKHtcbiAgICBzdGFja3M6IFt7XG4gICAgICBzdGFja05hbWU6ICd3aXRob3V0ZXJyb3JzJyxcbiAgICAgIGVudixcbiAgICAgIHRlbXBsYXRlOiB7IHJlc291cmNlOiAnbm9lcnJvcnJlc291cmNlJyB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc3RhY2tOYW1lOiAnd2l0aGVycm9ycycsXG4gICAgICBlbnYsXG4gICAgICB0ZW1wbGF0ZTogeyByZXNvdXJjZTogJ2Vycm9ycmVzb3VyY2UnIH0sXG4gICAgICBtZXRhZGF0YToge1xuICAgICAgICAnL3Jlc291cmNlJzogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHR5cGU6IGN4c2NoZW1hLkFydGlmYWN0TWV0YWRhdGFFbnRyeVR5cGUuRVJST1IsXG4gICAgICAgICAgICBkYXRhOiAndGhpcyBpcyBhbiBlcnJvcicsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgfV0sXG4gIH0pO1xuICBjbG91ZEV4ZWMuY29uZmlndXJhdGlvbi5zZXR0aW5ncy5zZXQoWyd2ZXJzaW9uUmVwb3J0aW5nJ10sIHZlcnNpb25SZXBvcnRpbmcpO1xuXG4gIHJldHVybiBjbG91ZEV4ZWM7XG59XG5cblxuYXN5bmMgZnVuY3Rpb24gd2l0aEZha2VDdXJyZW50Q3hWZXJzaW9uPEE+KHZlcnNpb246IHN0cmluZywgYmxvY2s6ICgpID0+IFByb21pc2U8QT4pOiBQcm9taXNlPEE+IHtcbiAgY29uc3QgY3VycmVudFZlcnNpb25GbiA9IGN4c2NoZW1hLk1hbmlmZXN0LnZlcnNpb247XG4gIGN4c2NoZW1hLk1hbmlmZXN0LnZlcnNpb24gPSAoKSA9PiB2ZXJzaW9uO1xuICB0cnkge1xuICAgIHJldHVybiBhd2FpdCBibG9jaygpO1xuICB9IGZpbmFsbHkge1xuICAgIGN4c2NoZW1hLk1hbmlmZXN0LnZlcnNpb24gPSBjdXJyZW50VmVyc2lvbkZuO1xuICB9XG59Il19
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvdWQtZXhlY3V0YWJsZS50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY2xvdWQtZXhlY3V0YWJsZS50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsMkRBQTJEO0FBQzNELHlDQUF5QztBQUN6Qyx1RUFBc0U7QUFDdEUsbUVBQXNFO0FBQ3RFLGtDQUE4QztBQUU5QyxRQUFRLENBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFO0lBQ2xDLElBQUksQ0FBQyx5REFBeUQsRUFBRSxLQUFLLElBQUksRUFBRTtRQUN6RSxNQUFNLHdCQUF3QixDQUFDLE9BQU8sRUFBRSxLQUFLLElBQUksRUFBRTtZQUNqRCxNQUFNLEVBQUUsR0FBRyxNQUFNLG1CQUFtQixDQUFDLEVBQUUsR0FBRyxFQUFFLFNBQVMsS0FBSyxDQUFDLGVBQWUsSUFBSSxLQUFLLENBQUMsY0FBYyxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUNoSSxNQUFNLEtBQUssR0FBRyxNQUFNLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUVwQyxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxDQUFDLFVBQVUsQ0FBQztZQUMzRCxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLFNBQVMsSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUM7WUFDcEYsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQztnQkFDdkIsSUFBSSxFQUFFLG9CQUFvQjtnQkFDMUIsVUFBVSxFQUFFO29CQUNWLGlFQUFpRTtvQkFDakUsT0FBTyxFQUFFLEdBQUcsT0FBTyxDQUFDLG9CQUFvQixDQUFDLENBQUMsSUFBSSxJQUFJLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLE9BQU8sRUFBRTtpQkFDMUY7Z0JBQ0QsU0FBUyxFQUFFLHNCQUFzQjthQUNsQyxDQUFDLENBQUM7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ZSxFQUFFLEtBQXVCO0lBQ2pGLE1BQU0sZ0JBQWdCLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7SUFDbkQsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEdBQUcsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDO0lBQzFDLElBQUk7UUFDRixPQUFPLE1BQU0sS0FBSyxFQUFFLENBQUM7S0FDdEI7WUFBUztRQUNSLFFBQVEsQ0FBQyxRQUFRLENBQUMsT0FBTyxHQUFHLGdCQUFnQixDQUFDO0tBQzlDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGN4c2NoZW1hIGZyb20gJ0Bhd3MtY2RrL2Nsb3VkLWFzc2VtYmx5LXNjaGVtYSc7XG5pbXBvcnQgKiBhcyBjeGFwaSBmcm9tICdAYXdzLWNkay9jeC1hcGknO1xuaW1wb3J0IHsgRGVmYXVsdFNlbGVjdGlvbiB9IGZyb20gJy4uLy4uL2xpYi9hcGkvY3hhcHAvY2xvdWQtYXNzZW1ibHknO1xuaW1wb3J0IHsgcmVnaXN0ZXJDb250ZXh0UHJvdmlkZXIgfSBmcm9tICcuLi8uLi9saWIvY29udGV4dC1wcm92aWRlcnMnO1xuaW1wb3J0IHsgTW9ja0Nsb3VkRXhlY3V0YWJsZSB9IGZyb20gJy4uL3V0aWwnO1xuXG5kZXNjcmliZSgnQVdTOjpDREs6Ok1ldGFkYXRhJywgKCkgPT4ge1xuICB0ZXN0KCdpcyBnZW5lcmF0ZWQgZm9yIHJlbG9jYXRhYmxlIHN0YWNrcyBmcm9tIG9sZCBmcmFtZXdvcmtzJywgYXN5bmMgKCkgPT4ge1xuICAgIGF3YWl0IHdpdGhGYWtlQ3VycmVudEN4VmVyc2lvbignMi4wLjAnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBjeCA9IGF3YWl0IHRlc3RDbG91ZEV4ZWN1dGFibGUoeyBlbnY6IGBhd3M6Ly8ke2N4YXBpLlVOS05PV05fQUNDT1VOVH0vJHtjeGFwaS5VTktOT1dOX1JFR0lPTn1gLCB2ZXJzaW9uUmVwb3J0aW5nOiB0cnVlIH0pO1xuICAgICAgY29uc3QgY3hhc20gPSBhd2FpdCBjeC5zeW50aGVzaXplKCk7XG5cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGN4YXNtLnN0YWNrQnlJZCgnd2l0aG91dGVycm9ycycpLmZpcnN0U3RhY2s7XG4gICAgICBjb25zdCBtZXRhZGF0YSA9IHJlc3VsdC50ZW1wbGF0ZS5SZXNvdXJjZXMgJiYgcmVzdWx0LnRlbXBsYXRlLlJlc291cmNlcy5DREtNZXRhZGF0YTtcbiAgICAgIGV4cGVjdChtZXRhZGF0YSkudG9FcXVhbCh7XG4gICAgICAgIFR5cGU6ICdBV1M6OkNESzo6TWV0YWRhdGEnLFxuICAgICAgICBQcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1yZXF1aXJlLWltcG9ydHNcbiAgICAgICAgICBNb2R1bGVzOiBgJHtyZXF1aXJlKCcuLi8uLi9wYWNrYWdlLmpzb24nKS5uYW1lfT0ke3JlcXVpcmUoJy4uLy4uL3BhY2thZ2UuanNvbicpLnZlcnNpb259YCxcbiAgICAgICAgfSxcbiAgICAgICAgQ29uZGl0aW9uOiAnQ0RLTWV0YWRhdGFBdmFpbGFibGUnLFxuICAgICAgfSk7XG5cbiAgICAgIGV4cGVjdChyZXN1bHQudGVtcGxhdGUuQ29uZGl0aW9ucz8uQ0RLTWV0YWRhdGFBdmFpbGFibGUpLnRvQmVEZWZpbmVkKCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIHRlc3QoJ2lzIGdlbmVyYXRlZCBmb3Igc3RhY2tzIGluIHN1cHBvcnRlZCByZWdpb25zIGZyb20gb2xkIGZyYW1ld29ya3MnLCBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgd2l0aEZha2VDdXJyZW50Q3hWZXJzaW9uKCcyLjAuMCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGN4ID0gYXdhaXQgdGVzdENsb3VkRXhlY3V0YWJsZSh7IGVudjogJ2F3czovLzAxMjM0NTY3ODkxMi91cy1lYXN0LTEnLCB2ZXJzaW9uUmVwb3J0aW5nOiB0cnVlIH0pO1xuICAgICAgY29uc3QgY3hhc20gPSBhd2FpdCBjeC5zeW50aGVzaXplKCk7XG5cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGN4YXNtLnN0YWNrQnlJZCgnd2l0aG91dGVycm9ycycpLmZpcnN0U3RhY2s7XG4gICAgICBjb25zdCBtZXRhZGF0YSA9IHJlc3VsdC50ZW1wbGF0ZS5SZXNvdXJjZXMgJiYgcmVzdWx0LnRlbXBsYXRlLlJlc291cmNlcy5DREtNZXRhZGF0YTtcbiAgICAgIGV4cGVjdChtZXRhZGF0YSkudG9FcXVhbCh7XG4gICAgICAgIFR5cGU6ICdBV1M6OkNESzo6TWV0YWRhdGEnLFxuICAgICAgICBQcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1yZXF1aXJlLWltcG9ydHNcbiAgICAgICAgICBNb2R1bGVzOiBgJHtyZXF1aXJlKCcuLi8uLi9wYWNrYWdlLmpzb24nKS5uYW1lfT0ke3JlcXVpcmUoJy4uLy4uL3BhY2thZ2UuanNvbicpLnZlcnNpb259YCxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9KTtcblxuICB0ZXN0KCdpcyBub3QgZ2VuZXJhdGVkIGZvciBzdGFja3MgaW4gdW5zdXBwb3J0ZWQgcmVnaW9ucyBmcm9tIG9sZCBmcmFtZXdvcmtzJywgYXN5bmMgKCkgPT4ge1xuICAgIGF3YWl0IHdpdGhGYWtlQ3VycmVudEN4VmVyc2lvbignMi4wLjAnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBjeCA9IGF3YWl0IHRlc3RDbG91ZEV4ZWN1dGFibGUoeyBlbnY6ICdhd3M6Ly8wMTIzNDU2Nzg5MTIvYmVybXVkYS10cmlhbmdsZS0xMzM3JywgdmVyc2lvblJlcG9ydGluZzogdHJ1ZSB9KTtcbiAgICAgIGNvbnN0IGN4YXNtID0gYXdhaXQgY3guc3ludGhlc2l6ZSgpO1xuXG4gICAgICBjb25zdCByZXN1bHQgPSBjeGFzbS5zdGFja0J5SWQoJ3dpdGhvdXRlcnJvcnMnKS5maXJzdFN0YWNrO1xuICAgICAgY29uc3QgbWV0YWRhdGEgPSByZXN1bHQudGVtcGxhdGUuUmVzb3VyY2VzICYmIHJlc3VsdC50ZW1wbGF0ZS5SZXNvdXJjZXMuQ0RLTWV0YWRhdGE7XG4gICAgICBleHBlY3QobWV0YWRhdGEpLnRvQmVVbmRlZmluZWQoKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgdGVzdCgnaXMgbm90IGdlbmVyYXRlZCBmb3IgbmV3IGZyYW1ld29ya3MnLCBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgd2l0aEZha2VDdXJyZW50Q3hWZXJzaW9uKCc4LjAuMCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGN4ID0gYXdhaXQgdGVzdENsb3VkRXhlY3V0YWJsZSh7IGVudjogJ2F3czovLzAxMjM0NTY3ODkxMi91cy1lYXN0LTEnLCB2ZXJzaW9uUmVwb3J0aW5nOiB0cnVlIH0pO1xuICAgICAgY29uc3QgY3hhc20gPSBhd2FpdCBjeC5zeW50aGVzaXplKCk7XG5cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGN4YXNtLnN0YWNrQnlJZCgnd2l0aG91dGVycm9ycycpLmZpcnN0U3RhY2s7XG4gICAgICBjb25zdCBtZXRhZGF0YSA9IHJlc3VsdC50ZW1wbGF0ZS5SZXNvdXJjZXMgJiYgcmVzdWx0LnRlbXBsYXRlLlJlc291cmNlcy5DREtNZXRhZGF0YTtcbiAgICAgIGV4cGVjdChtZXRhZGF0YSkudG9CZVVuZGVmaW5lZCgpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuXG50ZXN0KCdzdG9wIGV4ZWN1dGluZyBpZiBjb250ZXh0IHByb3ZpZGVycyBhcmUgbm90IG1ha2luZyBwcm9ncmVzcycsIGFzeW5jICgpID0+IHtcbiAgcmVnaXN0ZXJDb250ZXh0UHJvdmlkZXIoY3hzY2hlbWEuQ29udGV4dFByb3ZpZGVyLkFWQUlMQUJJTElUWV9aT05FX1BST1ZJREVSLCB7XG4gICAgYXN5bmMgZ2V0VmFsdWUoXzogeyBba2V5OiBzdHJpbmddOiBhbnkgfSk6IFByb21pc2U8YW55PiB7XG4gICAgICByZXR1cm4gJ2Zvbyc7XG4gICAgfSxcbiAgfSk7XG5cbiAgY29uc3QgY2xvdWRFeGVjdXRhYmxlID0gbmV3IE1vY2tDbG91ZEV4ZWN1dGFibGUoe1xuICAgIHN0YWNrczogW3tcbiAgICAgIHN0YWNrTmFtZTogJ3RoZXN0YWNrJyxcbiAgICAgIHRlbXBsYXRlOiB7IHJlc291cmNlOiAnbm9lcnJvcnJlc291cmNlJyB9LFxuICAgIH1dLFxuICAgIC8vIEFsd2F5cyByZXR1cm4gdGhlIHNhbWUgbWlzc2luZyBrZXlzLCBzeW50aGVzaXMgc2hvdWxkIHN0aWxsIGZpbmlzaC5cbiAgICBtaXNzaW5nOiBbXG4gICAgICB7IGtleTogJ2FiY2RlZicsIHByb3BzOiB7IGFjY291bnQ6ICcxMzI0JywgcmVnaW9uOiAndXMtZWFzdC0xJyB9LCBwcm92aWRlcjogY3hzY2hlbWEuQ29udGV4dFByb3ZpZGVyLkFWQUlMQUJJTElUWV9aT05FX1BST1ZJREVSIH0sXG4gICAgXSxcbiAgfSk7XG4gIGNvbnN0IGN4YXNtID0gYXdhaXQgY2xvdWRFeGVjdXRhYmxlLnN5bnRoZXNpemUoKTtcblxuICAvLyBXSEVOXG4gIGF3YWl0IGN4YXNtLnNlbGVjdFN0YWNrcyh7IHBhdHRlcm5zOiBbJ3RoZXN0YWNrJ10gfSwgeyBkZWZhdWx0QmVoYXZpb3I6IERlZmF1bHRTZWxlY3Rpb24uQWxsU3RhY2tzIH0pO1xuXG4gIC8vIFRIRU46IHRoZSB0ZXN0IGZpbmlzaGVzIG5vcm1hbGx5fSk7XG59KTtcblxudGVzdCgnZmFpbHMgaWYgbG9va3VwcyBhcmUgZGlzYWJsZWQgYW5kIG1pc3NpbmcgY29udGV4dCBpcyBzeW50aGVzaXplZCcsIGFzeW5jICgpID0+IHtcbiAgLy8gR0lWRU5cbiAgY29uc3QgY2xvdWRFeGVjdXRhYmxlID0gbmV3IE1vY2tDbG91ZEV4ZWN1dGFibGUoe1xuICAgIHN0YWNrczogW3tcbiAgICAgIHN0YWNrTmFtZTogJ3RoZXN0YWNrJyxcbiAgICAgIHRlbXBsYXRlOiB7IHJlc291cmNlOiAnbm9lcnJvcnJlc291cmNlJyB9LFxuICAgIH1dLFxuICAgIC8vIEFsd2F5cyByZXR1cm4gdGhlIHNhbWUgbWlzc2luZyBrZXlzLCBzeW50aGVzaXMgc2hvdWxkIHN0aWxsIGZpbmlzaC5cbiAgICBtaXNzaW5nOiBbXG4gICAgICB7IGtleTogJ2FiY2RlZicsIHByb3BzOiB7IGFjY291bnQ6ICcxMzI0JywgcmVnaW9uOiAndXMtZWFzdC0xJyB9LCBwcm92aWRlcjogY3hzY2hlbWEuQ29udGV4dFByb3ZpZGVyLkFWQUlMQUJJTElUWV9aT05FX1BST1ZJREVSIH0sXG4gICAgXSxcbiAgfSk7XG4gIGNsb3VkRXhlY3V0YWJsZS5jb25maWd1cmF0aW9uLnNldHRpbmdzLnNldChbJ2xvb2t1cHMnXSwgZmFsc2UpO1xuXG4gIC8vIFdIRU5cbiAgYXdhaXQgZXhwZWN0KGNsb3VkRXhlY3V0YWJsZS5zeW50aGVzaXplKCkpLnJlamVjdHMudG9UaHJvdygvQ29udGV4dCBsb29rdXBzIGhhdmUgYmVlbiBkaXNhYmxlZC8pO1xufSk7XG5cblxuYXN5bmMgZnVuY3Rpb24gdGVzdENsb3VkRXhlY3V0YWJsZSh7IGVudiwgdmVyc2lvblJlcG9ydGluZyA9IHRydWUgfTogeyBlbnY/OiBzdHJpbmcsIHZlcnNpb25SZXBvcnRpbmc/OiBib29sZWFuIH0gPSB7fSkge1xuICBjb25zdCBjbG91ZEV4ZWMgPSBuZXcgTW9ja0Nsb3VkRXhlY3V0YWJsZSh7XG4gICAgc3RhY2tzOiBbe1xuICAgICAgc3RhY2tOYW1lOiAnd2l0aG91dGVycm9ycycsXG4gICAgICBlbnYsXG4gICAgICB0ZW1wbGF0ZTogeyByZXNvdXJjZTogJ25vZXJyb3JyZXNvdXJjZScgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHN0YWNrTmFtZTogJ3dpdGhlcnJvcnMnLFxuICAgICAgZW52LFxuICAgICAgdGVtcGxhdGU6IHsgcmVzb3VyY2U6ICdlcnJvcnJlc291cmNlJyB9LFxuICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgJy9yZXNvdXJjZSc6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0eXBlOiBjeHNjaGVtYS5BcnRpZmFjdE1ldGFkYXRhRW50cnlUeXBlLkVSUk9SLFxuICAgICAgICAgICAgZGF0YTogJ3RoaXMgaXMgYW4gZXJyb3InLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgIH1dLFxuICB9KTtcbiAgY2xvdWRFeGVjLmNvbmZpZ3VyYXRpb24uc2V0dGluZ3Muc2V0KFsndmVyc2lvblJlcG9ydGluZyddLCB2ZXJzaW9uUmVwb3J0aW5nKTtcblxuICByZXR1cm4gY2xvdWRFeGVjO1xufVxuXG5cbmFzeW5jIGZ1bmN0aW9uIHdpdGhGYWtlQ3VycmVudEN4VmVyc2lvbjxBPih2ZXJzaW9uOiBzdHJpbmcsIGJsb2NrOiAoKSA9PiBQcm9taXNlPEE+KTogUHJvbWlzZTxBPiB7XG4gIGNvbnN0IGN1cnJlbnRWZXJzaW9uRm4gPSBjeHNjaGVtYS5NYW5pZmVzdC52ZXJzaW9uO1xuICBjeHNjaGVtYS5NYW5pZmVzdC52ZXJzaW9uID0gKCkgPT4gdmVyc2lvbjtcbiAgdHJ5IHtcbiAgICByZXR1cm4gYXdhaXQgYmxvY2soKTtcbiAgfSBmaW5hbGx5IHtcbiAgICBjeHNjaGVtYS5NYW5pZmVzdC52ZXJzaW9uID0gY3VycmVudFZlcnNpb25GbjtcbiAgfVxufSJdfQ==
|