aws-delivlib 13.4.10 → 13.5.2
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/cdk.out/delivlib-test.assets.json +2 -2
- package/cdk.out/delivlib-test.template.json +2 -0
- package/cdk.out/manifest.json +3 -3
- package/cdk.out/tree.json +2 -0
- package/lib/auto-build.js +2 -1
- package/lib/auto-build.ts +1 -0
- package/lib/custom-resource-handlers/src/certificate-signing-request.tsbuildinfo +1 -1
- package/lib/custom-resource-handlers/src/pgp-secret.tsbuildinfo +1 -1
- package/lib/custom-resource-handlers/src/private-key.tsbuildinfo +1 -1
- package/lib/pull-request/bump.d.ts +6 -0
- package/lib/pull-request/bump.js +3 -2
- package/lib/pull-request/bump.ts +7 -1
- package/lib/pull-request/pr.d.ts +6 -0
- package/lib/pull-request/pr.js +2 -1
- package/lib/pull-request/pr.ts +8 -0
- package/package.json +6 -6
package/lib/pull-request/pr.js
CHANGED
|
@@ -76,6 +76,7 @@ class AutoPullRequest extends monocdk_1.Construct {
|
|
|
76
76
|
commands.unshift('export SKIP=false');
|
|
77
77
|
this.project = new monocdk_1.aws_codebuild.Project(this, 'PullRequest', {
|
|
78
78
|
source: props.repo.createBuildSource(this, false, { cloneDepth }),
|
|
79
|
+
description: props.projectDescription,
|
|
79
80
|
environment: (0, build_env_1.createBuildEnvironment)((_e = props.build) !== null && _e !== void 0 ? _e : {}),
|
|
80
81
|
buildSpec: monocdk_1.aws_codebuild.BuildSpec.fromObject({
|
|
81
82
|
version: '0.2',
|
|
@@ -219,4 +220,4 @@ class AutoPullRequest extends monocdk_1.Construct {
|
|
|
219
220
|
}
|
|
220
221
|
}
|
|
221
222
|
exports.AutoPullRequest = AutoPullRequest;
|
|
222
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJwci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEscUNBTWlCO0FBQ2pCLDRDQUE2RTtBQUM3RSw0REFBOEM7QUFvTDlDOztHQUVHO0FBQ0gsTUFBYSxlQUFnQixTQUFRLG1CQUFTO0lBa0I1QyxZQUFZLE1BQWlCLEVBQUUsRUFBVSxFQUFFLEtBQTJCOztRQUNwRSxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWxCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBQSxNQUFBLEtBQUssQ0FBQyxJQUFJLDBDQUFFLElBQUksbUNBQUksUUFBUSxDQUFDO1FBQy9DLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBQSxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sbUNBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUN2RCxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQUEsS0FBSyxDQUFDLE9BQU8sbUNBQUksRUFBRSxDQUFDO1FBRW5DLEtBQUssTUFBTSxFQUFFLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDMUMsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFO2dCQUNoRixNQUFNLElBQUksS0FBSyxDQUFDLGdCQUFnQixJQUFJLENBQUMsVUFBVSxxQ0FBcUMsRUFBRSxFQUFFLENBQUMsQ0FBQzthQUMzRjtTQUNGO1FBRUQsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDN0MsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFX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TUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ3ZHO1FBRUQsT0FBTyxRQUFRLENBQUM7SUFFbEIsQ0FBQztJQUVPLFVBQVUsQ0FBQyxHQUFXLEVBQUUsT0FBZSxFQUFFLE9BQVk7UUFDM0QsT0FBTztZQUNMLGFBQWE7WUFDYixPQUFPO1lBQ1AsK0NBQStDO1lBQy9DLDJDQUEyQztZQUMzQyxNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFO1lBQy9DLGdDQUFnQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsRUFBRTtTQUN0RixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNkLENBQUM7SUFFTyxhQUFhLENBQUMsR0FBVyxFQUFFLE9BQWU7UUFDaEQsT0FBTztZQUNMLGFBQWE7WUFDYixPQUFPO1lBQ1AsK0NBQStDO1lBQy9DLDJDQUEyQztZQUMzQywwQkFBMEIsR0FBRyxHQUFHO1NBQ2pDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2QsQ0FBQztDQUVGO0FBM1FELDBDQTJRQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbnN0cnVjdCwgRHVyYXRpb24sXG4gIGF3c19jbG91ZHdhdGNoIGFzIGNsb3Vkd2F0Y2gsXG4gIGF3c19jb2RlYnVpbGQgYXMgY2J1aWxkLFxuICBhd3NfZXZlbnRzIGFzIGV2ZW50cyxcbiAgYXdzX2V2ZW50c190YXJnZXRzIGFzIGV2ZW50c190YXJnZXRzLFxufSBmcm9tICdtb25vY2RrJztcbmltcG9ydCB7IEJ1aWxkRW52aXJvbm1lbnRQcm9wcywgY3JlYXRlQnVpbGRFbnZpcm9ubWVudCB9IGZyb20gJy4uL2J1aWxkLWVudic7XG5pbXBvcnQgKiBhcyBwZXJtaXNzaW9ucyBmcm9tICcuLi9wZXJtaXNzaW9ucyc7XG5pbXBvcnQgeyBXcml0YWJsZUdpdEh1YlJlcG8gfSBmcm9tICcuLi9yZXBvJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBjcmVhdGluZyBhIFB1bGwgUmVxdWVzdCBKb2IuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0b1B1bGxSZXF1ZXN0T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgYmFzZSBicmFuY2ggb2YgdGhlIFBSLlxuICAgKlxuICAgKiBAZGVmYXVsdCAnbWFzdGVyJ1xuICAgKi9cbiAgYmFzZT86IEJhc2U7XG5cbiAgLyoqXG4gICAqIFRydWUgaWYgeW91IG9ubHkgd2FudCB0byBwdXNoIHRoZSBoZWFkIGJyYW5jaCB3aXRob3V0IGNyZWF0aW5nIGEgUFIuXG4gICAqIFVzZWZ1bCB3aGVuIHVzZWQgYWxvbmcgd2l0aCAnY29tbWl0cycgdG8gZXhlY3V0ZSBhIGNvbW1pdC1hbmQtcHVzaCBhdXRvbWF0aWNhbGx5LlxuICAgKlxuICAgKiAvLyBUT0RPOiBDb25zaWRlciBtb3ZpbmcgdGhpcyBmdW5jdGlvbmFsaXR5IHRvIGEgc2VwYXJhdGUgY29uc3RydWN0LlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgcHVzaE9ubHk/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaXRsZSBvZiB0aGUgUFIuXG4gICAqXG4gICAqIEBkZWZhdWx0IGBNZXJnZSAke2hlYWR9IHRvICR7YmFzZX1gXG4gICAqL1xuICB0aXRsZT86IHN0cmluZztcblxuICAvKipcbiAgICogQm9keSB0aGUgUFIuIE5vdGUgdGhhdCB0aGUgYm9keSBpcyB1cGRhdGVkIHBvc3QgUFIgY3JlYXRpb24sXG4gICAqIHRoaXMgbWVhbnMgeW91IGNhbiB1c2UgdGhlICRQUl9OVU1CRVIgZW52IHZhcmlhYmxlIHRvIHJlZmVyIHRvIHRoZSBQUiBpdHNlbGYuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gYm9keS5cbiAgICovXG4gIGJvZHk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExhYmVscyBhcHBsaWVkIHRvIHRoZSBQUi5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBsYWJlbHMuXG4gICAqL1xuICBsYWJlbHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQnVpbGQgZW52aXJvbm1lbnQgZm9yIHRoZSBDb2RlQnVpbGQgam9iLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIGJ1aWxkPzogQnVpbGRFbnZpcm9ubWVudFByb3BzO1xuXG4gIC8qKlxuICAgKiBHaXQgY2xvbmUgZGVwdGguXG4gICAqXG4gICAqIEBkZWZhdWx0IDAgKGNsb25lcyB0aGUgZW50aXJlIHJlcG9zaXRvcnkgcmV2aXNpb25zKVxuICAgKi9cbiAgY2xvbmVEZXB0aD86IG51bWJlcjtcblxuICAvKipcbiAgICogS2V5IHZhbHVlIHBhaXJzIG9mIHZhcmlhYmxlcyB0byBleHBvcnQuIFRoZXNlIHZhcmlhYmxlcyB3aWxsIGJlIGF2YWlsYWJsZSBmb3IgZHluYW1pYyBldmFsdWF0aW9uIGluIGFueVxuICAgKiBzdWJzZXF1ZW50IGNvbW1hbmQuXG4gICAqXG4gICAqIEtleSAtIFZhcmlhYmxlIG5hbWUgKGUuZyBWRVJTSU9OKVxuICAgKiBWYWx1ZSAtIENvbW1hbmQgdGhhdCBldmFsdWF0ZXMgdG8gdGhlIHZhbHVlIG9mIHRoZSB2YXJpYWJsZSAoZS5nICdnaXQgZGVzY3JpYmUnKVxuICAgKlxuICAgKiBFeGFtcGxlOlxuICAgKlxuICAgKiBDb25maWd1cmUgYW4gZXhwb3J0IGluIHRoZSBmb3JtIG9mOlxuICAgKlxuICAgKiB7ICdWRVJTSU9OJzogJ2dpdCBkZXNjcmliZScgfVxuICAgKlxuICAgKiBVc2UgdGhlICRWRVJTSU9OIHZhcmlhYmxlIGluIHRoZSBQUiB0aXRsZTogJ2Nob3JlKHJlbGVhc2UpOiAkVkVSU0lPTidcbiAgICpcbiAgICogTm90ZSB0aGF0IHRoZXNlIGV4cG9ydHMgYXJlIGV4ZWN1dGVkIGFmdGVyIHRoZSBgY29tbWFuZHNgIGV4ZWN1dGlvbixcbiAgICogc28gdGhleSBoYXZlIGFjY2VzcyB0byB0aGUgYXJ0aWZhY3RzIHNhaWQgY29tbWFuZHMgcHJvZHVjZSAoZS5nIHZlcnNpb24gYnVtcCkuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gZXhwb3J0c1xuICAgKi9cbiAgZXhwb3J0cz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG5cbiAgLyoqXG4gICAqIFRoZSBzY2hlZHVsZSB0byBwcm9kdWNlIGFuIGF1dG9tYXRpYyBQUi5cbiAgICpcbiAgICogVGhlIGV4cHJlc3Npb24gY2FuIGJlIG9uZSBvZjpcbiAgICpcbiAgICogIC0gY3JvbiBleHByZXNzaW9uLCBzdWNoIGFzIFwiY3JvbigwIDEyICogKiA/ICopXCIgd2lsbCB0cmlnZ2VyIGV2ZXJ5IGRheSBhdCAxMnBtIFVUQ1xuICAgKiAgLSByYXRlIGV4cHJlc3Npb24sIHN1Y2ggYXMgXCJyYXRlKDEgZGF5KVwiIHdpbGwgdHJpZ2dlciBldmVyeSAyNCBob3VycyBmcm9tIHRoZSB0aW1lIG9mIGRlcGxveW1lbnRcbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uQ2xvdWRXYXRjaC9sYXRlc3QvZXZlbnRzL1NjaGVkdWxlZEV2ZW50cy5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gc2NoZWR1bGUsIHNob3VsZCBiZSB0cmlnZ2VyZWQgbWFudWFsbHkuXG4gICAqL1xuICBzY2hlZHVsZUV4cHJlc3Npb24/OiBzdHJpbmc7XG5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdXRvUHVsbFJlcXVlc3RQcm9wcyBleHRlbmRzIEF1dG9QdWxsUmVxdWVzdE9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgUFIgaW4uXG4gICAqL1xuICByZXBvOiBXcml0YWJsZUdpdEh1YlJlcG87XG5cbiAgLyoqXG4gICAqIEEgc2V0IG9mIGNvbW1hbmRzIHRvIHJ1biBhZ2FpbnN0IHRoZSBoZWFkIGJyYW5jaC5cbiAgICogVXNlZnVsIGZvciB0aGluZ3MgbGlrZSB2ZXJzaW9uIGJ1bXBzIG9yIGFueSBhdXRvLWdlbmVyYXRlZCBjb21taXRzLlxuICAgKlxuICAgKiBOb3RlIHRoYXQgeW91IGNhbm5vdCB1c2UgZXhwb3J0IGtleXMgaW4gdGhlc2UgY29tbWFuZHMgKFNlZSBgZXhwb3J0c2AgcHJvcGVydHkpXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gY29tbWFuZHMuXG4gICAqL1xuICBjb21tYW5kcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgaGVhZCBicmFuY2ggb2YgdGhlIFBSLlxuICAgKi9cbiAgaGVhZDogSGVhZDtcblxuICAvKipcbiAgICogVGhlIGV4aXQgY29kZSBvZiB0aGlzIGNvbW1hbmQgZGV0ZXJtaW5lcyB3aGV0aGVyIG9yIG5vdCB0byBwcm9jZWVkIHdpdGggdGhlXG4gICAqIFBSIGNyZWF0aW9uLiBJZiBjb25maWd1cmVkLCB0aGlzIGNvbW1hbmQgaXMgdGhlIGZpcnN0IG9uZSB0byBydW4sIGFuZCBpZiBpdCBmYWlscywgYWxsXG4gICAqIG90aGVyIGNvbW1hbmRzIHdpbGwgYmUgc2tpcHBlZC5cbiAgICpcbiAgICogVGhpcyBjb21tYW5kIGlzIHRoZSBmaXJzdCB0byBleGVjdXRlLCBhbmQgc2hvdWxkIG5vdCBhc3N1bWUgYW55IHByZS1leGlzdGluZyBzdGF0ZS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBjb25kaXRpb25cbiAgICovXG4gIGNvbmRpdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogSWYgYW55IFBSIGxhYmVsZWQgd2l0aCB0aGUgZ2l2ZW4gbGFiZWxzIGlzIHN0aWxsIG9wZW4sIG5vIG5ldyBQUiB3aWxsIGJlIGNyZWF0ZWRcbiAgICpcbiAgICogQGRlZmF1bHQgLSBkb24ndCBsb29rIGF0IG9wZW4gUFJzXG4gICAqL1xuICByZWFkb25seSBza2lwSWZPcGVuUHJzV2l0aExhYmVscz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBiYXNlIGJyYW5jaCBvZiB0aGUgUFIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZSB7XG5cbiAgLyoqXG4gICAqIEJyYW5jaCBuYW1lLlxuICAgKlxuICAgKiBUaGlzIGJyYW5jaCBtdXN0IGV4aXN0LlxuICAgKlxuICAgKiBAZGVmYXVsdCAnbWFzdGVyJ1xuICAgKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBjb25maWd1cmluZyB0aGUgaGVhZCBicmFuY2ggb2YgdGhlIFBSLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEhlYWQge1xuXG4gIC8qKlxuICAgKiBCcmFuY2ggbmFtZS5cbiAgICpcbiAgICogVGhpcyBicmFuY2ggd2lsbCBiZSBjcmVhdGVkIGlmIGl0IGRvZXNuJ3QgZXhpc3QuXG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzb3VyY2Ugc2hhIG9mIHRoZSBicmFuY2guXG4gICAqXG4gICAqIElmIHRoZSBnaXZlbiBicmFuY2ggYWxyZWFkeSBleGlzdHMsIHRoaXMgc2hhIHdpbGwgYmUgYXV0by1tZXJnZWQgb250byBpdC4gTm90ZSB0aGF0IGluIHN1Y2ggYSBjYXNlLFxuICAgKiB0aGUgUFIgY3JlYXRpb24gbWlnaHQgZmFpbCBpbiBjYXNlIHRoZXJlIGFyZSBtZXJnZSBjb25mbGljdHMuXG4gICAqXG4gICAqIElmIHRoZSBnaXZlbiBicmFuY2ggZG9lc24ndCBleGlzdCwgdGhlIG5ld2x5IGNyZWF0ZWQgYnJhbmNoIHdpbGwgYmUgYmFzZWQgb2YgdGhpcyBoYXNoLlxuICAgKlxuICAgKiBOb3RlIHRoYXQgZHluYW1pYyBleHBvcnRzIGFyZSBub3QgYWxsb3dlZCBmb3IgdGhpcyBwcm9wZXJ0eS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSB0aGUgYmFzZSBicmFuY2ggb2YgdGhlIHByLlxuICAgKi9cbiAgcmVhZG9ubHkgc291cmNlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBDb2RlQnVpbGQgam9iIHRoYXQsIHdoZW4gdHJpZ2dlcmVkLCBvcGVucyBhIEdpdEh1YiBQdWxsIFJlcXVlc3QuXG4gKi9cbmV4cG9ydCBjbGFzcyBBdXRvUHVsbFJlcXVlc3QgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuXG4gIC8qKlxuICAgKiBDbG91ZFdhdGNoIGFsYXJtIHRoYXQgd2lsbCBiZSB0cmlnZ2VyZWQgaWYgdGhlIGpvYiBmYWlscy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhbGFybTogY2xvdWR3YXRjaC5BbGFybTtcblxuICAvKipcbiAgICogVGhlIENvZGVCdWlsZCBwcm9qZWN0IHRoaXMgY29uc3RydWN0IGNyZWF0ZXMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvamVjdDogY2J1aWxkLklQcm9qZWN0O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgcHJvcHM6IEF1dG9QdWxsUmVxdWVzdFByb3BzO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgYmFzZUJyYW5jaDogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IGhlYWRTb3VyY2U6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBleHBvcnRzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuXG4gIGNvbnN0cnVjdG9yKHBhcmVudDogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQXV0b1B1bGxSZXF1ZXN0UHJvcHMpIHtcbiAgICBzdXBlcihwYXJlbnQsIGlkKTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYmFzZUJyYW5jaCA9IHByb3BzLmJhc2U/Lm5hbWUgPz8gJ21hc3Rlcic7XG4gICAgdGhpcy5oZWFkU291cmNlID0gcHJvcHMuaGVhZC5zb3VyY2UgPz8gdGhpcy5iYXNlQnJhbmNoO1xuICAgIHRoaXMuZXhwb3J0cyA9IHByb3BzLmV4cG9ydHMgPz8ge307XG5cbiAgICBmb3IgKGNvbnN0IGV4IG9mIE9iamVjdC5rZXlzKHRoaXMuZXhwb3J0cykpIHtcbiAgICAgIGlmICh0aGlzLmhlYWRTb3VyY2UuaW5jbHVkZXMoYFxcJHske2V4fX1gKSB8fCB0aGlzLmhlYWRTb3VyY2UuaW5jbHVkZXMoYFxcJCR7ZXh9YCkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBoZWFkIHNvdXJjZSAoJHt0aGlzLmhlYWRTb3VyY2V9KSBjYW5ub3QgY29udGFpbiBkeW5hbWljIGV4cG9ydHM6ICR7ZXh9YCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3Qgc3NoS2V5U2VjcmV0ID0gcHJvcHMucmVwby5zc2hLZXlTZWNyZXQ7XG4gICAgY29uc3QgY29tbWl0RW1haWwgPSBwcm9wcy5yZXBvLmNvbW1pdEVtYWlsO1xuICAgIGNvbnN0IGNvbW1pdFVzZXJuYW1lID0gcHJvcHMucmVwby5jb21taXRVc2VybmFtZTtcbiAgICBjb25zdCBjbG9uZURlcHRoID0gcHJvcHMuY2xvbmVEZXB0aCA9PT0gdW5kZWZpbmVkID8gMCA6IHByb3BzLmNsb25lRGVwdGg7XG5cbiAgICBjb25zdCBuZWVkc0dpdEh1YlRva2VuU2VjcmV0ID0gIXRoaXMucHJvcHMucHVzaE9ubHkgfHwgISF0aGlzLnByb3BzLnNraXBJZk9wZW5QcnNXaXRoTGFiZWxzO1xuXG4gICAgbGV0IGNvbW1hbmRzOiBzdHJpbmdbXSA9IFtcblxuICAgICAgLi4udGhpcy5jb25maWd1cmVTc2hBY2Nlc3MoKSxcblxuICAgICAgLy8gd2hlbiB0aGUgam9iIGlzIHRyaWdnZXJlZCBhcyBhIENvZGVQaXBlbGluZSBhY3Rpb24sIHRoZSB3b3JraW5nIGRpcmVjdG9yeVxuICAgICAgLy8gaXMgcG9wdWxhdGVkIHdpdGggdGhlIG91dHB1dCBhcnRpZmFjdCBvZiB0aGUgQ29kZUNvbW1pdFNvdXJjZUFjdGlvbiwgd2hpY2ggZG9lc24ndCBpbmNsdWRlXG4gICAgICAvLyB0aGUgLmdpdCBkaXJlY3RvcnkgaW4gdGhlIHppcHBlZCBzMyBhcmNoaXZlLiAoWWVhaCwgZnVuIHN0dWZmKS5cbiAgICAgIC8vIHNlZSBodHRwczovL2l0bmV4dC5pby9ob3ctdG8tYWNjZXNzLWdpdC1tZXRhZGF0YS1pbi1jb2RlYnVpbGQtd2hlbi11c2luZy1jb2RlcGlwZWxpbmUtY29kZWNvbW1pdC1jZWFjZjJjNWMxZGNcbiAgICAgIC4uLnRoaXMuY2xvbmVJZk5lZWRlZCgpLFxuICAgIF07XG5cbiAgICBpZiAodGhpcy5wcm9wcy5jb25kaXRpb24pIHtcbiAgICAgIC8vIHRoZXJlJ3Mgbm8gd2F5IHRvIHN0b3AgYSBCdWlsZFNwZWMgZXhlY3V0aW9uIGhhbGZ3YXkgdGhyb3VnaCB3aXRob3V0IHRocm93aW5nIGFuIGVycm9yLiBCZWxpZXZlIG1lLCBJXG4gICAgICAvLyBjaGVja2VkIHRoZSBjb2RlLiBJbnN0ZWFkIHdlIGRlZmluZSBhIHZhcmlhYmxlIHRoYXQgd2Ugd2lsbCBzd2l0Y2ggYWxsIG90aGVyIGxpbmVzIG9uL29mZi5cbiAgICAgIGNvbW1hbmRzLnB1c2goYCR7dGhpcy5wcm9wcy5jb25kaXRpb259IGAgK1xuICAgICAgJyYmIHsgZWNobyBcXCdTa2lwIGNvbmRpdGlvbiBpcyBtZXQsIHNraXBwaW5nLi4uXFwnICYmIGV4cG9ydCBTS0lQPXRydWU7IH0gJyArXG4gICAgICAnfHwgeyBlY2hvIFxcJ1NraXAgY29uZGl0aW9uIGlzIG5vdCBtZXQsIGNvbnRpbnVpbmcuLi5cXCcgJiYgZXhwb3J0IFNLSVA9ZmFsc2U7IH0nKTtcbiAgICB9XG5cbiAgICAvLyByZWFkIHRoZSB0b2tlblxuICAgIGlmIChuZWVkc0dpdEh1YlRva2VuU2VjcmV0KSB7XG4gICAgICBjb21tYW5kcy5wdXNoKGBleHBvcnQgR0lUSFVCX1RPS0VOPSQoYXdzIHNlY3JldHNtYW5hZ2VyIGdldC1zZWNyZXQtdmFsdWUgLS1zZWNyZXQtaWQgXCIke3RoaXMucHJvcHMucmVwby50b2tlblNlY3JldEFybn1cIiAtLW91dHB1dD10ZXh0IC0tcXVlcnk9U2VjcmV0U3RyaW5nKWApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnByb3BzLnNraXBJZk9wZW5QcnNXaXRoTGFiZWxzKSB7XG4gICAgICBjb21tYW5kcy5wdXNoKC4uLnRoaXMuc2tpcElmT3BlblBycyh0aGlzLnByb3BzLnNraXBJZk9wZW5QcnNXaXRoTGFiZWxzKSk7XG4gICAgfVxuXG4gICAgY29tbWFuZHMucHVzaChcbiAgICAgIC4uLnRoaXMuY3JlYXRlSGVhZCgpLFxuICAgICAgLi4udGhpcy5wdXNoSGVhZCgpLFxuICAgICk7XG5cbiAgICBpZiAoIXRoaXMucHJvcHMucHVzaE9ubHkpIHtcbiAgICAgIGNvbW1hbmRzLnB1c2goLi4udGhpcy5jcmVhdGVQdWxsUmVxdWVzdCgpKTtcbiAgICB9XG5cbiAgICAvLyB0b2dnbGUgYWxsIGNvbW1hbmRzIGFjY29yZGluZyB0byB0aGUgU0tJUCB2YXJpYWJsZS5cbiAgICBjb21tYW5kcyA9IGNvbW1hbmRzLm1hcCgoY29tbWFuZDogc3RyaW5nKSA9PiBgJFNLSVAgfHwgeyAke2NvbW1hbmR9IDsgfWApO1xuXG4gICAgLy8gaW50aWFsbHkgYWxsIGNvbW1hbmRzIGFyZSBlbmFibGVkLlxuICAgIGNvbW1hbmRzLnVuc2hpZnQoJ2V4cG9ydCBTS0lQPWZhbHNlJyk7XG5cbiAgICB0aGlzLnByb2plY3QgPSBuZXcgY2J1aWxkLlByb2plY3QodGhpcywgJ1B1bGxSZXF1ZXN0Jywge1xuICAgICAgc291cmNlOiBwcm9wcy5yZXBvLmNyZWF0ZUJ1aWxkU291cmNlKHRoaXMsIGZhbHNlLCB7IGNsb25lRGVwdGggfSksXG4gICAgICBlbnZpcm9ubWVudDogY3JlYXRlQnVpbGRFbnZpcm9ubWVudChwcm9wcy5idWlsZCA/PyB7fSksXG4gICAgICBidWlsZFNwZWM6IGNidWlsZC5CdWlsZFNwZWMuZnJvbU9iamVjdCh7XG4gICAgICAgIHZlcnNpb246ICcwLjInLFxuICAgICAgICBwaGFzZXM6IHtcbiAgICAgICAgICBwcmVfYnVpbGQ6IHtcbiAgICAgICAgICAgIGNvbW1hbmRzOiBbXG4gICAgICAgICAgICAgIGBnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIuZW1haWwgXCIke2NvbW1pdEVtYWlsfVwiYCxcbiAgICAgICAgICAgICAgYGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5uYW1lIFwiJHtjb21taXRVc2VybmFtZX1cImAsXG4gICAgICAgICAgICBdLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgYnVpbGQ6IHsgY29tbWFuZHMgfSxcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMucHJvamVjdC5yb2xlKSB7XG4gICAgICBwZXJtaXNzaW9ucy5ncmFudFNlY3JldFJlYWQoc3NoS2V5U2VjcmV0LCB0aGlzLnByb2plY3Qucm9sZSk7XG5cbiAgICAgIGlmIChuZWVkc0dpdEh1YlRva2VuU2VjcmV0KSB7XG4gICAgICAgIHBlcm1pc3Npb25zLmdyYW50U2VjcmV0UmVhZCh7IHNlY3JldEFybjogcHJvcHMucmVwby50b2tlblNlY3JldEFybiB9LCB0aGlzLnByb2plY3Qucm9sZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLnNjaGVkdWxlRXhwcmVzc2lvbikge1xuICAgICAgY29uc3Qgc2NoZWR1bGUgPSBldmVudHMuU2NoZWR1bGUuZXhwcmVzc2lvbihwcm9wcy5zY2hlZHVsZUV4cHJlc3Npb24pO1xuICAgICAgbmV3IGV2ZW50cy5SdWxlKHRoaXMsICdTY2hlZHVsZXInLCB7XG4gICAgICAgIGRlc2NyaXB0aW9uOiAnU2NoZWR1bGVzIGFuIGF1dG9tYXRpYyBQdWxsIFJlcXVlc3QgZm9yIHRoaXMgcmVwb3NpdG9yeScsXG4gICAgICAgIHNjaGVkdWxlLFxuICAgICAgICB0YXJnZXRzOiBbbmV3IGV2ZW50c190YXJnZXRzLkNvZGVCdWlsZFByb2plY3QodGhpcy5wcm9qZWN0KV0sXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICB0aGlzLmFsYXJtID0gdGhpcy5wcm9qZWN0Lm1ldHJpY0ZhaWxlZEJ1aWxkcyh7IHBlcmlvZDogRHVyYXRpb24uc2Vjb25kcygzMDApIH0pLmNyZWF0ZUFsYXJtKHRoaXMsICdBdXRvUHVsbFJlcXVlc3RGYWlsZWRBbGFybScsIHtcbiAgICAgIHRocmVzaG9sZDogMSxcbiAgICAgIGV2YWx1YXRpb25QZXJpb2RzOiAxLFxuICAgICAgdHJlYXRNaXNzaW5nRGF0YTogY2xvdWR3YXRjaC5UcmVhdE1pc3NpbmdEYXRhLklHTk9SRSxcbiAgICB9KTtcbiAgfVxuICBwcml2YXRlIGNyZWF0ZUhlYWQoKTogc3RyaW5nW10ge1xuXG4gICAgcmV0dXJuIFtcbiAgICAgIC8vIGNoZWNrIGlmIGhlYWQgYnJhbmNoIGV4aXN0c1xuICAgICAgYGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgb3JpZ2luLyR7dGhpcy5wcm9wcy5oZWFkLm5hbWV9IGAgK1xuXG4gICAgICAvLyBjaGVja291dCBhbmQgbWVyZ2UgaWYgaXQgZG9lcyAodGhpcyBtaWdodCBmYWlsIGR1ZSB0byBtZXJnZSBjb25mbGljdHMpXG4gICAgICBgJiYgeyBnaXQgY2hlY2tvdXQgJHt0aGlzLnByb3BzLmhlYWQubmFtZX0gJiYgZ2l0IG1lcmdlICR7dGhpcy5oZWFkU291cmNlfSAmJiAke3RoaXMucnVuQ29tbWFuZHMoKX07ICB9IGAgK1xuXG4gICAgICAvLyBjcmVhdGUgaWYgaXQgZG9lc250LiB3ZSBpbml0aWFsbHkgdXNlICd0ZW1wJyB0byBhbGxvdyB1c2luZyBleHBvcnRzIGluIHRoZSBoZWFkIGJyYW5jaCBuYW1lLiAoZS5nIGJ1bXAvJFZFUlNJT04pXG4gICAgICBgfHwgeyBnaXQgY2hlY2tvdXQgJHt0aGlzLmhlYWRTb3VyY2V9ICYmIGdpdCBjaGVja291dCAtYiB0ZW1wICYmICR7dGhpcy5ydW5Db21tYW5kcygpfSAmJiBnaXQgYnJhbmNoIC1NICR7dGhpcy5wcm9wcy5oZWFkLm5hbWV9OyB9YCxcblxuICAgIF07XG5cbiAgfVxuXG4gIHByaXZhdGUgY2xvbmVJZk5lZWRlZCgpOiBzdHJpbmdbXSB7XG5cbiAgICByZXR1cm4gW1xuICAgICAgLy8gY2hlY2sgaWYgLmdpdCBleGlzdFxuICAgICAgJ2xzIC5naXQgJyArXG5cbiAgICAgIC8vIGFsbCBnb29kXG4gICAgICAnJiYgeyBlY2hvIFwiLmdpdCBkaXJlY3RvcnkgZXhpc3RzXCI7ICB9ICcgK1xuXG4gICAgICAvLyBjbG9uZSBpZiBpdCBkb2Vzbid0XG4gICAgICBgfHwgeyBlY2hvIFwiLmdpdCBkaXJlY3RvcnkgZG9lc25vdCBleGlzdCAtIGNsb25pbmcuLi5cIiAmJiBnaXQgaW5pdCAuICYmIGdpdCByZW1vdGUgYWRkIG9yaWdpbiBnaXRAZ2l0aHViLmNvbToke3RoaXMucHJvcHMucmVwby5vd25lcn0vJHt0aGlzLnByb3BzLnJlcG8ucmVwb30uZ2l0ICYmIGdpdCBmZXRjaCAmJiBnaXQgcmVzZXQgLS1oYXJkIG9yaWdpbi8ke3RoaXMuYmFzZUJyYW5jaH0gJiYgZ2l0IGJyYW5jaCAtTSAke3RoaXMuYmFzZUJyYW5jaH0gJiYgZ2l0IGNsZWFuIC1mcWR4OyB9YCxcblxuICAgIF07XG5cbiAgfVxuXG4gIHByaXZhdGUgcnVuQ29tbWFuZHMoKTogc3RyaW5nIHtcblxuICAgIGNvbnN0IHVzZXJDb21tYW5kcyA9IHRoaXMucHJvcHMuY29tbWFuZHMgPz8gW107XG4gICAgY29uc3QgZXhwb3J0cyA9IE9iamVjdC5lbnRyaWVzKHRoaXMuZXhwb3J0cykubWFwKGVudHJ5ID0+IGBleHBvcnQgJHtlbnRyeVswXX09JCgke2VudHJ5WzFdfSlgKTtcblxuICAgIHJldHVybiBbXG5cbiAgICAgIC4uLnVzZXJDb21tYW5kcyxcblxuICAgICAgLy8gZXhwb3J0cyBzaG91bGQgYmUgZXhlY3V0ZWQgaW1tZWRpYXRlbHkgYWZ0ZXIgdGhlIHVzZXIgY29tbWFuZHMgKG5vdCBiZWZvcmUpXG4gICAgICAvLyBiZWNhdXNlIHRoZXkgbWlnaHQgbmVlZCBhY2Nlc3MgdG8gYXJ0aWZhY3RzIHByb2R1Y2VkIGJ5IHRoZW0gKGUuZyB2ZXJzaW9uIGZpbGUpLlxuICAgICAgLi4uZXhwb3J0cyxcblxuICAgICAgJ2VjaG8gRmluaXNoZWQgcnVubmluZyB1c2VyIGNvbW1hbmRzJyxcbiAgICBdLmpvaW4oJyAmJiAnKTtcblxuICB9XG5cbiAgcHJpdmF0ZSBjb25maWd1cmVTc2hBY2Nlc3MoKTogc3RyaW5nW10ge1xuXG4gICAgcmV0dXJuIFtcbiAgICAgICdhd3Mgc2VjcmV0c21hbmFnZXIgZ2V0LXNlY3JldC12YWx1ZSAnXG4gICAgICAgICsgYC0tc2VjcmV0LWlkIFwiJHt0aGlzLnByb3BzLnJlcG8uc3NoS2V5U2VjcmV0LnNlY3JldEFybn1cIiBgXG4gICAgICAgICsgJy0tb3V0cHV0PXRleHQgLS1xdWVyeT1TZWNyZXRTdHJpbmcgPiB+Ly5zc2gvaWRfcnNhJyxcbiAgICAgICdta2RpciAtcCB+Ly5zc2gnLFxuICAgICAgJ2NobW9kIDA2MDAgfi8uc3NoL2lkX3JzYSB+Ly5zc2gvY29uZmlnJyxcbiAgICAgICdzc2gta2V5c2NhbiAtdCByc2EgZ2l0aHViLmNvbSA+PiB+Ly5zc2gva25vd25faG9zdHMnLFxuICAgIF07XG5cbiAgfVxuXG4gIHByaXZhdGUgcHVzaEhlYWQoKTogc3RyaW5nW10ge1xuICAgIC8vIFdlIHdpbGwgZG8gbm90aGluZyBhbmQgc2V0IGBTS0lQPXRydWVgIGlmIHRoZSBoZWFkIHJlZiBpcyBhbiBhbmNlc3RvciBvZiB0aGUgYmFzZSBicmFuY2ggKG5vIFBSIGNvdWxkIGJlIGNyZWF0ZWQpXG4gICAgcmV0dXJuIFtcbiAgICAgIGBnaXQgbWVyZ2UtYmFzZSAtLWlzLWFuY2VzdG9yICR7dGhpcy5wcm9wcy5oZWFkLm5hbWV9IG9yaWdpbi8ke3RoaXMuYmFzZUJyYW5jaH1gXG4gICAgICAgICsgYCAmJiB7IGVjaG8gXCJTa2lwcGluZzogJHt0aGlzLnByb3BzLmhlYWQubmFtZX0gaXMgYW4gYW5jZXN0b3Igb2Ygb3JpZ2luLyR7dGhpcy5iYXNlQnJhbmNofVwiOyBleHBvcnQgU0tJUD10cnVlOyB9YFxuICAgICAgICArIGAgfHwgeyBlY2hvIFwiUHVzaGluZzogJHt0aGlzLnByb3BzLmhlYWQubmFtZX0gaXMgYWhlYWQgb2Ygb3JpZ2luLyR7dGhpcy5iYXNlQnJhbmNofVwiOyBleHBvcnQgU0tJUD1mYWxzZTsgfWAsXG4gICAgICBgZ2l0IHJlbW90ZSBhZGQgb3JpZ2luX3NzaCAke3RoaXMucHJvcHMucmVwby5yZXBvc2l0b3J5VXJsU3NofWAsXG4gICAgICAvLyBOZWVkIGAtLWF0b21pY2AsIG90aGVyd2lzZSBgZ2l0IHB1c2hgIG1pZ2h0IHN1Y2Nlc3NmdWxseSBwdXNoIHRoZSB0YWdzIGJ1dCBub3QgdG8gYG1haW5gLlxuICAgICAgYGdpdCBwdXNoIC0tYXRvbWljIC0tZm9sbG93LXRhZ3Mgb3JpZ2luX3NzaCAke3RoaXMucHJvcHMuaGVhZC5uYW1lfToke3RoaXMucHJvcHMuaGVhZC5uYW1lfWAsXG4gICAgXTtcbiAgfVxuXG4gIHByaXZhdGUgc2tpcElmT3BlblBycyhsYWJlbHM6IHN0cmluZ1tdKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGZpbHRlcnMgPSBbXG4gICAgICBgcmVwbzoke3RoaXMucHJvcHMucmVwby5vd25lcn0vJHt0aGlzLnByb3BzLnJlcG8ucmVwb31gLFxuICAgICAgJ2lzOnByJyxcbiAgICAgICdpczpvcGVuJyxcbiAgICAgIC4uLmxhYmVscy5tYXAobCA9PiBgbGFiZWw6JHtsfWApLFxuICAgIF07XG5cbiAgICByZXR1cm4gW1xuICAgICAgYCR7dGhpcy5naXRodWJDdXJsR2V0KGAvc2VhcmNoL2lzc3Vlcz9xPSR7ZW5jb2RlVVJJQ29tcG9uZW50KGZpbHRlcnMuam9pbignICcpKX1gLCAnLW8gc2VhcmNoLmpzb24nKX1gLFxuICAgICAgJ25vZGUgLWUgXFwncHJvY2Vzcy5leGl0Q29kZSA9IHJlcXVpcmUoXCIuL3NlYXJjaC5qc29uXCIpLnRvdGFsX2NvdW50XFwnJ1xuICAgICAgICArIGAgfHwgeyBlY2hvIFwiRm91bmQgb3BlbiBQUnMgd2l0aCBsYWJlbCAke2xhYmVsc30sIHNraXBwaW5nIFBSLlwiOyBleHBvcnQgU0tJUD10cnVlOyB9YCxcbiAgICBdO1xuICB9XG5cblxuICBwcml2YXRlIGNyZWF0ZVB1bGxSZXF1ZXN0KCk6IHN0cmluZ1tdIHtcblxuICAgIGNvbnN0IGhlYWQgPSB0aGlzLnByb3BzLmhlYWQubmFtZTtcbiAgICBjb25zdCBiYXNlID0gdGhpcy5iYXNlQnJhbmNoO1xuXG4gICAgaWYgKGhlYWQgPT09IGJhc2UpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgSGVhZCBicmFuY2ggKFwiJHtiYXNlfVwiKSBpcyB0aGUgc2FtZSBhcyB0aGUgYmFzZSBicmFuY2ggKFwiJHtoZWFkfVwiKWApO1xuICAgIH1cblxuICAgIGNvbnN0IHByb3BzID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCB0aXRsZSA9IHByb3BzLnRpdGxlID8/IGBNZXJnZSAke2hlYWR9IHRvICR7YmFzZX1gO1xuICAgIGNvbnN0IGJvZHkgPSB0aGlzLnByb3BzLmJvZHkgPz8gJyc7XG5cbiAgICBjb25zdCBjcmVhdGVSZXF1ZXN0ID0geyB0aXRsZSwgYmFzZSwgaGVhZCB9O1xuXG4gICAgY29uc3QgY29tbWFuZHMgPSBbXTtcblxuICAgIC8vIGNyZWF0ZSB0aGUgUFJcbiAgICBjb21tYW5kcy5wdXNoKGAke3RoaXMuZ2l0aHViQ3VybCgnL3B1bGxzJywgJy1YIFBPU1QgLW8gcHIuanNvbicsIGNyZWF0ZVJlcXVlc3QpfSAmJiBleHBvcnQgUFJfTlVNQkVSPSQobm9kZSAtcCAncmVxdWlyZShcIi4vcHIuanNvblwiKS5udW1iZXInKWApO1xuXG4gICAgLy8gdXBkYXRlIHRoZSBib2R5XG4gICAgY29tbWFuZHMucHVzaCh0aGlzLmdpdGh1YkN1cmwoJy9wdWxscy8kUFJfTlVNQkVSJywgJy1YIFBBVENIJywgeyBib2R5OiBib2R5IH0pKTtcblxuICAgIGlmICh0aGlzLnByb3BzLmxhYmVscyAmJiB0aGlzLnByb3BzLmxhYmVscy5sZW5ndGggPiAwKSB7XG4gICAgLy8gYXBwbHkgbGFiZWxzLlxuICAgICAgY29tbWFuZHMucHVzaCh0aGlzLmdpdGh1YkN1cmwoJy9pc3N1ZXMvJFBSX05VTUJFUi9sYWJlbHMnLCAnLVggUE9TVCcsIHsgbGFiZWxzOiB0aGlzLnByb3BzLmxhYmVscyB9KSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbW1hbmRzO1xuXG4gIH1cblxuICBwcml2YXRlIGdpdGh1YkN1cmwodXJpOiBzdHJpbmcsIGNvbW1hbmQ6IHN0cmluZywgcmVxdWVzdDogYW55KTogc3RyaW5nIHtcbiAgICByZXR1cm4gW1xuICAgICAgJ2N1cmwgLS1mYWlsJyxcbiAgICAgIGNvbW1hbmQsXG4gICAgICAnLS1oZWFkZXIgXCJBdXRob3JpemF0aW9uOiB0b2tlbiAkR0lUSFVCX1RPS0VOXCInLFxuICAgICAgJy0taGVhZGVyIFwiQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9qc29uXCInLFxuICAgICAgYC1kICR7SlNPTi5zdHJpbmdpZnkoSlNPTi5zdHJpbmdpZnkocmVxdWVzdCkpfWAsXG4gICAgICBgaHR0cHM6Ly9hcGkuZ2l0aHViLmNvbS9yZXBvcy8ke3RoaXMucHJvcHMucmVwby5vd25lcn0vJHt0aGlzLnByb3BzLnJlcG8ucmVwb30ke3VyaX1gLFxuICAgIF0uam9pbignICcpO1xuICB9XG5cbiAgcHJpdmF0ZSBnaXRodWJDdXJsR2V0KHVyaTogc3RyaW5nLCBjb21tYW5kOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBbXG4gICAgICAnY3VybCAtLWZhaWwnLFxuICAgICAgY29tbWFuZCxcbiAgICAgICctLWhlYWRlciBcIkF1dGhvcml6YXRpb246IHRva2VuICRHSVRIVUJfVE9LRU5cIicsXG4gICAgICAnLS1oZWFkZXIgXCJDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL2pzb25cIicsXG4gICAgICBgJ2h0dHBzOi8vYXBpLmdpdGh1Yi5jb20ke3VyaX0nYCxcbiAgICBdLmpvaW4oJyAnKTtcbiAgfVxuXG59XG5cbiJdfQ==
|
|
223
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJwci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEscUNBTWlCO0FBQ2pCLDRDQUE2RTtBQUM3RSw0REFBOEM7QUEyTDlDOztHQUVHO0FBQ0gsTUFBYSxlQUFnQixTQUFRLG1CQUFTO0lBa0I1QyxZQUFZLE1BQWlCLEVBQUUsRUFBVSxFQUFFLEtBQTJCOztRQUNwRSxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWxCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBQSxNQUFBLEtBQUssQ0FBQyxJQUFJLDBDQUFFLElBQUksbUNBQUksUUFBUSxDQUFDO1FBQy9DLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBQSxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sbUNBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUN2RCxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQUEsS0FBSyxDQUFDLE9BQU8sbUNBQUksRUFBRSxDQUFDO1FBRW5DLEtBQUssTUFBTSxFQUFFLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDMUMsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFO2dCQUNoRixNQUFNLElBQUksS0FBSyxDQUFDLGdCQUFnQixJQUFJLENBQUMsVUFBVSxxQ0FBcUMsRUFBRSxFQUFFLENBQUMsQ0FBQzthQUMzRjtTQUNGO1FBRUQsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDN0MsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFX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QUUsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ3ZHO1FBRUQsT0FBTyxRQUFRLENBQUM7SUFFbEIsQ0FBQztJQUVPLFVBQVUsQ0FBQyxHQUFXLEVBQUUsT0FBZSxFQUFFLE9BQVk7UUFDM0QsT0FBTztZQUNMLGFBQWE7WUFDYixPQUFPO1lBQ1AsK0NBQStDO1lBQy9DLDJDQUEyQztZQUMzQyxNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFO1lBQy9DLGdDQUFnQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsRUFBRTtTQUN0RixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNkLENBQUM7SUFFTyxhQUFhLENBQUMsR0FBVyxFQUFFLE9BQWU7UUFDaEQsT0FBTztZQUNMLGFBQWE7WUFDYixPQUFPO1lBQ1AsK0NBQStDO1lBQy9DLDJDQUEyQztZQUMzQywwQkFBMEIsR0FBRyxHQUFHO1NBQ2pDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2QsQ0FBQztDQUVGO0FBNVFELDBDQTRRQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbnN0cnVjdCwgRHVyYXRpb24sXG4gIGF3c19jbG91ZHdhdGNoIGFzIGNsb3Vkd2F0Y2gsXG4gIGF3c19jb2RlYnVpbGQgYXMgY2J1aWxkLFxuICBhd3NfZXZlbnRzIGFzIGV2ZW50cyxcbiAgYXdzX2V2ZW50c190YXJnZXRzIGFzIGV2ZW50c190YXJnZXRzLFxufSBmcm9tICdtb25vY2RrJztcbmltcG9ydCB7IEJ1aWxkRW52aXJvbm1lbnRQcm9wcywgY3JlYXRlQnVpbGRFbnZpcm9ubWVudCB9IGZyb20gJy4uL2J1aWxkLWVudic7XG5pbXBvcnQgKiBhcyBwZXJtaXNzaW9ucyBmcm9tICcuLi9wZXJtaXNzaW9ucyc7XG5pbXBvcnQgeyBXcml0YWJsZUdpdEh1YlJlcG8gfSBmcm9tICcuLi9yZXBvJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBjcmVhdGluZyBhIFB1bGwgUmVxdWVzdCBKb2IuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0b1B1bGxSZXF1ZXN0T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgYmFzZSBicmFuY2ggb2YgdGhlIFBSLlxuICAgKlxuICAgKiBAZGVmYXVsdCAnbWFzdGVyJ1xuICAgKi9cbiAgYmFzZT86IEJhc2U7XG5cbiAgLyoqXG4gICAqIFRydWUgaWYgeW91IG9ubHkgd2FudCB0byBwdXNoIHRoZSBoZWFkIGJyYW5jaCB3aXRob3V0IGNyZWF0aW5nIGEgUFIuXG4gICAqIFVzZWZ1bCB3aGVuIHVzZWQgYWxvbmcgd2l0aCAnY29tbWl0cycgdG8gZXhlY3V0ZSBhIGNvbW1pdC1hbmQtcHVzaCBhdXRvbWF0aWNhbGx5LlxuICAgKlxuICAgKiAvLyBUT0RPOiBDb25zaWRlciBtb3ZpbmcgdGhpcyBmdW5jdGlvbmFsaXR5IHRvIGEgc2VwYXJhdGUgY29uc3RydWN0LlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgcHVzaE9ubHk/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaXRsZSBvZiB0aGUgUFIuXG4gICAqXG4gICAqIEBkZWZhdWx0IGBNZXJnZSAke2hlYWR9IHRvICR7YmFzZX1gXG4gICAqL1xuICB0aXRsZT86IHN0cmluZztcblxuICAvKipcbiAgICogQm9keSB0aGUgUFIuIE5vdGUgdGhhdCB0aGUgYm9keSBpcyB1cGRhdGVkIHBvc3QgUFIgY3JlYXRpb24sXG4gICAqIHRoaXMgbWVhbnMgeW91IGNhbiB1c2UgdGhlICRQUl9OVU1CRVIgZW52IHZhcmlhYmxlIHRvIHJlZmVyIHRvIHRoZSBQUiBpdHNlbGYuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gYm9keS5cbiAgICovXG4gIGJvZHk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExhYmVscyBhcHBsaWVkIHRvIHRoZSBQUi5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBsYWJlbHMuXG4gICAqL1xuICBsYWJlbHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQnVpbGQgZW52aXJvbm1lbnQgZm9yIHRoZSBDb2RlQnVpbGQgam9iLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIGJ1aWxkPzogQnVpbGRFbnZpcm9ubWVudFByb3BzO1xuXG4gIC8qKlxuICAgKiBHaXQgY2xvbmUgZGVwdGguXG4gICAqXG4gICAqIEBkZWZhdWx0IDAgKGNsb25lcyB0aGUgZW50aXJlIHJlcG9zaXRvcnkgcmV2aXNpb25zKVxuICAgKi9cbiAgY2xvbmVEZXB0aD86IG51bWJlcjtcblxuICAvKipcbiAgICogS2V5IHZhbHVlIHBhaXJzIG9mIHZhcmlhYmxlcyB0byBleHBvcnQuIFRoZXNlIHZhcmlhYmxlcyB3aWxsIGJlIGF2YWlsYWJsZSBmb3IgZHluYW1pYyBldmFsdWF0aW9uIGluIGFueVxuICAgKiBzdWJzZXF1ZW50IGNvbW1hbmQuXG4gICAqXG4gICAqIEtleSAtIFZhcmlhYmxlIG5hbWUgKGUuZyBWRVJTSU9OKVxuICAgKiBWYWx1ZSAtIENvbW1hbmQgdGhhdCBldmFsdWF0ZXMgdG8gdGhlIHZhbHVlIG9mIHRoZSB2YXJpYWJsZSAoZS5nICdnaXQgZGVzY3JpYmUnKVxuICAgKlxuICAgKiBFeGFtcGxlOlxuICAgKlxuICAgKiBDb25maWd1cmUgYW4gZXhwb3J0IGluIHRoZSBmb3JtIG9mOlxuICAgKlxuICAgKiB7ICdWRVJTSU9OJzogJ2dpdCBkZXNjcmliZScgfVxuICAgKlxuICAgKiBVc2UgdGhlICRWRVJTSU9OIHZhcmlhYmxlIGluIHRoZSBQUiB0aXRsZTogJ2Nob3JlKHJlbGVhc2UpOiAkVkVSU0lPTidcbiAgICpcbiAgICogTm90ZSB0aGF0IHRoZXNlIGV4cG9ydHMgYXJlIGV4ZWN1dGVkIGFmdGVyIHRoZSBgY29tbWFuZHNgIGV4ZWN1dGlvbixcbiAgICogc28gdGhleSBoYXZlIGFjY2VzcyB0byB0aGUgYXJ0aWZhY3RzIHNhaWQgY29tbWFuZHMgcHJvZHVjZSAoZS5nIHZlcnNpb24gYnVtcCkuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gZXhwb3J0c1xuICAgKi9cbiAgZXhwb3J0cz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG5cbiAgLyoqXG4gICAqIFRoZSBzY2hlZHVsZSB0byBwcm9kdWNlIGFuIGF1dG9tYXRpYyBQUi5cbiAgICpcbiAgICogVGhlIGV4cHJlc3Npb24gY2FuIGJlIG9uZSBvZjpcbiAgICpcbiAgICogIC0gY3JvbiBleHByZXNzaW9uLCBzdWNoIGFzIFwiY3JvbigwIDEyICogKiA/ICopXCIgd2lsbCB0cmlnZ2VyIGV2ZXJ5IGRheSBhdCAxMnBtIFVUQ1xuICAgKiAgLSByYXRlIGV4cHJlc3Npb24sIHN1Y2ggYXMgXCJyYXRlKDEgZGF5KVwiIHdpbGwgdHJpZ2dlciBldmVyeSAyNCBob3VycyBmcm9tIHRoZSB0aW1lIG9mIGRlcGxveW1lbnRcbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uQ2xvdWRXYXRjaC9sYXRlc3QvZXZlbnRzL1NjaGVkdWxlZEV2ZW50cy5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gc2NoZWR1bGUsIHNob3VsZCBiZSB0cmlnZ2VyZWQgbWFudWFsbHkuXG4gICAqL1xuICBzY2hlZHVsZUV4cHJlc3Npb24/OiBzdHJpbmc7XG5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdXRvUHVsbFJlcXVlc3RQcm9wcyBleHRlbmRzIEF1dG9QdWxsUmVxdWVzdE9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgUFIgaW4uXG4gICAqL1xuICByZXBvOiBXcml0YWJsZUdpdEh1YlJlcG87XG5cbiAgLyoqXG4gICAqIEEgc2V0IG9mIGNvbW1hbmRzIHRvIHJ1biBhZ2FpbnN0IHRoZSBoZWFkIGJyYW5jaC5cbiAgICogVXNlZnVsIGZvciB0aGluZ3MgbGlrZSB2ZXJzaW9uIGJ1bXBzIG9yIGFueSBhdXRvLWdlbmVyYXRlZCBjb21taXRzLlxuICAgKlxuICAgKiBOb3RlIHRoYXQgeW91IGNhbm5vdCB1c2UgZXhwb3J0IGtleXMgaW4gdGhlc2UgY29tbWFuZHMgKFNlZSBgZXhwb3J0c2AgcHJvcGVydHkpXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gY29tbWFuZHMuXG4gICAqL1xuICBjb21tYW5kcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgaGVhZCBicmFuY2ggb2YgdGhlIFBSLlxuICAgKi9cbiAgaGVhZDogSGVhZDtcblxuICAvKipcbiAgICogVGhlIGV4aXQgY29kZSBvZiB0aGlzIGNvbW1hbmQgZGV0ZXJtaW5lcyB3aGV0aGVyIG9yIG5vdCB0byBwcm9jZWVkIHdpdGggdGhlXG4gICAqIFBSIGNyZWF0aW9uLiBJZiBjb25maWd1cmVkLCB0aGlzIGNvbW1hbmQgaXMgdGhlIGZpcnN0IG9uZSB0byBydW4sIGFuZCBpZiBpdCBmYWlscywgYWxsXG4gICAqIG90aGVyIGNvbW1hbmRzIHdpbGwgYmUgc2tpcHBlZC5cbiAgICpcbiAgICogVGhpcyBjb21tYW5kIGlzIHRoZSBmaXJzdCB0byBleGVjdXRlLCBhbmQgc2hvdWxkIG5vdCBhc3N1bWUgYW55IHByZS1leGlzdGluZyBzdGF0ZS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBjb25kaXRpb25cbiAgICovXG4gIGNvbmRpdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogSWYgYW55IFBSIGxhYmVsZWQgd2l0aCB0aGUgZ2l2ZW4gbGFiZWxzIGlzIHN0aWxsIG9wZW4sIG5vIG5ldyBQUiB3aWxsIGJlIGNyZWF0ZWRcbiAgICpcbiAgICogQGRlZmF1bHQgLSBkb24ndCBsb29rIGF0IG9wZW4gUFJzXG4gICAqL1xuICByZWFkb25seSBza2lwSWZPcGVuUHJzV2l0aExhYmVscz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBEZXNjcmlwdGlvbiBzdHJpbmcgZm9yIHRoZSBDb2RlQnVpbGQgcHJvamVjdFxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIGRlc2NyaXB0aW9uXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0RGVzY3JpcHRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgY29uZmlndXJpbmcgdGhlIGJhc2UgYnJhbmNoIG9mIHRoZSBQUi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCYXNlIHtcblxuICAvKipcbiAgICogQnJhbmNoIG5hbWUuXG4gICAqXG4gICAqIFRoaXMgYnJhbmNoIG11c3QgZXhpc3QuXG4gICAqXG4gICAqIEBkZWZhdWx0ICdtYXN0ZXInXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBoZWFkIGJyYW5jaCBvZiB0aGUgUFIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSGVhZCB7XG5cbiAgLyoqXG4gICAqIEJyYW5jaCBuYW1lLlxuICAgKlxuICAgKiBUaGlzIGJyYW5jaCB3aWxsIGJlIGNyZWF0ZWQgaWYgaXQgZG9lc24ndCBleGlzdC5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHNvdXJjZSBzaGEgb2YgdGhlIGJyYW5jaC5cbiAgICpcbiAgICogSWYgdGhlIGdpdmVuIGJyYW5jaCBhbHJlYWR5IGV4aXN0cywgdGhpcyBzaGEgd2lsbCBiZSBhdXRvLW1lcmdlZCBvbnRvIGl0LiBOb3RlIHRoYXQgaW4gc3VjaCBhIGNhc2UsXG4gICAqIHRoZSBQUiBjcmVhdGlvbiBtaWdodCBmYWlsIGluIGNhc2UgdGhlcmUgYXJlIG1lcmdlIGNvbmZsaWN0cy5cbiAgICpcbiAgICogSWYgdGhlIGdpdmVuIGJyYW5jaCBkb2Vzbid0IGV4aXN0LCB0aGUgbmV3bHkgY3JlYXRlZCBicmFuY2ggd2lsbCBiZSBiYXNlZCBvZiB0aGlzIGhhc2guXG4gICAqXG4gICAqIE5vdGUgdGhhdCBkeW5hbWljIGV4cG9ydHMgYXJlIG5vdCBhbGxvd2VkIGZvciB0aGlzIHByb3BlcnR5LlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHRoZSBiYXNlIGJyYW5jaCBvZiB0aGUgcHIuXG4gICAqL1xuICByZWFkb25seSBzb3VyY2U/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIENvZGVCdWlsZCBqb2IgdGhhdCwgd2hlbiB0cmlnZ2VyZWQsIG9wZW5zIGEgR2l0SHViIFB1bGwgUmVxdWVzdC5cbiAqL1xuZXhwb3J0IGNsYXNzIEF1dG9QdWxsUmVxdWVzdCBleHRlbmRzIENvbnN0cnVjdCB7XG5cbiAgLyoqXG4gICAqIENsb3VkV2F0Y2ggYWxhcm0gdGhhdCB3aWxsIGJlIHRyaWdnZXJlZCBpZiB0aGUgam9iIGZhaWxzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGFsYXJtOiBjbG91ZHdhdGNoLkFsYXJtO1xuXG4gIC8qKlxuICAgKiBUaGUgQ29kZUJ1aWxkIHByb2plY3QgdGhpcyBjb25zdHJ1Y3QgY3JlYXRlcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBwcm9qZWN0OiBjYnVpbGQuSVByb2plY3Q7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBwcm9wczogQXV0b1B1bGxSZXF1ZXN0UHJvcHM7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBiYXNlQnJhbmNoOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgaGVhZFNvdXJjZTogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IGV4cG9ydHM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG5cbiAgY29uc3RydWN0b3IocGFyZW50OiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBBdXRvUHVsbFJlcXVlc3RQcm9wcykge1xuICAgIHN1cGVyKHBhcmVudCwgaWQpO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgdGhpcy5iYXNlQnJhbmNoID0gcHJvcHMuYmFzZT8ubmFtZSA/PyAnbWFzdGVyJztcbiAgICB0aGlzLmhlYWRTb3VyY2UgPSBwcm9wcy5oZWFkLnNvdXJjZSA/PyB0aGlzLmJhc2VCcmFuY2g7XG4gICAgdGhpcy5leHBvcnRzID0gcHJvcHMuZXhwb3J0cyA/PyB7fTtcblxuICAgIGZvciAoY29uc3QgZXggb2YgT2JqZWN0LmtleXModGhpcy5leHBvcnRzKSkge1xuICAgICAgaWYgKHRoaXMuaGVhZFNvdXJjZS5pbmNsdWRlcyhgXFwkeyR7ZXh9fWApIHx8IHRoaXMuaGVhZFNvdXJjZS5pbmNsdWRlcyhgXFwkJHtleH1gKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGhlYWQgc291cmNlICgke3RoaXMuaGVhZFNvdXJjZX0pIGNhbm5vdCBjb250YWluIGR5bmFtaWMgZXhwb3J0czogJHtleH1gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBzc2hLZXlTZWNyZXQgPSBwcm9wcy5yZXBvLnNzaEtleVNlY3JldDtcbiAgICBjb25zdCBjb21taXRFbWFpbCA9IHByb3BzLnJlcG8uY29tbWl0RW1haWw7XG4gICAgY29uc3QgY29tbWl0VXNlcm5hbWUgPSBwcm9wcy5yZXBvLmNvbW1pdFVzZXJuYW1lO1xuICAgIGNvbnN0IGNsb25lRGVwdGggPSBwcm9wcy5jbG9uZURlcHRoID09PSB1bmRlZmluZWQgPyAwIDogcHJvcHMuY2xvbmVEZXB0aDtcblxuICAgIGNvbnN0IG5lZWRzR2l0SHViVG9rZW5TZWNyZXQgPSAhdGhpcy5wcm9wcy5wdXNoT25seSB8fCAhIXRoaXMucHJvcHMuc2tpcElmT3BlblByc1dpdGhMYWJlbHM7XG5cbiAgICBsZXQgY29tbWFuZHM6IHN0cmluZ1tdID0gW1xuXG4gICAgICAuLi50aGlzLmNvbmZpZ3VyZVNzaEFjY2VzcygpLFxuXG4gICAgICAvLyB3aGVuIHRoZSBqb2IgaXMgdHJpZ2dlcmVkIGFzIGEgQ29kZVBpcGVsaW5lIGFjdGlvbiwgdGhlIHdvcmtpbmcgZGlyZWN0b3J5XG4gICAgICAvLyBpcyBwb3B1bGF0ZWQgd2l0aCB0aGUgb3V0cHV0IGFydGlmYWN0IG9mIHRoZSBDb2RlQ29tbWl0U291cmNlQWN0aW9uLCB3aGljaCBkb2Vzbid0IGluY2x1ZGVcbiAgICAgIC8vIHRoZSAuZ2l0IGRpcmVjdG9yeSBpbiB0aGUgemlwcGVkIHMzIGFyY2hpdmUuIChZZWFoLCBmdW4gc3R1ZmYpLlxuICAgICAgLy8gc2VlIGh0dHBzOi8vaXRuZXh0LmlvL2hvdy10by1hY2Nlc3MtZ2l0LW1ldGFkYXRhLWluLWNvZGVidWlsZC13aGVuLXVzaW5nLWNvZGVwaXBlbGluZS1jb2RlY29tbWl0LWNlYWNmMmM1YzFkY1xuICAgICAgLi4udGhpcy5jbG9uZUlmTmVlZGVkKCksXG4gICAgXTtcblxuICAgIGlmICh0aGlzLnByb3BzLmNvbmRpdGlvbikge1xuICAgICAgLy8gdGhlcmUncyBubyB3YXkgdG8gc3RvcCBhIEJ1aWxkU3BlYyBleGVjdXRpb24gaGFsZndheSB0aHJvdWdoIHdpdGhvdXQgdGhyb3dpbmcgYW4gZXJyb3IuIEJlbGlldmUgbWUsIElcbiAgICAgIC8vIGNoZWNrZWQgdGhlIGNvZGUuIEluc3RlYWQgd2UgZGVmaW5lIGEgdmFyaWFibGUgdGhhdCB3ZSB3aWxsIHN3aXRjaCBhbGwgb3RoZXIgbGluZXMgb24vb2ZmLlxuICAgICAgY29tbWFuZHMucHVzaChgJHt0aGlzLnByb3BzLmNvbmRpdGlvbn0gYCArXG4gICAgICAnJiYgeyBlY2hvIFxcJ1NraXAgY29uZGl0aW9uIGlzIG1ldCwgc2tpcHBpbmcuLi5cXCcgJiYgZXhwb3J0IFNLSVA9dHJ1ZTsgfSAnICtcbiAgICAgICd8fCB7IGVjaG8gXFwnU2tpcCBjb25kaXRpb24gaXMgbm90IG1ldCwgY29udGludWluZy4uLlxcJyAmJiBleHBvcnQgU0tJUD1mYWxzZTsgfScpO1xuICAgIH1cblxuICAgIC8vIHJlYWQgdGhlIHRva2VuXG4gICAgaWYgKG5lZWRzR2l0SHViVG9rZW5TZWNyZXQpIHtcbiAgICAgIGNvbW1hbmRzLnB1c2goYGV4cG9ydCBHSVRIVUJfVE9LRU49JChhd3Mgc2VjcmV0c21hbmFnZXIgZ2V0LXNlY3JldC12YWx1ZSAtLXNlY3JldC1pZCBcIiR7dGhpcy5wcm9wcy5yZXBvLnRva2VuU2VjcmV0QXJufVwiIC0tb3V0cHV0PXRleHQgLS1xdWVyeT1TZWNyZXRTdHJpbmcpYCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucHJvcHMuc2tpcElmT3BlblByc1dpdGhMYWJlbHMpIHtcbiAgICAgIGNvbW1hbmRzLnB1c2goLi4udGhpcy5za2lwSWZPcGVuUHJzKHRoaXMucHJvcHMuc2tpcElmT3BlblByc1dpdGhMYWJlbHMpKTtcbiAgICB9XG5cbiAgICBjb21tYW5kcy5wdXNoKFxuICAgICAgLi4udGhpcy5jcmVhdGVIZWFkKCksXG4gICAgICAuLi50aGlzLnB1c2hIZWFkKCksXG4gICAgKTtcblxuICAgIGlmICghdGhpcy5wcm9wcy5wdXNoT25seSkge1xuICAgICAgY29tbWFuZHMucHVzaCguLi50aGlzLmNyZWF0ZVB1bGxSZXF1ZXN0KCkpO1xuICAgIH1cblxuICAgIC8vIHRvZ2dsZSBhbGwgY29tbWFuZHMgYWNjb3JkaW5nIHRvIHRoZSBTS0lQIHZhcmlhYmxlLlxuICAgIGNvbW1hbmRzID0gY29tbWFuZHMubWFwKChjb21tYW5kOiBzdHJpbmcpID0+IGAkU0tJUCB8fCB7ICR7Y29tbWFuZH0gOyB9YCk7XG5cbiAgICAvLyBpbnRpYWxseSBhbGwgY29tbWFuZHMgYXJlIGVuYWJsZWQuXG4gICAgY29tbWFuZHMudW5zaGlmdCgnZXhwb3J0IFNLSVA9ZmFsc2UnKTtcblxuICAgIHRoaXMucHJvamVjdCA9IG5ldyBjYnVpbGQuUHJvamVjdCh0aGlzLCAnUHVsbFJlcXVlc3QnLCB7XG4gICAgICBzb3VyY2U6IHByb3BzLnJlcG8uY3JlYXRlQnVpbGRTb3VyY2UodGhpcywgZmFsc2UsIHsgY2xvbmVEZXB0aCB9KSxcbiAgICAgIGRlc2NyaXB0aW9uOiBwcm9wcy5wcm9qZWN0RGVzY3JpcHRpb24sXG4gICAgICBlbnZpcm9ubWVudDogY3JlYXRlQnVpbGRFbnZpcm9ubWVudChwcm9wcy5idWlsZCA/PyB7fSksXG4gICAgICBidWlsZFNwZWM6IGNidWlsZC5CdWlsZFNwZWMuZnJvbU9iamVjdCh7XG4gICAgICAgIHZlcnNpb246ICcwLjInLFxuICAgICAgICBwaGFzZXM6IHtcbiAgICAgICAgICBwcmVfYnVpbGQ6IHtcbiAgICAgICAgICAgIGNvbW1hbmRzOiBbXG4gICAgICAgICAgICAgIGBnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIuZW1haWwgXCIke2NvbW1pdEVtYWlsfVwiYCxcbiAgICAgICAgICAgICAgYGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5uYW1lIFwiJHtjb21taXRVc2VybmFtZX1cImAsXG4gICAgICAgICAgICBdLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgYnVpbGQ6IHsgY29tbWFuZHMgfSxcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMucHJvamVjdC5yb2xlKSB7XG4gICAgICBwZXJtaXNzaW9ucy5ncmFudFNlY3JldFJlYWQoc3NoS2V5U2VjcmV0LCB0aGlzLnByb2plY3Qucm9sZSk7XG5cbiAgICAgIGlmIChuZWVkc0dpdEh1YlRva2VuU2VjcmV0KSB7XG4gICAgICAgIHBlcm1pc3Npb25zLmdyYW50U2VjcmV0UmVhZCh7IHNlY3JldEFybjogcHJvcHMucmVwby50b2tlblNlY3JldEFybiB9LCB0aGlzLnByb2plY3Qucm9sZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLnNjaGVkdWxlRXhwcmVzc2lvbikge1xuICAgICAgY29uc3Qgc2NoZWR1bGUgPSBldmVudHMuU2NoZWR1bGUuZXhwcmVzc2lvbihwcm9wcy5zY2hlZHVsZUV4cHJlc3Npb24pO1xuICAgICAgbmV3IGV2ZW50cy5SdWxlKHRoaXMsICdTY2hlZHVsZXInLCB7XG4gICAgICAgIGRlc2NyaXB0aW9uOiAnU2NoZWR1bGVzIGFuIGF1dG9tYXRpYyBQdWxsIFJlcXVlc3QgZm9yIHRoaXMgcmVwb3NpdG9yeScsXG4gICAgICAgIHNjaGVkdWxlLFxuICAgICAgICB0YXJnZXRzOiBbbmV3IGV2ZW50c190YXJnZXRzLkNvZGVCdWlsZFByb2plY3QodGhpcy5wcm9qZWN0KV0sXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICB0aGlzLmFsYXJtID0gdGhpcy5wcm9qZWN0Lm1ldHJpY0ZhaWxlZEJ1aWxkcyh7IHBlcmlvZDogRHVyYXRpb24uc2Vjb25kcygzMDApIH0pLmNyZWF0ZUFsYXJtKHRoaXMsICdBdXRvUHVsbFJlcXVlc3RGYWlsZWRBbGFybScsIHtcbiAgICAgIHRocmVzaG9sZDogMSxcbiAgICAgIGV2YWx1YXRpb25QZXJpb2RzOiAxLFxuICAgICAgdHJlYXRNaXNzaW5nRGF0YTogY2xvdWR3YXRjaC5UcmVhdE1pc3NpbmdEYXRhLklHTk9SRSxcbiAgICB9KTtcbiAgfVxuICBwcml2YXRlIGNyZWF0ZUhlYWQoKTogc3RyaW5nW10ge1xuXG4gICAgcmV0dXJuIFtcbiAgICAgIC8vIGNoZWNrIGlmIGhlYWQgYnJhbmNoIGV4aXN0c1xuICAgICAgYGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgb3JpZ2luLyR7dGhpcy5wcm9wcy5oZWFkLm5hbWV9IGAgK1xuXG4gICAgICAvLyBjaGVja291dCBhbmQgbWVyZ2UgaWYgaXQgZG9lcyAodGhpcyBtaWdodCBmYWlsIGR1ZSB0byBtZXJnZSBjb25mbGljdHMpXG4gICAgICBgJiYgeyBnaXQgY2hlY2tvdXQgJHt0aGlzLnByb3BzLmhlYWQubmFtZX0gJiYgZ2l0IG1lcmdlICR7dGhpcy5oZWFkU291cmNlfSAmJiAke3RoaXMucnVuQ29tbWFuZHMoKX07ICB9IGAgK1xuXG4gICAgICAvLyBjcmVhdGUgaWYgaXQgZG9lc250LiB3ZSBpbml0aWFsbHkgdXNlICd0ZW1wJyB0byBhbGxvdyB1c2luZyBleHBvcnRzIGluIHRoZSBoZWFkIGJyYW5jaCBuYW1lLiAoZS5nIGJ1bXAvJFZFUlNJT04pXG4gICAgICBgfHwgeyBnaXQgY2hlY2tvdXQgJHt0aGlzLmhlYWRTb3VyY2V9ICYmIGdpdCBjaGVja291dCAtYiB0ZW1wICYmICR7dGhpcy5ydW5Db21tYW5kcygpfSAmJiBnaXQgYnJhbmNoIC1NICR7dGhpcy5wcm9wcy5oZWFkLm5hbWV9OyB9YCxcblxuICAgIF07XG5cbiAgfVxuXG4gIHByaXZhdGUgY2xvbmVJZk5lZWRlZCgpOiBzdHJpbmdbXSB7XG5cbiAgICByZXR1cm4gW1xuICAgICAgLy8gY2hlY2sgaWYgLmdpdCBleGlzdFxuICAgICAgJ2xzIC5naXQgJyArXG5cbiAgICAgIC8vIGFsbCBnb29kXG4gICAgICAnJiYgeyBlY2hvIFwiLmdpdCBkaXJlY3RvcnkgZXhpc3RzXCI7ICB9ICcgK1xuXG4gICAgICAvLyBjbG9uZSBpZiBpdCBkb2Vzbid0XG4gICAgICBgfHwgeyBlY2hvIFwiLmdpdCBkaXJlY3RvcnkgZG9lc25vdCBleGlzdCAtIGNsb25pbmcuLi5cIiAmJiBnaXQgaW5pdCAuICYmIGdpdCByZW1vdGUgYWRkIG9yaWdpbiBnaXRAZ2l0aHViLmNvbToke3RoaXMucHJvcHMucmVwby5vd25lcn0vJHt0aGlzLnByb3BzLnJlcG8ucmVwb30uZ2l0ICYmIGdpdCBmZXRjaCAmJiBnaXQgcmVzZXQgLS1oYXJkIG9yaWdpbi8ke3RoaXMuYmFzZUJyYW5jaH0gJiYgZ2l0IGJyYW5jaCAtTSAke3RoaXMuYmFzZUJyYW5jaH0gJiYgZ2l0IGNsZWFuIC1mcWR4OyB9YCxcblxuICAgIF07XG5cbiAgfVxuXG4gIHByaXZhdGUgcnVuQ29tbWFuZHMoKTogc3RyaW5nIHtcblxuICAgIGNvbnN0IHVzZXJDb21tYW5kcyA9IHRoaXMucHJvcHMuY29tbWFuZHMgPz8gW107XG4gICAgY29uc3QgZXhwb3J0cyA9IE9iamVjdC5lbnRyaWVzKHRoaXMuZXhwb3J0cykubWFwKGVudHJ5ID0+IGBleHBvcnQgJHtlbnRyeVswXX09JCgke2VudHJ5WzFdfSlgKTtcblxuICAgIHJldHVybiBbXG5cbiAgICAgIC4uLnVzZXJDb21tYW5kcyxcblxuICAgICAgLy8gZXhwb3J0cyBzaG91bGQgYmUgZXhlY3V0ZWQgaW1tZWRpYXRlbHkgYWZ0ZXIgdGhlIHVzZXIgY29tbWFuZHMgKG5vdCBiZWZvcmUpXG4gICAgICAvLyBiZWNhdXNlIHRoZXkgbWlnaHQgbmVlZCBhY2Nlc3MgdG8gYXJ0aWZhY3RzIHByb2R1Y2VkIGJ5IHRoZW0gKGUuZyB2ZXJzaW9uIGZpbGUpLlxuICAgICAgLi4uZXhwb3J0cyxcblxuICAgICAgJ2VjaG8gRmluaXNoZWQgcnVubmluZyB1c2VyIGNvbW1hbmRzJyxcbiAgICBdLmpvaW4oJyAmJiAnKTtcblxuICB9XG5cbiAgcHJpdmF0ZSBjb25maWd1cmVTc2hBY2Nlc3MoKTogc3RyaW5nW10ge1xuXG4gICAgcmV0dXJuIFtcbiAgICAgICdhd3Mgc2VjcmV0c21hbmFnZXIgZ2V0LXNlY3JldC12YWx1ZSAnXG4gICAgICAgICsgYC0tc2VjcmV0LWlkIFwiJHt0aGlzLnByb3BzLnJlcG8uc3NoS2V5U2VjcmV0LnNlY3JldEFybn1cIiBgXG4gICAgICAgICsgJy0tb3V0cHV0PXRleHQgLS1xdWVyeT1TZWNyZXRTdHJpbmcgPiB+Ly5zc2gvaWRfcnNhJyxcbiAgICAgICdta2RpciAtcCB+Ly5zc2gnLFxuICAgICAgJ2NobW9kIDA2MDAgfi8uc3NoL2lkX3JzYSB+Ly5zc2gvY29uZmlnJyxcbiAgICAgICdzc2gta2V5c2NhbiAtdCByc2EgZ2l0aHViLmNvbSA+PiB+Ly5zc2gva25vd25faG9zdHMnLFxuICAgIF07XG5cbiAgfVxuXG4gIHByaXZhdGUgcHVzaEhlYWQoKTogc3RyaW5nW10ge1xuICAgIC8vIFdlIHdpbGwgZG8gbm90aGluZyBhbmQgc2V0IGBTS0lQPXRydWVgIGlmIHRoZSBoZWFkIHJlZiBpcyBhbiBhbmNlc3RvciBvZiB0aGUgYmFzZSBicmFuY2ggKG5vIFBSIGNvdWxkIGJlIGNyZWF0ZWQpXG4gICAgcmV0dXJuIFtcbiAgICAgIGBnaXQgbWVyZ2UtYmFzZSAtLWlzLWFuY2VzdG9yICR7dGhpcy5wcm9wcy5oZWFkLm5hbWV9IG9yaWdpbi8ke3RoaXMuYmFzZUJyYW5jaH1gXG4gICAgICAgICsgYCAmJiB7IGVjaG8gXCJTa2lwcGluZzogJHt0aGlzLnByb3BzLmhlYWQubmFtZX0gaXMgYW4gYW5jZXN0b3Igb2Ygb3JpZ2luLyR7dGhpcy5iYXNlQnJhbmNofVwiOyBleHBvcnQgU0tJUD10cnVlOyB9YFxuICAgICAgICArIGAgfHwgeyBlY2hvIFwiUHVzaGluZzogJHt0aGlzLnByb3BzLmhlYWQubmFtZX0gaXMgYWhlYWQgb2Ygb3JpZ2luLyR7dGhpcy5iYXNlQnJhbmNofVwiOyBleHBvcnQgU0tJUD1mYWxzZTsgfWAsXG4gICAgICBgZ2l0IHJlbW90ZSBhZGQgb3JpZ2luX3NzaCAke3RoaXMucHJvcHMucmVwby5yZXBvc2l0b3J5VXJsU3NofWAsXG4gICAgICAvLyBOZWVkIGAtLWF0b21pY2AsIG90aGVyd2lzZSBgZ2l0IHB1c2hgIG1pZ2h0IHN1Y2Nlc3NmdWxseSBwdXNoIHRoZSB0YWdzIGJ1dCBub3QgdG8gYG1haW5gLlxuICAgICAgYGdpdCBwdXNoIC0tYXRvbWljIC0tZm9sbG93LXRhZ3Mgb3JpZ2luX3NzaCAke3RoaXMucHJvcHMuaGVhZC5uYW1lfToke3RoaXMucHJvcHMuaGVhZC5uYW1lfWAsXG4gICAgXTtcbiAgfVxuXG4gIHByaXZhdGUgc2tpcElmT3BlblBycyhsYWJlbHM6IHN0cmluZ1tdKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGZpbHRlcnMgPSBbXG4gICAgICBgcmVwbzoke3RoaXMucHJvcHMucmVwby5vd25lcn0vJHt0aGlzLnByb3BzLnJlcG8ucmVwb31gLFxuICAgICAgJ2lzOnByJyxcbiAgICAgICdpczpvcGVuJyxcbiAgICAgIC4uLmxhYmVscy5tYXAobCA9PiBgbGFiZWw6JHtsfWApLFxuICAgIF07XG5cbiAgICByZXR1cm4gW1xuICAgICAgYCR7dGhpcy5naXRodWJDdXJsR2V0KGAvc2VhcmNoL2lzc3Vlcz9xPSR7ZW5jb2RlVVJJQ29tcG9uZW50KGZpbHRlcnMuam9pbignICcpKX1gLCAnLW8gc2VhcmNoLmpzb24nKX1gLFxuICAgICAgJ25vZGUgLWUgXFwncHJvY2Vzcy5leGl0Q29kZSA9IHJlcXVpcmUoXCIuL3NlYXJjaC5qc29uXCIpLnRvdGFsX2NvdW50XFwnJ1xuICAgICAgICArIGAgfHwgeyBlY2hvIFwiRm91bmQgb3BlbiBQUnMgd2l0aCBsYWJlbCAke2xhYmVsc30sIHNraXBwaW5nIFBSLlwiOyBleHBvcnQgU0tJUD10cnVlOyB9YCxcbiAgICBdO1xuICB9XG5cblxuICBwcml2YXRlIGNyZWF0ZVB1bGxSZXF1ZXN0KCk6IHN0cmluZ1tdIHtcblxuICAgIGNvbnN0IGhlYWQgPSB0aGlzLnByb3BzLmhlYWQubmFtZTtcbiAgICBjb25zdCBiYXNlID0gdGhpcy5iYXNlQnJhbmNoO1xuXG4gICAgaWYgKGhlYWQgPT09IGJhc2UpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgSGVhZCBicmFuY2ggKFwiJHtiYXNlfVwiKSBpcyB0aGUgc2FtZSBhcyB0aGUgYmFzZSBicmFuY2ggKFwiJHtoZWFkfVwiKWApO1xuICAgIH1cblxuICAgIGNvbnN0IHByb3BzID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCB0aXRsZSA9IHByb3BzLnRpdGxlID8/IGBNZXJnZSAke2hlYWR9IHRvICR7YmFzZX1gO1xuICAgIGNvbnN0IGJvZHkgPSB0aGlzLnByb3BzLmJvZHkgPz8gJyc7XG5cbiAgICBjb25zdCBjcmVhdGVSZXF1ZXN0ID0geyB0aXRsZSwgYmFzZSwgaGVhZCB9O1xuXG4gICAgY29uc3QgY29tbWFuZHMgPSBbXTtcblxuICAgIC8vIGNyZWF0ZSB0aGUgUFJcbiAgICBjb21tYW5kcy5wdXNoKGAke3RoaXMuZ2l0aHViQ3VybCgnL3B1bGxzJywgJy1YIFBPU1QgLW8gcHIuanNvbicsIGNyZWF0ZVJlcXVlc3QpfSAmJiBleHBvcnQgUFJfTlVNQkVSPSQobm9kZSAtcCAncmVxdWlyZShcIi4vcHIuanNvblwiKS5udW1iZXInKWApO1xuXG4gICAgLy8gdXBkYXRlIHRoZSBib2R5XG4gICAgY29tbWFuZHMucHVzaCh0aGlzLmdpdGh1YkN1cmwoJy9wdWxscy8kUFJfTlVNQkVSJywgJy1YIFBBVENIJywgeyBib2R5OiBib2R5IH0pKTtcblxuICAgIGlmICh0aGlzLnByb3BzLmxhYmVscyAmJiB0aGlzLnByb3BzLmxhYmVscy5sZW5ndGggPiAwKSB7XG4gICAgLy8gYXBwbHkgbGFiZWxzLlxuICAgICAgY29tbWFuZHMucHVzaCh0aGlzLmdpdGh1YkN1cmwoJy9pc3N1ZXMvJFBSX05VTUJFUi9sYWJlbHMnLCAnLVggUE9TVCcsIHsgbGFiZWxzOiB0aGlzLnByb3BzLmxhYmVscyB9KSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbW1hbmRzO1xuXG4gIH1cblxuICBwcml2YXRlIGdpdGh1YkN1cmwodXJpOiBzdHJpbmcsIGNvbW1hbmQ6IHN0cmluZywgcmVxdWVzdDogYW55KTogc3RyaW5nIHtcbiAgICByZXR1cm4gW1xuICAgICAgJ2N1cmwgLS1mYWlsJyxcbiAgICAgIGNvbW1hbmQsXG4gICAgICAnLS1oZWFkZXIgXCJBdXRob3JpemF0aW9uOiB0b2tlbiAkR0lUSFVCX1RPS0VOXCInLFxuICAgICAgJy0taGVhZGVyIFwiQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9qc29uXCInLFxuICAgICAgYC1kICR7SlNPTi5zdHJpbmdpZnkoSlNPTi5zdHJpbmdpZnkocmVxdWVzdCkpfWAsXG4gICAgICBgaHR0cHM6Ly9hcGkuZ2l0aHViLmNvbS9yZXBvcy8ke3RoaXMucHJvcHMucmVwby5vd25lcn0vJHt0aGlzLnByb3BzLnJlcG8ucmVwb30ke3VyaX1gLFxuICAgIF0uam9pbignICcpO1xuICB9XG5cbiAgcHJpdmF0ZSBnaXRodWJDdXJsR2V0KHVyaTogc3RyaW5nLCBjb21tYW5kOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBbXG4gICAgICAnY3VybCAtLWZhaWwnLFxuICAgICAgY29tbWFuZCxcbiAgICAgICctLWhlYWRlciBcIkF1dGhvcml6YXRpb246IHRva2VuICRHSVRIVUJfVE9LRU5cIicsXG4gICAgICAnLS1oZWFkZXIgXCJDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL2pzb25cIicsXG4gICAgICBgJ2h0dHBzOi8vYXBpLmdpdGh1Yi5jb20ke3VyaX0nYCxcbiAgICBdLmpvaW4oJyAnKTtcbiAgfVxuXG59XG5cbiJdfQ==
|
package/lib/pull-request/pr.ts
CHANGED
|
@@ -142,6 +142,13 @@ export interface AutoPullRequestProps extends AutoPullRequestOptions {
|
|
|
142
142
|
* @default - don't look at open PRs
|
|
143
143
|
*/
|
|
144
144
|
readonly skipIfOpenPrsWithLabels?: string[];
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* Description string for the CodeBuild project
|
|
148
|
+
*
|
|
149
|
+
* @default - No description
|
|
150
|
+
*/
|
|
151
|
+
readonly projectDescription?: string;
|
|
145
152
|
}
|
|
146
153
|
|
|
147
154
|
/**
|
|
@@ -274,6 +281,7 @@ export class AutoPullRequest extends Construct {
|
|
|
274
281
|
|
|
275
282
|
this.project = new cbuild.Project(this, 'PullRequest', {
|
|
276
283
|
source: props.repo.createBuildSource(this, false, { cloneDepth }),
|
|
284
|
+
description: props.projectDescription,
|
|
277
285
|
environment: createBuildEnvironment(props.build ?? {}),
|
|
278
286
|
buildSpec: cbuild.BuildSpec.fromObject({
|
|
279
287
|
version: '0.2',
|
package/package.json
CHANGED
|
@@ -42,8 +42,8 @@
|
|
|
42
42
|
"@typescript-eslint/eslint-plugin": "^5",
|
|
43
43
|
"@typescript-eslint/parser": "^5",
|
|
44
44
|
"aws-cdk": "^1.139.0",
|
|
45
|
-
"aws-sdk": "^2.
|
|
46
|
-
"constructs": "^3.3.
|
|
45
|
+
"aws-sdk": "^2.1058.0",
|
|
46
|
+
"constructs": "^3.3.191",
|
|
47
47
|
"esbuild": "^0.14.11",
|
|
48
48
|
"eslint": "^8",
|
|
49
49
|
"eslint-import-resolver-node": "^0.3.6",
|
|
@@ -56,14 +56,14 @@
|
|
|
56
56
|
"monocdk": "^1.139.0",
|
|
57
57
|
"node-ical": "^0.14.1",
|
|
58
58
|
"npm-check-updates": "^12",
|
|
59
|
-
"projen": "^0.50.
|
|
59
|
+
"projen": "^0.50.33",
|
|
60
60
|
"rrule": "^2.6.8",
|
|
61
61
|
"standard-version": "^9",
|
|
62
|
-
"ts-jest": "^27.1.
|
|
62
|
+
"ts-jest": "^27.1.3",
|
|
63
63
|
"typescript": "~4.5.4"
|
|
64
64
|
},
|
|
65
65
|
"peerDependencies": {
|
|
66
|
-
"constructs": "^3.3.
|
|
66
|
+
"constructs": "^3.3.191",
|
|
67
67
|
"monocdk": "^1.139.0"
|
|
68
68
|
},
|
|
69
69
|
"dependencies": {
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
],
|
|
78
78
|
"main": "lib/index.js",
|
|
79
79
|
"license": "Apache-2.0",
|
|
80
|
-
"version": "13.
|
|
80
|
+
"version": "13.5.2",
|
|
81
81
|
"jest": {
|
|
82
82
|
"testMatch": [
|
|
83
83
|
"**/lib/__tests__/**/?(*.)+(spec|test).js?(x)"
|