cloudstructs 0.4.18 → 0.4.21
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/.jsii +3 -3
- package/assets/slack-app/provider.lambda/index.js +7 -2
- package/assets/slack-textract/detect.lambda/index.js +54 -49
- package/assets/toolkit-cleaner/clean-images.lambda/index.js +7 -1
- package/changelog.md +1 -6
- package/lib/codecommit-mirror/index.d.ts +14 -39
- package/lib/codecommit-mirror/index.js +10 -19
- package/lib/ecs-service-roller/index.d.ts +10 -30
- package/lib/ecs-service-roller/index.js +7 -18
- package/lib/email-receiver/receiver.d.ts +7 -23
- package/lib/email-receiver/receiver.js +4 -8
- package/lib/saml-identity-provider/index.d.ts +6 -17
- package/lib/saml-identity-provider/index.js +5 -11
- package/lib/slack-app/manifest.d.ts +52 -133
- package/lib/slack-app/manifest.js +15 -12
- package/lib/slack-app/slack-app.d.ts +21 -53
- package/lib/slack-app/slack-app.js +8 -20
- package/lib/slack-events/index.d.ts +6 -19
- package/lib/slack-events/index.js +3 -8
- package/lib/slack-textract/index.d.ts +3 -16
- package/lib/slack-textract/index.js +3 -8
- package/lib/state-machine-cr-provider/index.d.ts +7 -23
- package/lib/state-machine-cr-provider/index.js +3 -8
- package/lib/static-website/index.d.ts +14 -36
- package/lib/static-website/index.js +5 -12
- package/lib/toolkit-cleaner/clean-images.lambda.js +8 -2
- package/lib/toolkit-cleaner/index.d.ts +5 -18
- package/lib/toolkit-cleaner/index.js +2 -7
- package/lib/url-shortener/index.d.ts +9 -25
- package/lib/url-shortener/index.js +3 -8
- package/node_modules/@sindresorhus/is/dist/index.d.ts +9 -4
- package/node_modules/@sindresorhus/is/dist/index.js +9 -3
- package/node_modules/@sindresorhus/is/package.json +1 -1
- package/node_modules/@sindresorhus/is/readme.md +24 -4
- package/node_modules/@slack/logger/node_modules/@types/node/README.md +1 -1
- package/node_modules/@slack/logger/node_modules/@types/node/buffer.d.ts +92 -2
- package/node_modules/@slack/logger/node_modules/@types/node/package.json +2 -2
- package/node_modules/@slack/logger/node_modules/@types/node/process.d.ts +1 -1
- package/node_modules/@slack/logger/node_modules/@types/node/stream/web.d.ts +2 -1
- package/node_modules/@slack/logger/node_modules/@types/node/url.d.ts +10 -6
- package/node_modules/@slack/web-api/node_modules/@types/node/README.md +1 -1
- package/node_modules/@slack/web-api/node_modules/@types/node/buffer.d.ts +92 -2
- package/node_modules/@slack/web-api/node_modules/@types/node/package.json +2 -2
- package/node_modules/@slack/web-api/node_modules/@types/node/process.d.ts +1 -1
- package/node_modules/@slack/web-api/node_modules/@types/node/stream/web.d.ts +2 -1
- package/node_modules/@slack/web-api/node_modules/@types/node/url.d.ts +10 -6
- package/node_modules/@types/cacheable-request/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/cacheable-request/node_modules/@types/node/buffer.d.ts +92 -2
- package/node_modules/@types/cacheable-request/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/cacheable-request/node_modules/@types/node/process.d.ts +1 -1
- package/node_modules/@types/cacheable-request/node_modules/@types/node/stream/web.d.ts +2 -1
- package/node_modules/@types/cacheable-request/node_modules/@types/node/url.d.ts +10 -6
- package/node_modules/@types/is-stream/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/is-stream/node_modules/@types/node/buffer.d.ts +92 -2
- package/node_modules/@types/is-stream/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/is-stream/node_modules/@types/node/process.d.ts +1 -1
- package/node_modules/@types/is-stream/node_modules/@types/node/stream/web.d.ts +2 -1
- package/node_modules/@types/is-stream/node_modules/@types/node/url.d.ts +10 -6
- package/node_modules/@types/keyv/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/keyv/node_modules/@types/node/buffer.d.ts +92 -2
- package/node_modules/@types/keyv/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/keyv/node_modules/@types/node/process.d.ts +1 -1
- package/node_modules/@types/keyv/node_modules/@types/node/stream/web.d.ts +2 -1
- package/node_modules/@types/keyv/node_modules/@types/node/url.d.ts +10 -6
- package/node_modules/@types/responselike/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/responselike/node_modules/@types/node/buffer.d.ts +92 -2
- package/node_modules/@types/responselike/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/responselike/node_modules/@types/node/process.d.ts +1 -1
- package/node_modules/@types/responselike/node_modules/@types/node/stream/web.d.ts +2 -1
- package/node_modules/@types/responselike/node_modules/@types/node/url.d.ts +10 -6
- package/node_modules/follow-redirects/index.js +82 -77
- package/node_modules/follow-redirects/package.json +1 -1
- package/node_modules/keyv/.nyc_output/{adb04494-7d0a-443f-9130-94b19c3fa19c.json → 5d6b8dd1-67cf-42ee-8492-c8ae62ce826c.json} +0 -0
- package/node_modules/keyv/.nyc_output/{17c338d1-cd21-4d2f-9d97-398f18a945cf.json → ce27532e-5888-46d4-ae10-5a71058d3f0c.json} +0 -0
- package/node_modules/keyv/.nyc_output/processinfo/5d6b8dd1-67cf-42ee-8492-c8ae62ce826c.json +1 -0
- package/node_modules/keyv/.nyc_output/processinfo/ce27532e-5888-46d4-ae10-5a71058d3f0c.json +1 -0
- package/node_modules/keyv/.nyc_output/processinfo/index.json +1 -1
- package/node_modules/keyv/package.json +7 -7
- package/node_modules/keyv/test/testdb.sqlite +0 -0
- package/package.json +7 -7
- package/releasetag.txt +1 -1
- package/version.txt +1 -1
- package/node_modules/keyv/.nyc_output/67b1f344-0eec-41a3-a665-c824c346e898.json +0 -1
- package/node_modules/keyv/.nyc_output/processinfo/17c338d1-cd21-4d2f-9d97-398f18a945cf.json +0 -1
- package/node_modules/keyv/.nyc_output/processinfo/67b1f344-0eec-41a3-a665-c824c346e898.json +0 -1
- package/node_modules/keyv/.nyc_output/processinfo/adb04494-7d0a-443f-9130-94b19c3fa19c.json +0 -1
|
@@ -6,27 +6,33 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
|
6
6
|
const nodeUrl = require("url");
|
|
7
7
|
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
8
8
|
/**
|
|
9
|
-
* Type of shortcuts
|
|
9
|
+
* Type of shortcuts
|
|
10
10
|
*
|
|
11
11
|
* @see https://api.slack.com/interactivity/shortcuts
|
|
12
|
-
* @stability stable
|
|
13
12
|
*/
|
|
14
13
|
var SlackAppManifestShortcutType;
|
|
15
14
|
(function (SlackAppManifestShortcutType) {
|
|
15
|
+
/**
|
|
16
|
+
* Message shortcuts are shown to users in the context menus of messages within Slack
|
|
17
|
+
*
|
|
18
|
+
* @see https://api.slack.com/interactivity/shortcuts/using#message_shortcuts
|
|
19
|
+
*/
|
|
16
20
|
SlackAppManifestShortcutType["MESSAGE"] = "message";
|
|
21
|
+
/**
|
|
22
|
+
* Global shortcuts are available to users via the shortcuts button in the composer,
|
|
23
|
+
* and when using search in Slack
|
|
24
|
+
*
|
|
25
|
+
* @see https://api.slack.com/interactivity/shortcuts/using#global_shortcuts
|
|
26
|
+
*/
|
|
17
27
|
SlackAppManifestShortcutType["GLOBAL"] = "global";
|
|
18
28
|
})(SlackAppManifestShortcutType = exports.SlackAppManifestShortcutType || (exports.SlackAppManifestShortcutType = {}));
|
|
19
29
|
;
|
|
20
30
|
/**
|
|
21
|
-
* A Slack app manifest
|
|
31
|
+
* A Slack app manifest
|
|
22
32
|
*
|
|
23
33
|
* @see https://api.slack.com/reference/manifests
|
|
24
|
-
* @stability stable
|
|
25
34
|
*/
|
|
26
35
|
class SlackAppManifest {
|
|
27
|
-
/**
|
|
28
|
-
* @stability stable
|
|
29
|
-
*/
|
|
30
36
|
constructor(props) {
|
|
31
37
|
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
32
38
|
this.props = props;
|
|
@@ -65,9 +71,6 @@ class SlackAppManifest {
|
|
|
65
71
|
validateItems('bot scopes', 255, (_p = props.oauthConfig) === null || _p === void 0 ? void 0 : _p.botScopes);
|
|
66
72
|
validateItems('user scopes', 255, (_q = props.oauthConfig) === null || _q === void 0 ? void 0 : _q.userScopes);
|
|
67
73
|
}
|
|
68
|
-
/**
|
|
69
|
-
* @stability stable
|
|
70
|
-
*/
|
|
71
74
|
render(construct) {
|
|
72
75
|
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
|
|
73
76
|
const schema = {
|
|
@@ -142,7 +145,7 @@ class SlackAppManifest {
|
|
|
142
145
|
}
|
|
143
146
|
exports.SlackAppManifest = SlackAppManifest;
|
|
144
147
|
_a = JSII_RTTI_SYMBOL_1;
|
|
145
|
-
SlackAppManifest[_a] = { fqn: "cloudstructs.SlackAppManifest", version: "0.4.
|
|
148
|
+
SlackAppManifest[_a] = { fqn: "cloudstructs.SlackAppManifest", version: "0.4.21" };
|
|
146
149
|
function prefixWith(prefix, string) {
|
|
147
150
|
if (!string) {
|
|
148
151
|
return undefined;
|
|
@@ -195,4 +198,4 @@ function removeUndefined(obj) {
|
|
|
195
198
|
.reduce((a, [k, v]) => (v == null ? a : (a[k] = v, a)), {});
|
|
196
199
|
return Object.keys(ret).length !== 0 ? ret : undefined;
|
|
197
200
|
}
|
|
198
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuaWZlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2xhY2stYXBwL21hbmlmZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0JBQStCO0FBQy9CLDZDQUEyQzs7Ozs7OztBQTJJM0MsSUFBWSw0QkFNWDtBQU5ELFdBQVksNEJBQTRCO0lBRXRDLG1EQUFtQixDQUFBO0lBR25CLGlEQUFpQixDQUFBO0FBQ25CLENBQUMsRUFOVyw0QkFBNEIsR0FBNUIsb0NBQTRCLEtBQTVCLG9DQUE0QixRQU12QztBQTJCQSxDQUFDOzs7Ozs7O0FBZ0JGLE1BQWEsZ0JBQWdCOzs7O0lBQzNCLFlBQTZCLEtBQTRCOztRQUE1QixVQUFLLEdBQUwsS0FBSyxDQUF1QjtRQUN2RCxjQUFjLENBQUMsVUFBVSxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0MsY0FBYyxDQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRSxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDMUQsY0FBYyxDQUFDLHNCQUFzQixFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDcEUsYUFBYSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUVyQyxXQUFXLE9BQUMsS0FBSyxDQUFDLGtCQUFrQiwwQ0FBRSxVQUFVLENBQUMsQ0FBQztRQUNsRCxhQUFhLENBQUMsWUFBWSxFQUFFLEdBQUcsUUFBRSxLQUFLLENBQUMsa0JBQWtCLDBDQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3RFLGFBQWEsQ0FBQyxjQUFjLEVBQUUsR0FBRyxRQUFFLEtBQUssQ0FBQyxrQkFBa0IsMENBQUUsVUFBVSxDQUFDLENBQUM7UUFFekUsV0FBVyxPQUFDLEtBQUssQ0FBQyxhQUFhLDBDQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQzdDLFdBQVcsT0FBQyxLQUFLLENBQUMsYUFBYSwwQ0FBRSxxQkFBcUIsQ0FBQyxDQUFD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QUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDL0QsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzdCLE9BQU8sR0FBRyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0tBQzNDO0lBRUQsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7U0FDNUIsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDekUsTUFBTSxDQUFDLENBQUMsQ0FBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDakUsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0FBQ3pELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBub2RlVXJsIGZyb20gJ3VybCc7XG5pbXBvcnQgeyBTdGFjaywgVG9rZW4gfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBJQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0UHJvcHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBsb25nRGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYmFja2dyb3VuZENvbG9yPzogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBtYWpvclZlcnNpb24/OiBudW1iZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbWlub3JWZXJzaW9uPzogbnVtYmVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBhbGxvd2VkSXBBZGRyZXNzUmFuZ2VzPzogc3RyaW5nW107XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGV2ZW50U3Vic2NyaXB0aW9ucz86IFNsYWNrQXBwTWFuaWZlc3RFdmVudFN1YnNjcmlwdGlvbnM7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGludGVyYWN0aXZpdHk/OiBTbGFja0FwcE1hbmlmZXN0SW50ZXJhY3Rpdml0eTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBvcmdEZXBsb3k/OiBib29sZWFuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHNvY2tldE1vZGU/OiBib29sZWFuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYXBwSG9tZT86IFNsYWNrQXBwTWFuaWZlc3RBcHBIb21lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBib3RVc2VyPzogU2xhY2trQXBwTWFuaWZlc3RCb3RVc2VyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHNob3J0Y3V0cz86IFNsYWNrQXBwTWFuaWZlc3RTaG9ydGN1dFtdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHNsYXNoQ29tbWFuZHM/OiBTbGFja0FwcE1hbmlmZXN0U2xhc2hDb21tYW5kW107XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHdvcmtmbG93U3RlcHM/OiBTbGFja0FwcE1hbmlmZXN0V29ya2Zsb3dTdGVwW107XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgdW5mdXJsRG9tYWlucz86IHN0cmluZ1tdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgb2F1dGhDb25maWc/OiBTbGFja0FwcE1hbmlmZXN0T2F1dGhDb25maWc7XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0U2V0dGluZ3Mge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYWxsb3dlZElwQWRkcmVzc1Jhbmdlcz86IHN0cmluZ1tdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBldmVudFN1YnNjcmlwdGlvbnM/OiBTbGFja0FwcE1hbmlmZXN0RXZlbnRTdWJzY3JpcHRpb25zO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBpbnRlcmFjdGl2aXR5PzogU2xhY2tBcHBNYW5pZmVzdEludGVyYWN0aXZpdHk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgb3JnRGVwbG95PzogYm9vbGVhbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBzb2NrZXRNb2RlPzogYm9vbGVhbjtcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0RXZlbnRTdWJzY3JpcHRpb25zIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHJlcXVlc3RVcmw6IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBib3RFdmVudHM/OiBzdHJpbmdbXTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHVzZXJFdmVudHM/OiBzdHJpbmdbXTtcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0SW50ZXJhY3Rpdml0eSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgZW5hYmxlZD86IGJvb2xlYW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcmVxdWVzdFVybD86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbWVzc2FnZU1lbnVPcHRpb25zVXJsPzogc3RyaW5nO1xufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0QXBwSG9tZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgaG9tZVRhYj86IGJvb2xlYW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBtZXNzYWdlc1RhYj86IGJvb2xlYW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IG1lc3NhZ2VzVGFiUmVhZE9ubHk/OiBib29sZWFuO1xufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgaW50ZXJmYWNlIFNsYWNra0FwcE1hbmlmZXN0Qm90VXNlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgZGlzcGxheU5hbWU6IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBhbHdheXNPbmxpbmU/OiBib29sZWFuO1xufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBpbnRlcmZhY2UgU2xhY2tBcHBNYW5pZmVzdFNob3J0Y3V0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgdHlwZTogU2xhY2tBcHBNYW5pZmVzdFNob3J0Y3V0VHlwZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNhbGxiYWNrSWQ6IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgZGVzY3JpcHRpb246IHN0cmluZztcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGVudW0gU2xhY2tBcHBNYW5pZmVzdFNob3J0Y3V0VHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIE1FU1NBR0UgPSAnbWVzc2FnZScsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIEdMT0JBTCA9ICdnbG9iYWwnLFxufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgaW50ZXJmYWNlIFNsYWNrQXBwTWFuaWZlc3RTbGFzaENvbW1hbmQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNvbW1hbmQ6IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uOiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHVybD86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHVzYWdlSGludD86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHNob3VsZEVzY2FwZT86IGJvb2xlYW47XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBpbnRlcmZhY2UgU2xhY2tBcHBNYW5pZmVzdFdvcmtmbG93U3RlcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNhbGxiYWNrSWQ6IHN0cmluZztcbn07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0T2F1dGhDb25maWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcmVkaXJlY3RVcmxzPzogc3RyaW5nW107XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBib3RTY29wZXM/OiBzdHJpbmdbXTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSB1c2VyU2NvcGVzPzogc3RyaW5nW107XG59XG5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgY2xhc3MgU2xhY2tBcHBNYW5pZmVzdCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcHJvcHM6IFNsYWNrQXBwTWFuaWZlc3RQcm9wcykge1xuICAgIHZhbGlkYXRlTGVuZ3RoKCdhcHAgbmFtZScsIDM1LCBwcm9wcy5uYW1lKTtcbiAgICB2YWxpZGF0ZUxlbmd0aCgnYXBwIGRlc2NyaXB0aW9uJywgMTQwLCBwcm9wcy5kZXNjcmlwdGlvbik7XG4gICAgdmFsaWRhdGVMZW5ndGgoJ2FwcCBsb25nIGRlc2NyaXB0aW9uJywgNDAwMCwgcHJvcHMubG9uZ0Rlc2NyaXB0aW9uKTtcbiAgICB2YWxpZGF0ZUNvbG9yKHByb3BzLmJhY2tncm91bmRDb2xvcik7XG5cbiAgICB2YWxpZGF0ZVVybChwcm9wcy5ldmVudFN1YnNjcmlwdGlvbnM/LnJlcXVlc3RVcmwpO1xuICAgIHZhbGlkYXRlSXRlbXMoJ2JvdCBldmVudHMnLCAxMDAsIHByb3BzLmV2ZW50U3Vic2NyaXB0aW9ucz8uYm90RXZlbnRzKTtcbiAgICB2YWxpZGF0ZUl0ZW1zKCd1c2VycyBldmVudHMnLCAxMDAsIHByb3BzLmV2ZW50U3Vic2NyaXB0aW9ucz8udXNlckV2ZW50cyk7XG5cbiAgICB2YWxpZGF0ZVVybChwcm9wcy5pbnRlcmFjdGl2aXR5Py5yZXF1ZXN0VXJsKTtcbiAgICB2YWxpZGF0ZVVybChwcm9wcy5pbnRlcmFjdGl2aXR5Py5tZXNzYWdlTWVudU9wdGlvbnNVcmwpO1xuICAgIHZhbGlkYXRlTGVuZ3RoKCdib3QgZGlzcGxheSBuYW1lJywgODAsIHByb3BzLmJvdFVzZXI/LmRpc3BsYXlOYW1lKTtcblxuICAgIHZhbGlkYXRlSXRlbXMoJ3Nob3J0Y3V0cycsIDUsIHByb3BzLnNob3J0Y3V0cyk7XG4gICAgcHJvcHMuc2hvcnRjdXRzPy5mb3JFYWNoKChzaG9ydGN1dCkgPT4ge1xuICAgICAgdmFsaWRhdGVMZW5ndGgoJ3Nob3J0Y3V0IGNhbGxiYWNrIElEJywgMjU1LCBzaG9ydGN1dC5jYWxsYmFja0lkKTtcbiAgICAgIHZhbGlkYXRlTGVuZ3RoKCdzaG9ydGN1dCBkZXNjcmlwdGlvbicsIDE1MCwgc2hvcnRjdXQuZGVzY3JpcHRpb24pO1xuICAgIH0pO1xuXG4gICAgdmFsaWRhdGVJdGVtcygnc2xhc2ggY29tbWFuZHMnLCA1LCBwcm9wcy5zbGFzaENvbW1hbmRzKTtcbiAgICBwcm9wcy5zbGFzaENvbW1hbmRzPy5mb3JFYWNoKChjb21tYW5kKSA9PiB7XG4gICAgICB2YWxpZGF0ZUxlbmd0aCgnc2xhc2ggY29tbWFuZCcsIDMyLCBjb21tYW5kLmNvbW1hbmQpO1xuICAgICAgdmFsaWRhdGVMZW5ndGgoJ3NsYXNoIGNvbW1hbmQgZGVzY3JpcHRpb24nLCAyMDAwLCBjb21tYW5kLmRlc2NyaXB0aW9uKSxcbiAgICAgIHZhbGlkYXRlVXJsKGNvbW1hbmQudXJsKTtcbiAgICAgIHZhbGlkYXRlTGVuZ3RoKCdzbGFzaCBjb21tYW5kIHVzZSBoaW50JywgMTAwMCwgY29tbWFuZC51c2FnZUhpbnQpO1xuICAgIH0pO1xuXG4gICAgdmFsaWRhdGVJdGVtcygnd29ya2Zsb3cgc3RlcHMnLCAxMCwgcHJvcHMud29ya2Zsb3dTdGVwcyk7XG4gICAgcHJvcHMud29ya2Zsb3dTdGVwcz8uZm9yRWFjaCgoc3RlcCkgPT4ge1xuICAgICAgdmFsaWRhdGVMZW5ndGgoJ3dvcmtmbG93IHN0ZXAgbmFtZScsIDUwLCBzdGVwLm5hbWUpO1xuICAgICAgdmFsaWRhdGVMZW5ndGgoJ3dvcmtmbG93IHN0ZXAgY2FsbGJhY2sgSUQnLCA1MCwgc3RlcC5jYWxsYmFja0lkKTtcbiAgICB9KTtcblxuICAgIHZhbGlkYXRlSXRlbXMoJ3VuZnVybHMgZG9tYWlucycsIDUsIHByb3BzLnVuZnVybERvbWFpbnMpO1xuXG4gICAgdmFsaWRhdGVJdGVtcygnT0F1dGggcmVkaXJlY3QgVVJMcycsIDEwMDAsIHByb3BzLm9hdXRoQ29uZmlnPy5yZWRpcmVjdFVybHMpO1xuICAgIHByb3BzLm9hdXRoQ29uZmlnPy5yZWRpcmVjdFVybHM/LmZvckVhY2goKHVybCkgPT4ge1xuICAgICAgdmFsaWRhdGVVcmwodXJsLCBmYWxzZSk7XG4gICAgfSk7XG4gICAgdmFsaWRhdGVJdGVtcygnYm90IHNjb3BlcycsIDI1NSwgcHJvcHMub2F1dGhDb25maWc/LmJvdFNjb3Blcyk7XG4gICAgdmFsaWRhdGVJdGVtcygndXNlciBzY29wZXMnLCAyNTUsIHByb3BzLm9hdXRoQ29uZmlnPy51c2VyU2NvcGVzKTtcbiAgfVxuXG4gIHB1YmxpYyByZW5kZXIoY29uc3RydWN0OiBJQ29uc3RydWN0KTogc3RyaW5nIHtcbiAgICBjb25zdCBzY2hlbWE6IFNsYWNrQXBwTWFuaWZlc3RTY2hlbWEgPSB7XG4gICAgICBfbWV0YWRhdGE6IHtcbiAgICAgICAgbWFqb3JfdmVyc2lvbjogdGhpcy5wcm9wcy5tYWpvclZlcnNpb24sXG4gICAgICAgIG1pbm9yX3ZlcnNpb246IHRoaXMucHJvcHMubWlub3JWZXJzaW9uLFxuICAgICAgfSxcbiAgICAgIGRpc3BsYXlfaW5mb3JtYXRpb246IHtcbiAgICAgICAgbmFtZTogdGhpcy5wcm9wcy5uYW1lLFxuICAgICAgICBkZXNjcmlwdGlvbjogdGhpcy5wcm9wcy5kZXNjcmlwdGlvbixcbiAgICAgICAgbG9uZ19kZXNjcmlwdGlvbjogdGhpcy5wcm9wcy5sb25nRGVzY3JpcHRpb24sXG4gICAgICAgIGJhY2tncm91bmRfY29sb3I6IHByZWZpeFdpdGgoJyMnLCB0aGlzLnByb3BzLmJhY2tncm91bmRDb2xvcik/LnRvTG93ZXJDYXNlKCksXG4gICAgICB9LFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgYWxsb3dlZF9pcF9hZGRyZXNzX3JhbmdlczogdGhpcy5wcm9wcy5hbGxvd2VkSXBBZGRyZXNzUmFuZ2VzLFxuICAgICAgICBldmVudF9zdWJzY3JpcHRpb25zOiB7XG4gICAgICAgICAgcmVxdWVzdF91cmw6IHRoaXMucHJvcHMuZXZlbnRTdWJzY3JpcHRpb25zPy5yZXF1ZXN0VXJsLFxuICAgICAgICAgIGJvdF9ldmVudHM6IHRoaXMucHJvcHMuZXZlbnRTdWJzY3JpcHRpb25zPy5ib3RFdmVudHMsXG4gICAgICAgICAgdXNlcl9ldmVudHM6IHRoaXMucHJvcHMuZXZlbnRTdWJzY3JpcHRpb25zPy51c2VyRXZlbnRzLFxuICAgICAgICB9LFxuICAgICAgICBpbnRlcmFjdGl2aXR5OiB0aGlzLnByb3BzLmludGVyYWN0aXZpdHlcbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgIGlzX2VuYWJsZWQ6IHRoaXMucHJvcHMuaW50ZXJhY3Rpdml0eT8uZW5hYmxlZCA/PyB0cnVlLFxuICAgICAgICAgICAgcmVxdWVzdF91cmw6IHRoaXMucHJvcHMuaW50ZXJhY3Rpdml0eT8ucmVxdWVzdFVybCxcbiAgICAgICAgICAgIG1lc3NhZ2VfbWVudV9vcHRpb25zX3VybDogdGhpcy5wcm9wcy5pbnRlcmFjdGl2aXR5Py5tZXNzYWdlTWVudU9wdGlvbnNVcmwsXG4gICAgICAgICAgfVxuICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgICBvcmdfZGVwbG95X2VuYWJsZWQ6IHRoaXMucHJvcHMub3JnRGVwbG95LFxuICAgICAgICBzb2NrZXRfbW9kZV9lbmFibGVkOiB0aGlzLnByb3BzLnNvY2tldE1vZGUsXG4gICAgICB9LFxuICAgICAgZmVhdHVyZXM6IHtcbiAgICAgICAgYXBwX2hvbWU6IHtcbiAgICAgICAgICBob21lX3RhYl9lbmFibGVkOiB0aGlzLnByb3BzLmFwcEhvbWU/LmhvbWVUYWIsXG4gICAgICAgICAgbWVzc2FnZXNfdGFiX2VuYWJsZWQ6IHRoaXMucHJvcHMuYXBwSG9tZT8ubWVzc2FnZXNUYWIsXG4gICAgICAgICAgbWVzc2FnZXNfdGFiX3JlYWRfb25seV9lbmFibGVkOiB0aGlzLnByb3BzLmFwcEhvbWU/Lm1lc3NhZ2VzVGFiUmVhZE9ubHksXG4gICAgICAgIH0sXG4gICAgICAgIGJvdF91c2VyOiB0aGlzLnByb3BzLmJvdFVzZXJcbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgIGRpc3BsYXlfbmFtZTogdGhpcy5wcm9wcy5ib3RVc2VyPy5kaXNwbGF5TmFtZSxcbiAgICAgICAgICAgIGFsd2F5c19vbmxpbmU6IHRoaXMucHJvcHMuYm90VXNlcj8uYWx3YXlzT25saW5lLFxuICAgICAgICAgIH1cbiAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgICAgc2hvcnRjdXRzOiB0aGlzLnByb3BzLnNob3J0Y3V0cz8ubWFwKChzaG9ydGN1dCkgPT4gKHtcbiAgICAgICAgICBuYW1lOiBzaG9ydGN1dC5uYW1lLFxuICAgICAgICAgIHR5cGU6IHNob3J0Y3V0LnR5cGUsXG4gICAgICAgICAgY2FsbGJhY2tfaWQ6IHNob3J0Y3V0LmNhbGxiYWNrSWQsXG4gICAgICAgICAgZGVzY3JpcHRpb246IHNob3J0Y3V0LmRlc2NyaXB0aW9uLFxuICAgICAgICB9KSksXG4gICAgICAgIHNsYXNoX2NvbW1hbmRzOiB0aGlzLnByb3BzLnNsYXNoQ29tbWFuZHM/Lm1hcCgoY29tbWFuZCkgPT4gKHtcbiAgICAgICAgICBjb21tYW5kOiBwcmVmaXhXaXRoKCcvJywgY29tbWFuZC5jb21tYW5kKSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogY29tbWFuZC5kZXNjcmlwdGlvbixcbiAgICAgICAgICB1cmw6IGNvbW1hbmQudXJsLFxuICAgICAgICAgIHVzYWdlX2hpbnQ6IGNvbW1hbmQudXNhZ2VIaW50LFxuICAgICAgICAgIHNob3VsZF9lc2NhcGU6IGNvbW1hbmQuc2hvdWxkRXNjYXBlLFxuICAgICAgICB9KSksXG4gICAgICAgIHdvcmtmbG93X3N0ZXBzOiB0aGlzLnByb3BzLndvcmtmbG93U3RlcHM/Lm1hcCgoc3RlcCkgPT4gKHtcbiAgICAgICAgICBuYW1lOiBzdGVwLm5hbWUsXG4gICAgICAgICAgY2FsbGJhY2tfaWQ6IHN0ZXAuY2FsbGJhY2tJZCxcbiAgICAgICAgfSkpLFxuICAgICAgICB1bmZ1cmxfZG9tYWluczogdGhpcy5wcm9wcy51bmZ1cmxEb21haW5zLFxuICAgICAgfSxcbiAgICAgIG9hdXRoX2NvbmZpZzoge1xuICAgICAgICByZWRpcmVjdF91cmxzOiB0aGlzLnByb3BzLm9hdXRoQ29uZmlnPy5yZWRpcmVjdFVybHMsXG4gICAgICAgIHNjb3Blczoge1xuICAgICAgICAgIGJvdDogdGhpcy5wcm9wcy5vYXV0aENvbmZpZz8uYm90U2NvcGVzLFxuICAgICAgICAgIHVzZXJzOiB0aGlzLnByb3BzLm9hdXRoQ29uZmlnPy51c2VyU2NvcGVzLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIFN0YWNrLm9mKGNvbnN0cnVjdCkudG9Kc29uU3RyaW5nKHJlbW92ZVVuZGVmaW5lZChzY2hlbWEpKTtcbiAgfVxufVxuXG5pbnRlcmZhY2UgU2xhY2tBcHBNYW5pZmVzdFNjaGVtYSB7XG4gIF9tZXRhZGF0YT86IHtcbiAgICBtYWpvcl92ZXJzaW9uPzogbnVtYmVyO1xuICAgIG1pbm9yX3ZlcnNpb24/OiBudW1iZXI7XG4gIH07XG4gIGRpc3BsYXlfaW5mb3JtYXRpb246IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gICAgbG9uZ19kZXNjcmlwdGlvbj86IHN0cmluZztcbiAgICBiYWNrZ3JvdW5kX2NvbG9yPzogc3RyaW5nO1xuICB9O1xuICBzZXR0aW5ncz86IHtcbiAgICBhbGxvd2VkX2lwX2FkZHJlc3NfcmFuZ2VzPzogc3RyaW5nW107XG4gICAgZXZlbnRfc3Vic2NyaXB0aW9ucz86IHtcbiAgICAgIHJlcXVlc3RfdXJsPzogc3RyaW5nO1xuICAgICAgYm90X2V2ZW50cz86IHN0cmluZ1tdO1xuICAgICAgdXNlcl9ldmVudHM/OiBzdHJpbmdbXTtcbiAgICB9O1xuICAgIGludGVyYWN0aXZpdHk/OiB7XG4gICAgICBpc19lbmFibGVkOiBib29sZWFuO1xuICAgICAgcmVxdWVzdF91cmw/OiBzdHJpbmc7XG4gICAgICBtZXNzYWdlX21lbnVfb3B0aW9uc191cmw/OiBzdHJpbmc7XG4gICAgfTtcbiAgICBvcmdfZGVwbG95X2VuYWJsZWQ/OiBib29sZWFuO1xuICAgIHNvY2tldF9tb2RlX2VuYWJsZWQ/OiBib29sZWFuO1xuICB9O1xuICBmZWF0dXJlcz86IHtcbiAgICBhcHBfaG9tZT86IHtcbiAgICAgIGhvbWVfdGFiX2VuYWJsZWQ/OiBib29sZWFuO1xuICAgICAgbWVzc2FnZXNfdGFiX2VuYWJsZWQ/OiBib29sZWFuO1xuICAgICAgbWVzc2FnZXNfdGFiX3JlYWRfb25seV9lbmFibGVkPzogYm9vbGVhbjtcbiAgICB9O1xuICAgIGJvdF91c2VyPzoge1xuICAgICAgZGlzcGxheV9uYW1lOiBzdHJpbmc7XG4gICAgICBhbHdheXNfb25saW5lPzogYm9vbGVhbjtcbiAgICB9O1xuICAgIHNob3J0Y3V0cz86IHtcbiAgICAgIG5hbWU6IHN0cmluZztcbiAgICAgIHR5cGU6IHN0cmluZztcbiAgICAgIGNhbGxiYWNrX2lkOiBzdHJpbmc7XG4gICAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICAgIH1bXTtcbiAgICBzbGFzaF9jb21tYW5kcz86IHtcbiAgICAgIGNvbW1hbmQ6IHN0cmluZztcbiAgICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gICAgICB1cmw/OiBzdHJpbmc7XG4gICAgICB1c2FnZV9oaW50Pzogc3RyaW5nO1xuICAgICAgc2hvdWxkX2VzY2FwZT86IGJvb2xlYW47XG4gICAgfVtdO1xuICAgIHdvcmtmbG93X3N0ZXBzPzoge1xuICAgICAgbmFtZTogc3RyaW5nO1xuICAgICAgY2FsbGJhY2tfaWQ6IHN0cmluZztcbiAgICB9W107XG4gICAgdW5mdXJsX2RvbWFpbnM/OiBzdHJpbmdbXTtcbiAgfTtcbiAgb2F1dGhfY29uZmlnPzoge1xuICAgIHJlZGlyZWN0X3VybHM/OiBzdHJpbmdbXTtcbiAgICBzY29wZXM/OiB7XG4gICAgICBib3Q/OiBzdHJpbmdbXTtcbiAgICAgIHVzZXJzPzogc3RyaW5nW107XG4gICAgfTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gcHJlZml4V2l0aDxUIGV4dGVuZHMgc3RyaW5nIHwgdW5kZWZpbmVkPihwcmVmaXg6IHN0cmluZywgc3RyaW5nOiBUKTogVCB7XG4gIGlmICghc3RyaW5nKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZCBhcyBUO1xuICB9XG5cbiAgaWYgKHN0cmluZy5zdGFydHNXaXRoKHByZWZpeCkpIHtcbiAgICByZXR1cm4gc3RyaW5nO1xuICB9XG5cbiAgcmV0dXJuIGAke3ByZWZpeH0ke3N0cmluZ31gIGFzIFQ7XG59XG5cbmZ1bmN0aW9uIHZhbGlkYXRlTGVuZ3RoKGRlc2NyaXB0aW9uOiBzdHJpbmcsIG1heDogbnVtYmVyLCB4cz86IHN0cmluZyk6IHZvaWQge1xuICBpZiAoeHMgJiYgIVRva2VuLmlzVW5yZXNvbHZlZCh4cykgJiYgeHMubGVuZ3RoID4gbWF4KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBNYXhpbXVtIGxlbmd0aCBmb3IgJHtkZXNjcmlwdGlvbn0gaXMgJHttYXh9LCBnb3QgJHt4cy5sZW5ndGh9OiAke3hzfWApO1xuICB9XG59XG5cbmZ1bmN0aW9uIHZhbGlkYXRlSXRlbXM8VD4oZGVzY3JpcHRpb246IHN0cmluZywgbWF4OiBudW1iZXIsIHhzPzogVFtdKTogdm9pZCB7XG4gIGlmICh4cyAmJiAhVG9rZW4uaXNVbnJlc29sdmVkKHhzKSAmJiB4cy5sZW5ndGggPiBtYXgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIGZvciAke2Rlc2NyaXB0aW9ufSBpcyAke21heH0sIGdvdCAke3hzLmxlbmd0aH1gKTtcbiAgfVxufVxuXG5mdW5jdGlvbiB2YWxpZGF0ZUNvbG9yKGNvbG9yPzogc3RyaW5nKTogdm9pZCB7XG4gIGlmIChjb2xvciAmJiAhVG9rZW4uaXNVbnJlc29sdmVkKGNvbG9yKSAmJiAhL14jPyhbMC05YS1mQS1GXXszfXxbMC05YS1mQS1GXXs2fSkkLy50ZXN0KGNvbG9yKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBoZXggY29sb3I6ICR7Y29sb3J9YCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gdmFsaWRhdGVVcmwodXJsPzogc3RyaW5nLCBodHRwcyA9IHRydWUpOiB2b2lkIHtcbiAgaWYgKHVybCAmJiAhVG9rZW4uaXNVbnJlc29sdmVkKHVybCkpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcGFyc2VkID0gbmV3IG5vZGVVcmwuVVJMKHVybCk7XG4gICAgICBpZiAoaHR0cHMgJiYgcGFyc2VkLnByb3RvY29sICE9PSAnaHR0cHM6Jykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgcHJvdG9jb2wnKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgJHt1cmx9IGlzIG5vdCBhIHZhbGlkJHtodHRwcyA/ICcgSFRUUFMnIDogJyd9IHVybGApO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiByZW1vdmVVbmRlZmluZWQob2JqOiBhbnkpOiBhbnkge1xuICBpZiAodHlwZW9mIG9iaiA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gb2JqO1xuICB9XG5cbiAgaWYgKEFycmF5LmlzQXJyYXkob2JqKSkge1xuICAgIGNvbnN0IHJldCA9IG9ialxuICAgICAgLm1hcCh2ID0+ICh2ICYmIHR5cGVvZiB2ID09PSAnb2JqZWN0JykgPyByZW1vdmVVbmRlZmluZWQodikgOiB2KVxuICAgICAgLmZpbHRlcih2ID0+ICEodiA9PSBudWxsKSk7XG4gICAgcmV0dXJuIHJldC5sZW5ndGggIT09IDAgPyByZXQgOiB1bmRlZmluZWQ7XG4gIH1cblxuICBjb25zdCByZXQgPSBPYmplY3QuZW50cmllcyhvYmopXG4gICAgLm1hcCgoW2ssIHZdKSA9PiBbaywgdiAmJiB0eXBlb2YgdiA9PT0gJ29iamVjdCcgPyByZW1vdmVVbmRlZmluZWQodikgOiB2XSlcbiAgICAucmVkdWNlKChhOiBhbnksIFtrLCB2XSkgPT4gKHYgPT0gbnVsbCA/IGEgOiAoYVtrXT12LCBhKSksIHt9KTtcbiAgcmV0dXJuIE9iamVjdC5rZXlzKHJldCkubGVuZ3RoICE9PSAwID8gcmV0IDogdW5kZWZpbmVkO1xufVxuIl19
|
|
201
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuaWZlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2xhY2stYXBwL21hbmlmZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0JBQStCO0FBQy9CLDZDQUEyQztBQXNVM0M7Ozs7R0FJRztBQUNILElBQVksNEJBZVg7QUFmRCxXQUFZLDRCQUE0QjtJQUN0Qzs7OztPQUlHO0lBQ0gsbURBQW1CLENBQUE7SUFFbkI7Ozs7O09BS0c7SUFDSCxpREFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBZlcsNEJBQTRCLEdBQTVCLG9DQUE0QixLQUE1QixvQ0FBNEIsUUFldkM7QUErREEsQ0FBQztBQW1DRjs7OztHQUlHO0FBQ0gsTUFBYSxnQkFBZ0I7SUFDM0IsWUFBNkIsS0FBNEI7O1FBQTVCLFVBQUssR0FBTCxLQUFLLENBQXVCO1FBQ3ZELGNBQWMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQyxjQUFjLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMxRCxjQUFjLENBQUMsc0JBQXNCLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNwRSxhQUFhLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRXJDLFdBQVcsT0FBQyxLQUFLLENBQUMsa0JBQWtCLDBDQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQ2xELGFBQWEsQ0FBQyxZQUFZLEVBQUUsR0FBRyxRQUFFLEtBQUssQ0FBQyxrQkFBa0IsMENBQUUsU0FBUyxDQUFDLENBQUM7UUFDdEUsYUFBYSxDQUFDLGNBQWMsRUFBRSxHQUFHLFFBQUUsS0FBSyxDQUFDLGtCQUFrQiwwQ0FBRSxVQUFVLENBQUMsQ0FBQztRQUV6RSxXQUFXLE9BQUMsS0FBSyxDQUFDLGFBQWEsMENBQUUsVUFBVSxDQUFDLENBQUM7UUFDN0MsV0FBVyxPQUFDLEtBQUssQ0FBQyxhQUFhLDBDQUFFLHFCQUFxQixDQUFDLENBQUM7UUFDeEQsY0FBYyxDQUFDLGtCQUFrQixFQUFFLEVBQUUsUUFBRSxLQUFLLENBQUMsT0FBTywwQ0FBRSxXQUFXLENBQUMsQ0FBQztRQUVuRSxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0MsTUFBQSxLQUFLLENBQUMsU0FBUywwQ0FBRSxPQUFPLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNwQyxjQUFjLENBQUMsc0JBQXNCLEVBQUUsR0FBRyxFQUFFLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNqRSxjQUFjLENBQUMsc0JBQXNCLEVBQUUsR0FBRyxFQUFFLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNwRSxDQUFDLEVBQUU7UUFFSCxhQUFhLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN4RCxNQUFBLEtBQUssQ0FBQyxhQUFhLDBDQUFFLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ3ZDLGNBQWMsQ0FBQyxlQUFlLEVBQUUsRUFBRSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNyRCxjQUFjLENBQUMsMkJBQTJCLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUM7Z0JBQ3RFLFdBQVcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDekIsY0FBYyxDQUFDLHdCQUF3QixFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDcEUsQ0FBQyxFQUFFO1FBRUgsYUFBYSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDekQsTUFBQSxLQUFLLENBQUMsYUFBYSwwQ0FBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNwQyxjQUFjLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNwRCxjQUFjLENBQUMsMkJBQTJCLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNuRSxDQUFDLEVBQUU7UUFFSCxhQUFhLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUV6RCxhQUFhLENBQUMscUJBQXFCLEVBQUUsSUFBSSxRQUFFLEtBQUssQ0FBQyxXQUFXLDBDQUFFLFlBQVksQ0FBQyxDQUFDO1FBQzVFLFlBQUEsS0FBSyxDQUFDLFdBQVcsMENBQUUsWUFBWSwwQ0FBRSxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUMvQyxXQUFXLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzFCLENBQUMsRUFBRTtRQUNILGFBQWEsQ0FBQyxZQUFZLEVBQUUsR0FBRyxRQUFFLEtBQUssQ0FBQyxXQUFXLDBDQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQy9ELGFBQWEsQ0FBQyxhQUFhLEVBQUUsR0FBRyxRQUFFLEtBQUssQ0FBQyxXQUFXLDBDQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFTSxNQUFNLENBQUMsU0FBcUI7O1FBQ2pDLE1BQU0sTUFBTSxHQUEyQjtZQUNyQyxTQUFTLEVBQUU7Z0JBQ1QsYUFBYSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWTtnQkFDdEMsYUFBYSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWTthQUN2QztZQUNELG1CQUFtQixFQUFFO2dCQUNuQixJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJO2dCQUNyQixXQUFXLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXO2dCQUNuQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWU7Z0JBQzVDLGdCQUFnQixRQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsMENBQUUsV0FBVyxFQUFFO2FBQzdFO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLHlCQUF5QixFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsc0JBQXNCO2dCQUM1RCxtQkFBbUIsRUFBRTtvQkFDbkIsV0FBVyxRQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLDBDQUFFLFVBQVU7b0JBQ3RELFVBQVUsUUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQiwwQ0FBRSxTQUFTO29CQUNwRCxXQUFXLFFBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsMENBQUUsVUFBVTtpQkFDdkQ7Z0JBQ0QsYUFBYSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYTtvQkFDckMsQ0FBQyxDQUFDO3dCQUNBLFVBQVUsY0FBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsMENBQUUsT0FBTyxtQ0FBSSxJQUFJO3dCQUNyRCxXQUFXLFFBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLDBDQUFFLFVBQVU7d0JBQ2pELHdCQUF3QixRQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSwwQ0FBRSxxQkFBcUI7cUJBQzFFO29CQUNELENBQUMsQ0FBQyxTQUFTO2dCQUNiLGtCQUFrQixFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUztnQkFDeEMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVO2FBQzNDO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLFFBQVEsRUFBRTtvQkFDUixnQkFBZ0IsUUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sMENBQUUsT0FBTztvQkFDN0Msb0JBQW9CLFFBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLDBDQUFFLFdBQVc7b0JBQ3JELDhCQUE4QixRQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTywwQ0FBRSxtQkFBbUI7aUJBQ3hFO2dCQUNELFFBQVEsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU87b0JBQzFCLENBQUMsQ0FBQzt3QkFDQSxZQUFZLFFBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLDBDQUFFLFdBQVc7d0JBQzdDLGFBQWEsUUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sMENBQUUsWUFBWTtxQkFDaEQ7b0JBQ0QsQ0FBQyxDQUFDLFNBQVM7Z0JBQ2IsU0FBUyxRQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUywwQ0FBRSxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQ2xELElBQUksRUFBRSxRQUFRLENBQUMsSUFBSTtvQkFDbkIsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJO29CQUNuQixXQUFXLEVBQUUsUUFBUSxDQUFDLFVBQVU7b0JBQ2hDLFdBQVcsRUFBRSxRQUFRLENBQUMsV0FBVztpQkFDbEMsQ0FBQyxDQUFDO2dCQUNILGNBQWMsUUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsMENBQUUsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUMxRCxPQUFPLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDO29CQUN6QyxXQUFXLEVBQUUsT0FBTyxDQUFDLFdBQVc7b0JBQ2hDLEdBQUcsRUFBRSxPQUFPLENBQUMsR0FBRztvQkFDaEIsVUFBVSxFQUFFLE9BQU8sQ0FBQyxTQUFTO29CQUM3QixhQUFhLEVBQUUsT0FBTyxDQUFDLFlBQVk7aUJBQ3BDLENBQUMsQ0FBQztnQkFDSCxjQUFjLFFBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLDBDQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztvQkFDdkQsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO29CQUNmLFdBQVcsRUFBRSxJQUFJLENBQUMsVUFBVTtpQkFDN0IsQ0FBQyxDQUFDO2dCQUNILGNBQWMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWE7YUFDekM7WUFDRCxZQUFZLEVBQUU7Z0JBQ1osYUFBYSxRQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVywwQ0FBRSxZQUFZO2dCQUNuRCxNQUFNLEVBQUU7b0JBQ04sR0FBRyxRQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVywwQ0FBRSxTQUFTO29CQUN0QyxLQUFLLFFBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLDBDQUFFLFVBQVU7aUJBQzFDO2FBQ0Y7U0FDRixDQUFDO1FBRUYsT0FBTyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQzs7QUFuSEgsNENBb0hDOzs7QUFrRUQsU0FBUyxVQUFVLENBQStCLE1BQWMsRUFBRSxNQUFTO0lBQ3pFLElBQUksQ0FBQyxNQUFNLEVBQUU7UUFDWCxPQUFPLFNBQWMsQ0FBQztLQUN2QjtJQUVELElBQUksTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRTtRQUM3QixPQUFPLE1BQU0sQ0FBQztLQUNmO0lBRUQsT0FBTyxHQUFHLE1BQU0sR0FBRyxNQUFNLEVBQU8sQ0FBQztBQUNuQyxDQUFDO0FBRUQsU0FBUyxjQUFjLENBQUMsV0FBbUIsRUFBRSxHQUFXLEVBQUUsRUFBVztJQUNuRSxJQUFJLEVBQUUsSUFBSSxDQUFDLG1CQUFLLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFO1FBQ3BELE1BQU0sSUFBSSxLQUFLLENBQUMsc0JBQXNCLFdBQVcsT0FBTyxHQUFHLFNBQVMsRUFBRSxDQUFDLE1BQU0sS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0tBQ3pGO0FBQ0gsQ0FBQztBQUVELFNBQVMsYUFBYSxDQUFJLFdBQW1CLEVBQUUsR0FBVyxFQUFFLEVBQVE7SUFDbEUsSUFBSSxFQUFFLElBQUksQ0FBQyxtQkFBSyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxHQUFHLEdBQUcsRUFBRTtRQUNwRCxNQUFNLElBQUksS0FBSyxDQUFDLCtCQUErQixXQUFXLE9BQU8sR0FBRyxTQUFTLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0tBQzNGO0FBQ0gsQ0FBQztBQUVELFNBQVMsYUFBYSxDQUFDLEtBQWM7SUFDbkMsSUFBSSxLQUFLLElBQUksQ0FBQyxtQkFBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLHFDQUFxQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUM3RixNQUFNLElBQUksS0FBSyxDQUFDLHNCQUFzQixLQUFLLEVBQUUsQ0FBQyxDQUFDO0tBQ2hEO0FBQ0gsQ0FBQztBQUVELFNBQVMsV0FBVyxDQUFDLEdBQVksRUFBRSxLQUFLLEdBQUcsSUFBSTtJQUM3QyxJQUFJLEdBQUcsSUFBSSxDQUFDLG1CQUFLLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ25DLElBQUk7WUFDRixNQUFNLE1BQU0sR0FBRyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDcEMsSUFBSSxLQUFLLElBQUksTUFBTSxDQUFDLFFBQVEsS0FBSyxRQUFRLEVBQUU7Z0JBQ3pDLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQzthQUNyQztTQUNGO1FBQUMsT0FBTyxHQUFHLEVBQUU7WUFDWixNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsR0FBRyxrQkFBa0IsS0FBSyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7U0FDdEU7S0FDRjtBQUNILENBQUM7QUFFRCxTQUFTLGVBQWUsQ0FBQyxHQUFRO0lBQy9CLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFO1FBQzNCLE9BQU8sR0FBRyxDQUFDO0tBQ1o7SUFFRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDdEIsTUFBTSxHQUFHLEdBQUcsR0FBRzthQUNaLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMvRCxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDN0IsT0FBTyxHQUFHLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7S0FDM0M7SUFFRCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztTQUM1QixHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN6RSxNQUFNLENBQUMsQ0FBQyxDQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNqRSxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDekQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIG5vZGVVcmwgZnJvbSAndXJsJztcbmltcG9ydCB7IFN0YWNrLCBUb2tlbiB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IElDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIFNsYWNrIGFwcCBtYW5pZmVzdFxuICpcbiAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL3JlZmVyZW5jZS9tYW5pZmVzdHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0UHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGFwcC5cbiAgICpcbiAgICogTWF4aW11bSBsZW5ndGggaXMgMzUgY2hhcmFjdGVycy5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogQSBzaG9ydCBkZXNjcmlwdGlvbiBvZiB0aGUgYXBwIGZvciBkaXNwbGF5IHRvIHVzZXJzLlxuICAgKlxuICAgKiBNYXhpbXVtIGxlbmd0aCBpcyAxNDAgY2hhcmFjdGVycy5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBzaG9ydCBkZXNjcmlwdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgbG9uZ2VyIHZlcnNpb24gb2YgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBhcHAuXG4gICAqXG4gICAqIE1heGltdW0gbGVuZ3RoIGlzIDQwMDAgY2hhcmFjdGVycy5cbiAgICovXG4gIHJlYWRvbmx5IGxvbmdEZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogQSBoZXggY29sb3IgdmFsdWUgdGhhdCBzcGVjaWZpZXMgdGhlIGJhY2tncm91bmQgY29sb3IgdXNlZCBvbiBob3ZlcmNhcmRzXG4gICAqIHRoYXQgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIGFwcC5cbiAgICpcbiAgICogQ2FuIGJlIDMtZGlnaXQgKCMwMDApIG9yIDYtZGlnaXQgKCMwMDAwMDApIGhleCB2YWx1ZXMgd2l0aCBvciB3aXRob3V0ICNcbiAgICovXG4gIHJlYWRvbmx5IGJhY2tncm91bmRDb2xvcj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG1ham9yIHZlcnNpb24gb2YgdGhlIG1hbmlmZXN0IHNjaGVtYSB0byB0YXJnZXQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gZG8gbm90IHRhcmdldCBhIHNwZWNpZmljIG1ham9yIHZlcnNpb25cbiAgICovXG4gIHJlYWRvbmx5IG1ham9yVmVyc2lvbj86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIG1pbm9yIHZlcnNpb24gb2YgdGhlIG1hbmlmZXN0IHNjaGVtYSB0byB0YXJnZXRcbiAgICpcbiAgICogQGRlZmF1bHQgLSBkbyBub3QgdGFyZ2V0IGEgc3BlY2lmaWMgbWlub3IgdmVyc2lvblxuICAgKi9cbiAgcmVhZG9ubHkgbWlub3JWZXJzaW9uPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBBbiBhcnJheSBvZiBJUCBhZGRyZXNzZXMgdGhhdCBjb25mb3JtIHRvIHRoZSBBbGxvd2VkIElQIFJhbmdlcyBmZWF0dXJlXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2F1dGhlbnRpY2F0aW9uL2Jlc3QtcHJhY3RpY2VzI2lwX2FsbG93bGlzdGluZ1xuICAgKi9cbiAgcmVhZG9ubHkgYWxsb3dlZElwQWRkcmVzc1Jhbmdlcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBFdmVudHMgQVBJIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBhcHBcbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vZXZlbnRzLWFwaVxuICAgKi9cbiAgcmVhZG9ubHkgZXZlbnRTdWJzY3JpcHRpb25zPzogU2xhY2tBcHBNYW5pZmVzdEV2ZW50U3Vic2NyaXB0aW9ucztcblxuICAvKipcbiAgICogSW50ZXJhY3Rpdml0eSBjb25maWd1cmF0aW9uIGZvciB0aGUgYXBwXG4gICAqL1xuICByZWFkb25seSBpbnRlcmFjdGl2aXR5PzogU2xhY2tBcHBNYW5pZmVzdEludGVyYWN0aXZpdHk7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3JnLXdpZGUgZGVwbG95IGlzIGVuYWJsZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2VudGVycHJpc2UvYXBwc1xuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgb3JnRGVwbG95PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciBTb2NrZXQgTW9kZSBpcyBlbmFibGVkXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2FwaXMvY29ubmVjdGlvbnMvc29ja2V0XG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBzb2NrZXRNb2RlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQXBwIEhvbWUgY29uZmlndXJhdGlvblxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vYXBpLnNsYWNrLmNvbS9zdXJmYWNlcy90YWJzXG4gICAqL1xuICByZWFkb25seSBhcHBIb21lPzogU2xhY2tBcHBNYW5pZmVzdEFwcEhvbWU7XG5cbiAgLyoqXG4gICAqIEJvdCB1c2VyIGNvbmZpZ3VyYXRpb25cbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vYm90LXVzZXJzXG4gICAqL1xuICByZWFkb25seSBib3RVc2VyPzogU2xhY2trQXBwTWFuaWZlc3RCb3RVc2VyO1xuXG4gIC8qKlxuICAgKiBTaG9ydGN1dHMgY29uZmlndXJhdGlvbi5cbiAgICpcbiAgICogQSBtYXhpbXVtIG9mIDUgc2hvcnRjdXRzIGNhbiBiZSBpbmNsdWRlZC5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vaW50ZXJhY3Rpdml0eS9zaG9ydGN1dHNcbiAgICovXG4gIHJlYWRvbmx5IHNob3J0Y3V0cz86IFNsYWNrQXBwTWFuaWZlc3RTaG9ydGN1dFtdO1xuXG4gIC8qKlxuICAgKiBTbGFzaCBjb21tYW5kcyBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBBIG1heGltdW0gb2YgNSBzbGFzaCBjb21tYW5kcyBjYW4gYmUgaW5jbHVkZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2ludGVyYWN0aXZpdHkvc2xhc2gtY29tbWFuZHNcbiAgICovXG4gIHJlYWRvbmx5IHNsYXNoQ29tbWFuZHM/OiBTbGFja0FwcE1hbmlmZXN0U2xhc2hDb21tYW5kW107XG5cbiAgLyoqXG4gICAqIFdvcmtmbG93IHN0ZXBzLlxuICAgKlxuICAgKiBBIG1heGltdW0gb2YgMTAgd29ya2Zsb3cgc3RlcHMgY2FuIGJlIGluY2x1ZGVkLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vYXBpLnNsYWNrLmNvbS93b3JrZmxvd3Mvc3RlcHNcbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93U3RlcHM/OiBTbGFja0FwcE1hbmlmZXN0V29ya2Zsb3dTdGVwW107XG5cbiAgLyoqXG4gICAqIFZhbGlkIHVuZnVybCBkb21haW5zIHRvIHJlZ2lzdGVyLlxuICAgKlxuICAgKiBBIG1heGltdW0gb2YgNSB1bmZ1cmwgZG9tYWlucyBjYW4gYmUgaW5jbHVkZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL3JlZmVyZW5jZS9tZXNzYWdpbmcvbGluay11bmZ1cmxpbmcjY29uZmlndXJpbmdfZG9tYWluc1xuICAgKi9cbiAgcmVhZG9ubHkgdW5mdXJsRG9tYWlucz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBPQXV0aCBjb25maWd1cmF0aW9uIGZvciB0aGUgYXBwXG4gICAqL1xuICByZWFkb25seSBvYXV0aENvbmZpZz86IFNsYWNrQXBwTWFuaWZlc3RPYXV0aENvbmZpZztcbn1cblxuLyoqXG4gKiBTZXR0aW5ncyBzZWN0aW9uIG9mIHRoZSBhcHAgY29uZmlnIHBhZ2VzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2xhY2tBcHBNYW5pZmVzdFNldHRpbmdzIHtcbiAgLyoqXG4gICAqIEFuIGFycmF5IG9mIElQIGFkZHJlc3NlcyB0aGF0IGNvbmZvcm0gdG8gdGhlIEFsbG93ZWQgSVAgUmFuZ2VzIGZlYXR1cmVcbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vYXV0aGVudGljYXRpb24vYmVzdC1wcmFjdGljZXMjaXBfYWxsb3dsaXN0aW5nXG4gICAqL1xuICByZWFkb25seSBhbGxvd2VkSXBBZGRyZXNzUmFuZ2VzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIEV2ZW50cyBBUEkgY29uZmlndXJhdGlvbiBmb3IgdGhlIGFwcFxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vYXBpLnNsYWNrLmNvbS9ldmVudHMtYXBpXG4gICAqL1xuICByZWFkb25seSBldmVudFN1YnNjcmlwdGlvbnM/OiBTbGFja0FwcE1hbmlmZXN0RXZlbnRTdWJzY3JpcHRpb25zO1xuXG4gIC8qKlxuICAgKiBJbnRlcmFjdGl2aXR5IGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBhcHBcbiAgICovXG4gIHJlYWRvbmx5IGludGVyYWN0aXZpdHk/OiBTbGFja0FwcE1hbmlmZXN0SW50ZXJhY3Rpdml0eTtcblxuICAvKipcbiAgICogV2hldGhlciBvcmctd2lkZSBkZXBsb3kgaXMgZW5hYmxlZC5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vZW50ZXJwcmlzZS9hcHBzXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBvcmdEZXBsb3k/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIFNvY2tldCBNb2RlIGlzIGVuYWJsZWRcbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vYXBpcy9jb25uZWN0aW9ucy9zb2NrZXRcbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHNvY2tldE1vZGU/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIEV2ZW50cyBBUEkgY29uZmlndXJhdGlvbiBmb3IgdGhlIGFwcFxuICpcbiAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2V2ZW50cy1hcGlcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0RXZlbnRTdWJzY3JpcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBmdWxsIGh0dHBzIFVSTCB0aGF0IGFjdHMgYXMgdGhlIEV2ZW50cyBBUEkgcmVxdWVzdCBVUkxcbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vZXZlbnRzLWFwaSN0aGUtZXZlbnRzLWFwaV9fc3Vic2NyaWJpbmctdG8tZXZlbnQtdHlwZXNfX2V2ZW50cy1hcGktcmVxdWVzdC11cmxzXG4gICAqL1xuICByZWFkb25seSByZXF1ZXN0VXJsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEV2ZW50IHR5cGVzIHlvdSB3YW50IHRoZSBhcHAgdG8gc3Vic2NyaWJlIHRvLlxuICAgKlxuICAgKiBBIG1heGltdW0gb2YgMTAwIGV2ZW50IHR5cGVzIGNhbiBiZSB1c2VkXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2V2ZW50c1xuICAgKi9cbiAgcmVhZG9ubHkgYm90RXZlbnRzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIEV2ZW50IHR5cGVzIHlvdSB3YW50IHRoZSBhcHAgdG8gc3Vic2NyaWJlIHRvIG9uIGJlaGFsZiBvZiBhdXRob3JpemVkIHVzZXJzLlxuICAgKlxuICAgKiBBIG1heGltdW0gb2YgMTAwIGV2ZW50IHR5cGVzIGNhbiBiZSB1c2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgdXNlckV2ZW50cz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIEludGVyYWN0aXZpdHkgY29uZmlndXJhdGlvbiBmb3IgdGhlIGFwcFxuICpcbiAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2ludGVyYWN0aXZpdHkvaGFuZGxpbmcjc2V0dXBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0SW50ZXJhY3Rpdml0eSB7XG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCBpbnRlcmFjdGl2aXR5IGZlYXR1cmVzIGFyZSBlbmFibGVkXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgZnVsbCBodHRwcyBVUkwgdGhhdCBhY3RzIGFzIHRoZSBpbnRlcmFjdGl2ZSBSZXF1ZXN0IFVSTFxuICAgKi9cbiAgcmVhZG9ubHkgcmVxdWVzdFVybD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGZ1bGwgaHR0cHMgVVJMIHRoYXQgYWN0cyBhcyB0aCBpbnRlcmFjdGl2ZSBPcHRpb25zIExvYWQgVVJMXG4gICAqL1xuICByZWFkb25seSBtZXNzYWdlTWVudU9wdGlvbnNVcmw/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQXBwIEhvbWUgY29uZmlndXJhdGlvblxuICpcbiAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL3N1cmZhY2VzL3RhYnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0QXBwSG9tZSB7XG4gIC8qKlxuICAgKiBXZXRoZXIgdGhlIEhvbWUgdGFiIGlzIGVuYWJsZWRcbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGhvbWVUYWI/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXZXRoZXIgdGhlIE1lc3NhZ2VzIGlzIGVuYWJsZWRcbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IG1lc3NhZ2VzVGFiPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgdXNlcnMgY2FuIHNlbmQgbWVzc2FnZXMgdG8geW91ciBhcHAgaW4gdGhlXG4gICAqIE1lc3NhZ2VzIHRhYiBvZiB5b3VyIEFwcCBIb21lXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBtZXNzYWdlc1RhYlJlYWRPbmx5PzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBCb3QgdXNlciBjb25maWd1cmF0aW9uXG4gKlxuICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vYm90LXVzZXJzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2xhY2trQXBwTWFuaWZlc3RCb3RVc2VyIHtcbiAgLyoqXG4gICAqIFRoZSBkaXNwbGF5IG5hbWUgb2YgdGhlIGJvdCB1c2VyLlxuICAgKlxuICAgKiBNYXhpbXVtIGxlbmd0aCBpcyA4MCBjaGFyYWN0ZXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgZGlzcGxheU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgYm90IHVzZXIgd2lsbCBhbHdheXMgYXBwZWFyIHRvIGJlIG9ubGluZVxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgYWx3YXlzT25saW5lPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBTaG9ydGN1dCBjb25maWd1cmF0aW9uXG4gKlxuICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vaW50ZXJhY3Rpdml0eS9zaG9ydGN1dHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0U2hvcnRjdXQge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHNob3J0Y3V0XG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIHNob3J0Y3V0XG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2ludGVyYWN0aXZpdHkvc2hvcnRjdXRzXG4gICAqL1xuICByZWFkb25seSB0eXBlOiBTbGFja0FwcE1hbmlmZXN0U2hvcnRjdXRUeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgY2FsbGJhY2sgSUQgb2YgdGhlIHNob3J0Y3V0LlxuICAgKlxuICAgKiBNYXhpbXVtIGxlbmd0aCBpcyAyNTUgY2hhcmFjdGVycy5cbiAgICovXG4gIHJlYWRvbmx5IGNhbGxiYWNrSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQSBzaG9ydCBkZXNjcmlwdGlvbiBvZiB0aGUgc2hvcnRjdXRcbiAgICpcbiAgICogTWF4aW11bSBsZW5ndGggaXMgMTUwIGNoYXJhY3RlcnNcbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uOiBzdHJpbmc7XG59XG5cbi8qKlxuICogVHlwZSBvZiBzaG9ydGN1dHNcbiAqXG4gKiBAc2VlIGh0dHBzOi8vYXBpLnNsYWNrLmNvbS9pbnRlcmFjdGl2aXR5L3Nob3J0Y3V0c1xuICovXG5leHBvcnQgZW51bSBTbGFja0FwcE1hbmlmZXN0U2hvcnRjdXRUeXBlIHtcbiAgLyoqXG4gICAqIE1lc3NhZ2Ugc2hvcnRjdXRzIGFyZSBzaG93biB0byB1c2VycyBpbiB0aGUgY29udGV4dCBtZW51cyBvZiBtZXNzYWdlcyB3aXRoaW4gU2xhY2tcbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vaW50ZXJhY3Rpdml0eS9zaG9ydGN1dHMvdXNpbmcjbWVzc2FnZV9zaG9ydGN1dHNcbiAgICovXG4gIE1FU1NBR0UgPSAnbWVzc2FnZScsXG5cbiAgLyoqXG4gICAqIEdsb2JhbCBzaG9ydGN1dHMgYXJlIGF2YWlsYWJsZSB0byB1c2VycyB2aWEgdGhlIHNob3J0Y3V0cyBidXR0b24gaW4gdGhlIGNvbXBvc2VyLFxuICAgKiBhbmQgd2hlbiB1c2luZyBzZWFyY2ggaW4gU2xhY2tcbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vaW50ZXJhY3Rpdml0eS9zaG9ydGN1dHMvdXNpbmcjZ2xvYmFsX3Nob3J0Y3V0c1xuICAgKi9cbiAgR0xPQkFMID0gJ2dsb2JhbCcsXG59XG5cbi8qKlxuICogU2xhc2ggY29tbWFuZCBjb25maWd1cmF0aW9uXG4gKlxuICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vaW50ZXJhY3Rpdml0eS9zbGFzaC1jb21tYW5kc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNsYWNrQXBwTWFuaWZlc3RTbGFzaENvbW1hbmQge1xuICAvKipcbiAgICogVGhlIGFjdHVhbCBzbGFzaCBjb21tYW5kLlxuICAgKlxuICAgKiBNYXhpbXVtIGxlbmd0aCBpcyAzMiBjaGFyYWN0ZXJzXG4gICAqL1xuICByZWFkb25seSBjb21tYW5kOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgc2xhc2ggY29tbWFuZC5cbiAgICpcbiAgICogTWF4aW11bSBsZW5ndGggaXMgMjAwMCBjaGFyYWN0ZXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb246IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGZ1bGwgaHR0cHMgVVJMIHRoYXQgYWN0cyBhcyB0aGUgc2xhc2ggY29tbWFuZCdzIHJlcXVlc3QgVVJMXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2ludGVyYWN0aXZpdHkvc2xhc2gtY29tbWFuZHMjY3JlYXRpbmdfY29tbWFuZHNcbiAgICovXG4gIHJlYWRvbmx5IHVybD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHNob3J0IHVzYWdlIGhpbnQgYWJvdXQgdGhlIHNsYXNoIGNvbW1hbmQgZm9yIHVzZXJzLlxuICAgKlxuICAgKiBNYXhpbXVtIGxlbmd0aCBpcyAxMDAwIGNoYXJhY3RlcnMuXG4gICAqL1xuICByZWFkb25seSB1c2FnZUhpbnQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgY2hhbm5lbHMsIHVzZXJzLCBhbmQgbGlua3MgdHlwZWQgd2l0aCB0aGUgc2xhc2ggY29tbWFuZCBzaG91bGQgYmUgZXNjYXBlZFxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgc2hvdWxkRXNjYXBlPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBXb3JrZmxvdyBzdGVwXG4gKlxuICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vd29ya2Zsb3dzL3N0ZXBzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2xhY2tBcHBNYW5pZmVzdFdvcmtmbG93U3RlcCB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgd29ya2Zsb3cgc3RlcC5cbiAgICpcbiAgICogTWF4aW11bSBsZW5ndGggb2YgNTAgY2hhcmFjdGVycy5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGNhbGxiYWNrIElEIG9mIHRoZSB3b3JrZmxvdyBzdGVwLlxuICAgKlxuICAgKiBNYXhpbXVtIGxlbmd0aCBvZiA1MCBjaGFyYWN0ZXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgY2FsbGJhY2tJZDogc3RyaW5nO1xufTtcblxuLyoqXG4gKiBPQXV0aCBjb25maWd1cmF0aW9uIGZvciB0aGUgYXBwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2xhY2tBcHBNYW5pZmVzdE9hdXRoQ29uZmlnIHtcbiAgLyoqXG4gICAqIE9BdXRoIHJlZGlyZWN0IFVSTHNcbiAgICpcbiAgICogQSBtYXhpbXVtIG9mIDEwMDAgcmVkaXJlY3QgVVJMcyBjYW4gYmUgaW5jbHVkZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2F1dGhlbnRpY2F0aW9uL29hdXRoLXYyI3JlZGlyZWN0X3VybHNcbiAgICovXG4gIHJlYWRvbmx5IHJlZGlyZWN0VXJscz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBCb3Qgc2NvcGVzIHRvIHJlcXVlc3QgdXBvbiBhcHAgaW5zdGFsbGF0aW9uLlxuICAgKlxuICAgKiBBIG1heGltdW0gb2YgMjU1IHNjb3BlcyBjYW4gYmUgaW5jbHVkZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL3Njb3Blc1xuICAgKi9cbiAgcmVhZG9ubHkgYm90U2NvcGVzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFVzZXIgc2NvcGVzIHRvIHJlcXVlc3QgdXBvbiBhcHAgaW5zdGFsbGF0aW9uLlxuICAgKlxuICAgKiBBIG1heGltdW0gb2YgMjU1IHNjb3BlcyBjYW4gYmUgaW5jbHVkZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL3Njb3Blc1xuICAgKi9cbiAgcmVhZG9ubHkgdXNlclNjb3Blcz86IHN0cmluZ1tdO1xufVxuXG5cbi8qKlxuICogQSBTbGFjayBhcHAgbWFuaWZlc3RcbiAqXG4gKiBAc2VlIGh0dHBzOi8vYXBpLnNsYWNrLmNvbS9yZWZlcmVuY2UvbWFuaWZlc3RzXG4gKi9cbmV4cG9ydCBjbGFzcyBTbGFja0FwcE1hbmlmZXN0IHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBwcm9wczogU2xhY2tBcHBNYW5pZmVzdFByb3BzKSB7XG4gICAgdmFsaWRhdGVMZW5ndGgoJ2FwcCBuYW1lJywgMzUsIHByb3BzLm5hbWUpO1xuICAgIHZhbGlkYXRlTGVuZ3RoKCdhcHAgZGVzY3JpcHRpb24nLCAxNDAsIHByb3BzLmRlc2NyaXB0aW9uKTtcbiAgICB2YWxpZGF0ZUxlbmd0aCgnYXBwIGxvbmcgZGVzY3JpcHRpb24nLCA0MDAwLCBwcm9wcy5sb25nRGVzY3JpcHRpb24pO1xuICAgIHZhbGlkYXRlQ29sb3IocHJvcHMuYmFja2dyb3VuZENvbG9yKTtcblxuICAgIHZhbGlkYXRlVXJsKHByb3BzLmV2ZW50U3Vic2NyaXB0aW9ucz8ucmVxdWVzdFVybCk7XG4gICAgdmFsaWRhdGVJdGVtcygnYm90IGV2ZW50cycsIDEwMCwgcHJvcHMuZXZlbnRTdWJzY3JpcHRpb25zPy5ib3RFdmVudHMpO1xuICAgIHZhbGlkYXRlSXRlbXMoJ3VzZXJzIGV2ZW50cycsIDEwMCwgcHJvcHMuZXZlbnRTdWJzY3JpcHRpb25zPy51c2VyRXZlbnRzKTtcblxuICAgIHZhbGlkYXRlVXJsKHByb3BzLmludGVyYWN0aXZpdHk/LnJlcXVlc3RVcmwpO1xuICAgIHZhbGlkYXRlVXJsKHByb3BzLmludGVyYWN0aXZpdHk/Lm1lc3NhZ2VNZW51T3B0aW9uc1VybCk7XG4gICAgdmFsaWRhdGVMZW5ndGgoJ2JvdCBkaXNwbGF5IG5hbWUnLCA4MCwgcHJvcHMuYm90VXNlcj8uZGlzcGxheU5hbWUpO1xuXG4gICAgdmFsaWRhdGVJdGVtcygnc2hvcnRjdXRzJywgNSwgcHJvcHMuc2hvcnRjdXRzKTtcbiAgICBwcm9wcy5zaG9ydGN1dHM/LmZvckVhY2goKHNob3J0Y3V0KSA9PiB7XG4gICAgICB2YWxpZGF0ZUxlbmd0aCgnc2hvcnRjdXQgY2FsbGJhY2sgSUQnLCAyNTUsIHNob3J0Y3V0LmNhbGxiYWNrSWQpO1xuICAgICAgdmFsaWRhdGVMZW5ndGgoJ3Nob3J0Y3V0IGRlc2NyaXB0aW9uJywgMTUwLCBzaG9ydGN1dC5kZXNjcmlwdGlvbik7XG4gICAgfSk7XG5cbiAgICB2YWxpZGF0ZUl0ZW1zKCdzbGFzaCBjb21tYW5kcycsIDUsIHByb3BzLnNsYXNoQ29tbWFuZHMpO1xuICAgIHByb3BzLnNsYXNoQ29tbWFuZHM/LmZvckVhY2goKGNvbW1hbmQpID0+IHtcbiAgICAgIHZhbGlkYXRlTGVuZ3RoKCdzbGFzaCBjb21tYW5kJywgMzIsIGNvbW1hbmQuY29tbWFuZCk7XG4gICAgICB2YWxpZGF0ZUxlbmd0aCgnc2xhc2ggY29tbWFuZCBkZXNjcmlwdGlvbicsIDIwMDAsIGNvbW1hbmQuZGVzY3JpcHRpb24pLFxuICAgICAgdmFsaWRhdGVVcmwoY29tbWFuZC51cmwpO1xuICAgICAgdmFsaWRhdGVMZW5ndGgoJ3NsYXNoIGNvbW1hbmQgdXNlIGhpbnQnLCAxMDAwLCBjb21tYW5kLnVzYWdlSGludCk7XG4gICAgfSk7XG5cbiAgICB2YWxpZGF0ZUl0ZW1zKCd3b3JrZmxvdyBzdGVwcycsIDEwLCBwcm9wcy53b3JrZmxvd1N0ZXBzKTtcbiAgICBwcm9wcy53b3JrZmxvd1N0ZXBzPy5mb3JFYWNoKChzdGVwKSA9PiB7XG4gICAgICB2YWxpZGF0ZUxlbmd0aCgnd29ya2Zsb3cgc3RlcCBuYW1lJywgNTAsIHN0ZXAubmFtZSk7XG4gICAgICB2YWxpZGF0ZUxlbmd0aCgnd29ya2Zsb3cgc3RlcCBjYWxsYmFjayBJRCcsIDUwLCBzdGVwLmNhbGxiYWNrSWQpO1xuICAgIH0pO1xuXG4gICAgdmFsaWRhdGVJdGVtcygndW5mdXJscyBkb21haW5zJywgNSwgcHJvcHMudW5mdXJsRG9tYWlucyk7XG5cbiAgICB2YWxpZGF0ZUl0ZW1zKCdPQXV0aCByZWRpcmVjdCBVUkxzJywgMTAwMCwgcHJvcHMub2F1dGhDb25maWc/LnJlZGlyZWN0VXJscyk7XG4gICAgcHJvcHMub2F1dGhDb25maWc/LnJlZGlyZWN0VXJscz8uZm9yRWFjaCgodXJsKSA9PiB7XG4gICAgICB2YWxpZGF0ZVVybCh1cmwsIGZhbHNlKTtcbiAgICB9KTtcbiAgICB2YWxpZGF0ZUl0ZW1zKCdib3Qgc2NvcGVzJywgMjU1LCBwcm9wcy5vYXV0aENvbmZpZz8uYm90U2NvcGVzKTtcbiAgICB2YWxpZGF0ZUl0ZW1zKCd1c2VyIHNjb3BlcycsIDI1NSwgcHJvcHMub2F1dGhDb25maWc/LnVzZXJTY29wZXMpO1xuICB9XG5cbiAgcHVibGljIHJlbmRlcihjb25zdHJ1Y3Q6IElDb25zdHJ1Y3QpOiBzdHJpbmcge1xuICAgIGNvbnN0IHNjaGVtYTogU2xhY2tBcHBNYW5pZmVzdFNjaGVtYSA9IHtcbiAgICAgIF9tZXRhZGF0YToge1xuICAgICAgICBtYWpvcl92ZXJzaW9uOiB0aGlzLnByb3BzLm1ham9yVmVyc2lvbixcbiAgICAgICAgbWlub3JfdmVyc2lvbjogdGhpcy5wcm9wcy5taW5vclZlcnNpb24sXG4gICAgICB9LFxuICAgICAgZGlzcGxheV9pbmZvcm1hdGlvbjoge1xuICAgICAgICBuYW1lOiB0aGlzLnByb3BzLm5hbWUsXG4gICAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLnByb3BzLmRlc2NyaXB0aW9uLFxuICAgICAgICBsb25nX2Rlc2NyaXB0aW9uOiB0aGlzLnByb3BzLmxvbmdEZXNjcmlwdGlvbixcbiAgICAgICAgYmFja2dyb3VuZF9jb2xvcjogcHJlZml4V2l0aCgnIycsIHRoaXMucHJvcHMuYmFja2dyb3VuZENvbG9yKT8udG9Mb3dlckNhc2UoKSxcbiAgICAgIH0sXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBhbGxvd2VkX2lwX2FkZHJlc3NfcmFuZ2VzOiB0aGlzLnByb3BzLmFsbG93ZWRJcEFkZHJlc3NSYW5nZXMsXG4gICAgICAgIGV2ZW50X3N1YnNjcmlwdGlvbnM6IHtcbiAgICAgICAgICByZXF1ZXN0X3VybDogdGhpcy5wcm9wcy5ldmVudFN1YnNjcmlwdGlvbnM/LnJlcXVlc3RVcmwsXG4gICAgICAgICAgYm90X2V2ZW50czogdGhpcy5wcm9wcy5ldmVudFN1YnNjcmlwdGlvbnM/LmJvdEV2ZW50cyxcbiAgICAgICAgICB1c2VyX2V2ZW50czogdGhpcy5wcm9wcy5ldmVudFN1YnNjcmlwdGlvbnM/LnVzZXJFdmVudHMsXG4gICAgICAgIH0sXG4gICAgICAgIGludGVyYWN0aXZpdHk6IHRoaXMucHJvcHMuaW50ZXJhY3Rpdml0eVxuICAgICAgICAgID8ge1xuICAgICAgICAgICAgaXNfZW5hYmxlZDogdGhpcy5wcm9wcy5pbnRlcmFjdGl2aXR5Py5lbmFibGVkID8/IHRydWUsXG4gICAgICAgICAgICByZXF1ZXN0X3VybDogdGhpcy5wcm9wcy5pbnRlcmFjdGl2aXR5Py5yZXF1ZXN0VXJsLFxuICAgICAgICAgICAgbWVzc2FnZV9tZW51X29wdGlvbnNfdXJsOiB0aGlzLnByb3BzLmludGVyYWN0aXZpdHk/Lm1lc3NhZ2VNZW51T3B0aW9uc1VybCxcbiAgICAgICAgICB9XG4gICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAgIG9yZ19kZXBsb3lfZW5hYmxlZDogdGhpcy5wcm9wcy5vcmdEZXBsb3ksXG4gICAgICAgIHNvY2tldF9tb2RlX2VuYWJsZWQ6IHRoaXMucHJvcHMuc29ja2V0TW9kZSxcbiAgICAgIH0sXG4gICAgICBmZWF0dXJlczoge1xuICAgICAgICBhcHBfaG9tZToge1xuICAgICAgICAgIGhvbWVfdGFiX2VuYWJsZWQ6IHRoaXMucHJvcHMuYXBwSG9tZT8uaG9tZVRhYixcbiAgICAgICAgICBtZXNzYWdlc190YWJfZW5hYmxlZDogdGhpcy5wcm9wcy5hcHBIb21lPy5tZXNzYWdlc1RhYixcbiAgICAgICAgICBtZXNzYWdlc190YWJfcmVhZF9vbmx5X2VuYWJsZWQ6IHRoaXMucHJvcHMuYXBwSG9tZT8ubWVzc2FnZXNUYWJSZWFkT25seSxcbiAgICAgICAgfSxcbiAgICAgICAgYm90X3VzZXI6IHRoaXMucHJvcHMuYm90VXNlclxuICAgICAgICAgID8ge1xuICAgICAgICAgICAgZGlzcGxheV9uYW1lOiB0aGlzLnByb3BzLmJvdFVzZXI/LmRpc3BsYXlOYW1lLFxuICAgICAgICAgICAgYWx3YXlzX29ubGluZTogdGhpcy5wcm9wcy5ib3RVc2VyPy5hbHdheXNPbmxpbmUsXG4gICAgICAgICAgfVxuICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgICBzaG9ydGN1dHM6IHRoaXMucHJvcHMuc2hvcnRjdXRzPy5tYXAoKHNob3J0Y3V0KSA9PiAoe1xuICAgICAgICAgIG5hbWU6IHNob3J0Y3V0Lm5hbWUsXG4gICAgICAgICAgdHlwZTogc2hvcnRjdXQudHlwZSxcbiAgICAgICAgICBjYWxsYmFja19pZDogc2hvcnRjdXQuY2FsbGJhY2tJZCxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogc2hvcnRjdXQuZGVzY3JpcHRpb24sXG4gICAgICAgIH0pKSxcbiAgICAgICAgc2xhc2hfY29tbWFuZHM6IHRoaXMucHJvcHMuc2xhc2hDb21tYW5kcz8ubWFwKChjb21tYW5kKSA9PiAoe1xuICAgICAgICAgIGNvbW1hbmQ6IHByZWZpeFdpdGgoJy8nLCBjb21tYW5kLmNvbW1hbmQpLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBjb21tYW5kLmRlc2NyaXB0aW9uLFxuICAgICAgICAgIHVybDogY29tbWFuZC51cmwsXG4gICAgICAgICAgdXNhZ2VfaGludDogY29tbWFuZC51c2FnZUhpbnQsXG4gICAgICAgICAgc2hvdWxkX2VzY2FwZTogY29tbWFuZC5zaG91bGRFc2NhcGUsXG4gICAgICAgIH0pKSxcbiAgICAgICAgd29ya2Zsb3dfc3RlcHM6IHRoaXMucHJvcHMud29ya2Zsb3dTdGVwcz8ubWFwKChzdGVwKSA9PiAoe1xuICAgICAgICAgIG5hbWU6IHN0ZXAubmFtZSxcbiAgICAgICAgICBjYWxsYmFja19pZDogc3RlcC5jYWxsYmFja0lkLFxuICAgICAgICB9KSksXG4gICAgICAgIHVuZnVybF9kb21haW5zOiB0aGlzLnByb3BzLnVuZnVybERvbWFpbnMsXG4gICAgICB9LFxuICAgICAgb2F1dGhfY29uZmlnOiB7XG4gICAgICAgIHJlZGlyZWN0X3VybHM6IHRoaXMucHJvcHMub2F1dGhDb25maWc/LnJlZGlyZWN0VXJscyxcbiAgICAgICAgc2NvcGVzOiB7XG4gICAgICAgICAgYm90OiB0aGlzLnByb3BzLm9hdXRoQ29uZmlnPy5ib3RTY29wZXMsXG4gICAgICAgICAgdXNlcnM6IHRoaXMucHJvcHMub2F1dGhDb25maWc/LnVzZXJTY29wZXMsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgICByZXR1cm4gU3RhY2sub2YoY29uc3RydWN0KS50b0pzb25TdHJpbmcocmVtb3ZlVW5kZWZpbmVkKHNjaGVtYSkpO1xuICB9XG59XG5cbmludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0U2NoZW1hIHtcbiAgX21ldGFkYXRhPzoge1xuICAgIG1ham9yX3ZlcnNpb24/OiBudW1iZXI7XG4gICAgbWlub3JfdmVyc2lvbj86IG51bWJlcjtcbiAgfTtcbiAgZGlzcGxheV9pbmZvcm1hdGlvbjoge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgICBsb25nX2Rlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAgIGJhY2tncm91bmRfY29sb3I/OiBzdHJpbmc7XG4gIH07XG4gIHNldHRpbmdzPzoge1xuICAgIGFsbG93ZWRfaXBfYWRkcmVzc19yYW5nZXM/OiBzdHJpbmdbXTtcbiAgICBldmVudF9zdWJzY3JpcHRpb25zPzoge1xuICAgICAgcmVxdWVzdF91cmw/OiBzdHJpbmc7XG4gICAgICBib3RfZXZlbnRzPzogc3RyaW5nW107XG4gICAgICB1c2VyX2V2ZW50cz86IHN0cmluZ1tdO1xuICAgIH07XG4gICAgaW50ZXJhY3Rpdml0eT86IHtcbiAgICAgIGlzX2VuYWJsZWQ6IGJvb2xlYW47XG4gICAgICByZXF1ZXN0X3VybD86IHN0cmluZztcbiAgICAgIG1lc3NhZ2VfbWVudV9vcHRpb25zX3VybD86IHN0cmluZztcbiAgICB9O1xuICAgIG9yZ19kZXBsb3lfZW5hYmxlZD86IGJvb2xlYW47XG4gICAgc29ja2V0X21vZGVfZW5hYmxlZD86IGJvb2xlYW47XG4gIH07XG4gIGZlYXR1cmVzPzoge1xuICAgIGFwcF9ob21lPzoge1xuICAgICAgaG9tZV90YWJfZW5hYmxlZD86IGJvb2xlYW47XG4gICAgICBtZXNzYWdlc190YWJfZW5hYmxlZD86IGJvb2xlYW47XG4gICAgICBtZXNzYWdlc190YWJfcmVhZF9vbmx5X2VuYWJsZWQ/OiBib29sZWFuO1xuICAgIH07XG4gICAgYm90X3VzZXI/OiB7XG4gICAgICBkaXNwbGF5X25hbWU6IHN0cmluZztcbiAgICAgIGFsd2F5c19vbmxpbmU/OiBib29sZWFuO1xuICAgIH07XG4gICAgc2hvcnRjdXRzPzoge1xuICAgICAgbmFtZTogc3RyaW5nO1xuICAgICAgdHlwZTogc3RyaW5nO1xuICAgICAgY2FsbGJhY2tfaWQ6IHN0cmluZztcbiAgICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gICAgfVtdO1xuICAgIHNsYXNoX2NvbW1hbmRzPzoge1xuICAgICAgY29tbWFuZDogc3RyaW5nO1xuICAgICAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgICAgIHVybD86IHN0cmluZztcbiAgICAgIHVzYWdlX2hpbnQ/OiBzdHJpbmc7XG4gICAgICBzaG91bGRfZXNjYXBlPzogYm9vbGVhbjtcbiAgICB9W107XG4gICAgd29ya2Zsb3dfc3RlcHM/OiB7XG4gICAgICBuYW1lOiBzdHJpbmc7XG4gICAgICBjYWxsYmFja19pZDogc3RyaW5nO1xuICAgIH1bXTtcbiAgICB1bmZ1cmxfZG9tYWlucz86IHN0cmluZ1tdO1xuICB9O1xuICBvYXV0aF9jb25maWc/OiB7XG4gICAgcmVkaXJlY3RfdXJscz86IHN0cmluZ1tdO1xuICAgIHNjb3Blcz86IHtcbiAgICAgIGJvdD86IHN0cmluZ1tdO1xuICAgICAgdXNlcnM/OiBzdHJpbmdbXTtcbiAgICB9O1xuICB9O1xufVxuXG5mdW5jdGlvbiBwcmVmaXhXaXRoPFQgZXh0ZW5kcyBzdHJpbmcgfCB1bmRlZmluZWQ+KHByZWZpeDogc3RyaW5nLCBzdHJpbmc6IFQpOiBUIHtcbiAgaWYgKCFzdHJpbmcpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkIGFzIFQ7XG4gIH1cblxuICBpZiAoc3RyaW5nLnN0YXJ0c1dpdGgocHJlZml4KSkge1xuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cblxuICByZXR1cm4gYCR7cHJlZml4fSR7c3RyaW5nfWAgYXMgVDtcbn1cblxuZnVuY3Rpb24gdmFsaWRhdGVMZW5ndGgoZGVzY3JpcHRpb246IHN0cmluZywgbWF4OiBudW1iZXIsIHhzPzogc3RyaW5nKTogdm9pZCB7XG4gIGlmICh4cyAmJiAhVG9rZW4uaXNVbnJlc29sdmVkKHhzKSAmJiB4cy5sZW5ndGggPiBtYXgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYE1heGltdW0gbGVuZ3RoIGZvciAke2Rlc2NyaXB0aW9ufSBpcyAke21heH0sIGdvdCAke3hzLmxlbmd0aH06ICR7eHN9YCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gdmFsaWRhdGVJdGVtczxUPihkZXNjcmlwdGlvbjogc3RyaW5nLCBtYXg6IG51bWJlciwgeHM/OiBUW10pOiB2b2lkIHtcbiAgaWYgKHhzICYmICFUb2tlbi5pc1VucmVzb2x2ZWQoeHMpICYmIHhzLmxlbmd0aCA+IG1heCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgZm9yICR7ZGVzY3JpcHRpb259IGlzICR7bWF4fSwgZ290ICR7eHMubGVuZ3RofWApO1xuICB9XG59XG5cbmZ1bmN0aW9uIHZhbGlkYXRlQ29sb3IoY29sb3I/OiBzdHJpbmcpOiB2b2lkIHtcbiAgaWYgKGNvbG9yICYmICFUb2tlbi5pc1VucmVzb2x2ZWQoY29sb3IpICYmICEvXiM/KFswLTlhLWZBLUZdezN9fFswLTlhLWZBLUZdezZ9KSQvLnRlc3QoY29sb3IpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGhleCBjb2xvcjogJHtjb2xvcn1gKTtcbiAgfVxufVxuXG5mdW5jdGlvbiB2YWxpZGF0ZVVybCh1cmw/OiBzdHJpbmcsIGh0dHBzID0gdHJ1ZSk6IHZvaWQge1xuICBpZiAodXJsICYmICFUb2tlbi5pc1VucmVzb2x2ZWQodXJsKSkge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBwYXJzZWQgPSBuZXcgbm9kZVVybC5VUkwodXJsKTtcbiAgICAgIGlmIChodHRwcyAmJiBwYXJzZWQucHJvdG9jb2wgIT09ICdodHRwczonKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBwcm90b2NvbCcpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGAke3VybH0gaXMgbm90IGEgdmFsaWQke2h0dHBzID8gJyBIVFRQUycgOiAnJ30gdXJsYCk7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIHJlbW92ZVVuZGVmaW5lZChvYmo6IGFueSk6IGFueSB7XG4gIGlmICh0eXBlb2Ygb2JqID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBvYmo7XG4gIH1cblxuICBpZiAoQXJyYXkuaXNBcnJheShvYmopKSB7XG4gICAgY29uc3QgcmV0ID0gb2JqXG4gICAgICAubWFwKHYgPT4gKHYgJiYgdHlwZW9mIHYgPT09ICdvYmplY3QnKSA/IHJlbW92ZVVuZGVmaW5lZCh2KSA6IHYpXG4gICAgICAuZmlsdGVyKHYgPT4gISh2ID09IG51bGwpKTtcbiAgICByZXR1cm4gcmV0Lmxlbmd0aCAhPT0gMCA/IHJldCA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGNvbnN0IHJldCA9IE9iamVjdC5lbnRyaWVzKG9iailcbiAgICAubWFwKChbaywgdl0pID0+IFtrLCB2ICYmIHR5cGVvZiB2ID09PSAnb2JqZWN0JyA/IHJlbW92ZVVuZGVmaW5lZCh2KSA6IHZdKVxuICAgIC5yZWR1Y2UoKGE6IGFueSwgW2ssIHZdKSA9PiAodiA9PSBudWxsID8gYSA6IChhW2tdPXYsIGEpKSwge30pO1xuICByZXR1cm4gT2JqZWN0LmtleXMocmV0KS5sZW5ndGggIT09IDAgPyByZXQgOiB1bmRlZmluZWQ7XG59XG4iXX0=
|
|
@@ -2,82 +2,63 @@ import * as secretsmanager from 'aws-cdk-lib/aws-secretsmanager';
|
|
|
2
2
|
import { Construct, IConstruct } from 'constructs';
|
|
3
3
|
import { SlackAppManifestProps } from './manifest';
|
|
4
4
|
/**
|
|
5
|
-
* Properties for a SlackApp
|
|
6
|
-
*
|
|
7
|
-
* @stability stable
|
|
5
|
+
* Properties for a SlackApp
|
|
8
6
|
*/
|
|
9
7
|
export interface SlackAppProps {
|
|
10
8
|
/**
|
|
11
|
-
* The definition of the app manifest
|
|
9
|
+
* The definition of the app manifest
|
|
12
10
|
*
|
|
13
11
|
* @see https://api.slack.com/reference/manifests
|
|
14
|
-
* @stability stable
|
|
15
12
|
*/
|
|
16
13
|
readonly manifest: SlackAppManifestDefinition;
|
|
17
14
|
/**
|
|
18
|
-
* An AWS Secrets Manager secret containing the app configuration token
|
|
15
|
+
* An AWS Secrets Manager secret containing the app configuration token
|
|
19
16
|
*
|
|
20
17
|
* Must use the following JSON format:
|
|
21
18
|
*
|
|
22
19
|
* ```
|
|
23
20
|
* {
|
|
24
|
-
*
|
|
21
|
+
* "refreshToken": "<token>"
|
|
25
22
|
* }
|
|
26
23
|
* ```
|
|
27
|
-
*
|
|
28
|
-
* @stability stable
|
|
29
24
|
*/
|
|
30
25
|
readonly configurationTokenSecret: secretsmanager.ISecret;
|
|
31
26
|
/**
|
|
32
|
-
* The AWS Secrets Manager secret where to store the app credentials
|
|
27
|
+
* The AWS Secrets Manager secret where to store the app credentials
|
|
33
28
|
*
|
|
34
29
|
* @default - a new secret is created
|
|
35
|
-
* @stability stable
|
|
36
30
|
*/
|
|
37
31
|
readonly credentialsSecret?: secretsmanager.ISecret;
|
|
38
32
|
}
|
|
39
33
|
/**
|
|
40
|
-
* A Slack app manifest definition
|
|
41
|
-
*
|
|
42
|
-
* @stability stable
|
|
34
|
+
* A Slack app manifest definition
|
|
43
35
|
*/
|
|
44
36
|
export declare abstract class SlackAppManifestDefinition {
|
|
45
37
|
/**
|
|
46
|
-
* Create a Slack app manifest from a JSON app manifest encoded as a string
|
|
47
|
-
*
|
|
48
|
-
* @stability stable
|
|
38
|
+
* Create a Slack app manifest from a JSON app manifest encoded as a string
|
|
49
39
|
*/
|
|
50
40
|
static fromString(manifest: string): SlackAppManifestDefinition;
|
|
51
41
|
/**
|
|
52
|
-
* Creates a Slack app manifest from a file containg a JSON app manifest
|
|
53
|
-
*
|
|
54
|
-
* @stability stable
|
|
42
|
+
* Creates a Slack app manifest from a file containg a JSON app manifest
|
|
55
43
|
*/
|
|
56
44
|
static fromFile(file: string): SlackAppManifestDefinition;
|
|
57
45
|
/**
|
|
58
|
-
* Creates a Slack app manifest by specifying properties
|
|
59
|
-
*
|
|
60
|
-
* @stability stable
|
|
46
|
+
* Creates a Slack app manifest by specifying properties
|
|
61
47
|
*/
|
|
62
48
|
static fromManifest(props: SlackAppManifestProps): SlackAppManifestDefinition;
|
|
63
49
|
/**
|
|
64
|
-
* Renders the JSON app manifest encoded as a string
|
|
65
|
-
*
|
|
66
|
-
* @stability stable
|
|
50
|
+
* Renders the JSON app manifest encoded as a string
|
|
67
51
|
*/
|
|
68
52
|
abstract render(construct: IConstruct): string;
|
|
69
53
|
}
|
|
70
54
|
/**
|
|
71
|
-
* A Slack application deployed with a manifest
|
|
55
|
+
* A Slack application deployed with a manifest
|
|
72
56
|
*
|
|
73
57
|
* @see https://api.slack.com/reference/manifests
|
|
74
|
-
* @stability stable
|
|
75
58
|
*/
|
|
76
59
|
export declare class SlackApp extends Construct {
|
|
77
60
|
/**
|
|
78
|
-
* The ID of the application
|
|
79
|
-
*
|
|
80
|
-
* @stability stable
|
|
61
|
+
* The ID of the application
|
|
81
62
|
*/
|
|
82
63
|
readonly appId: string;
|
|
83
64
|
/**
|
|
@@ -85,43 +66,30 @@ export declare class SlackApp extends Construct {
|
|
|
85
66
|
*
|
|
86
67
|
* ```
|
|
87
68
|
* {
|
|
88
|
-
*
|
|
89
|
-
*
|
|
90
|
-
*
|
|
91
|
-
*
|
|
92
|
-
*
|
|
69
|
+
* "appId": "...",
|
|
70
|
+
* "clientId": "...",
|
|
71
|
+
* "clientSecret": "...",
|
|
72
|
+
* "verificationToken": "...",
|
|
73
|
+
* "signingSecret": "..."
|
|
93
74
|
* }
|
|
94
75
|
* ```
|
|
95
|
-
*
|
|
96
|
-
* @stability stable
|
|
97
76
|
*/
|
|
98
77
|
readonly credentials: secretsmanager.ISecret;
|
|
99
78
|
/**
|
|
100
|
-
* A dynamic reference to the client ID of the app
|
|
101
|
-
*
|
|
102
|
-
* @stability stable
|
|
79
|
+
* A dynamic reference to the client ID of the app
|
|
103
80
|
*/
|
|
104
81
|
readonly clientId: string;
|
|
105
82
|
/**
|
|
106
|
-
* A dynamic reference to the client secret of the app
|
|
107
|
-
*
|
|
108
|
-
* @stability stable
|
|
83
|
+
* A dynamic reference to the client secret of the app
|
|
109
84
|
*/
|
|
110
85
|
readonly clientSecret: string;
|
|
111
86
|
/**
|
|
112
|
-
* A dynamic reference to the verification token of the app
|
|
113
|
-
*
|
|
114
|
-
* @stability stable
|
|
87
|
+
* A dynamic reference to the verification token of the app
|
|
115
88
|
*/
|
|
116
89
|
readonly verificationToken: string;
|
|
117
90
|
/**
|
|
118
|
-
* A dynamic reference to the signing secret of the app
|
|
119
|
-
*
|
|
120
|
-
* @stability stable
|
|
91
|
+
* A dynamic reference to the signing secret of the app
|
|
121
92
|
*/
|
|
122
93
|
readonly signingSecret: string;
|
|
123
|
-
/**
|
|
124
|
-
* @stability stable
|
|
125
|
-
*/
|
|
126
94
|
constructor(scope: Construct, id: string, props: SlackAppProps);
|
|
127
95
|
}
|
|
@@ -10,31 +10,23 @@ const constructs_1 = require("constructs");
|
|
|
10
10
|
const manifest_1 = require("./manifest");
|
|
11
11
|
const provider_1 = require("./provider");
|
|
12
12
|
/**
|
|
13
|
-
* A Slack app manifest definition
|
|
14
|
-
*
|
|
15
|
-
* @stability stable
|
|
13
|
+
* A Slack app manifest definition
|
|
16
14
|
*/
|
|
17
15
|
class SlackAppManifestDefinition {
|
|
18
16
|
/**
|
|
19
|
-
* Create a Slack app manifest from a JSON app manifest encoded as a string
|
|
20
|
-
*
|
|
21
|
-
* @stability stable
|
|
17
|
+
* Create a Slack app manifest from a JSON app manifest encoded as a string
|
|
22
18
|
*/
|
|
23
19
|
static fromString(manifest) {
|
|
24
20
|
return new StringManifest(manifest);
|
|
25
21
|
}
|
|
26
22
|
/**
|
|
27
|
-
* Creates a Slack app manifest from a file containg a JSON app manifest
|
|
28
|
-
*
|
|
29
|
-
* @stability stable
|
|
23
|
+
* Creates a Slack app manifest from a file containg a JSON app manifest
|
|
30
24
|
*/
|
|
31
25
|
static fromFile(file) {
|
|
32
26
|
return new FileManifest(file);
|
|
33
27
|
}
|
|
34
28
|
/**
|
|
35
|
-
* Creates a Slack app manifest by specifying properties
|
|
36
|
-
*
|
|
37
|
-
* @stability stable
|
|
29
|
+
* Creates a Slack app manifest by specifying properties
|
|
38
30
|
*/
|
|
39
31
|
static fromManifest(props) {
|
|
40
32
|
return new manifest_1.SlackAppManifest(props);
|
|
@@ -42,7 +34,7 @@ class SlackAppManifestDefinition {
|
|
|
42
34
|
}
|
|
43
35
|
exports.SlackAppManifestDefinition = SlackAppManifestDefinition;
|
|
44
36
|
_a = JSII_RTTI_SYMBOL_1;
|
|
45
|
-
SlackAppManifestDefinition[_a] = { fqn: "cloudstructs.SlackAppManifestDefinition", version: "0.4.
|
|
37
|
+
SlackAppManifestDefinition[_a] = { fqn: "cloudstructs.SlackAppManifestDefinition", version: "0.4.21" };
|
|
46
38
|
class StringManifest extends SlackAppManifestDefinition {
|
|
47
39
|
constructor(manifest) {
|
|
48
40
|
super();
|
|
@@ -62,15 +54,11 @@ class FileManifest extends SlackAppManifestDefinition {
|
|
|
62
54
|
}
|
|
63
55
|
}
|
|
64
56
|
/**
|
|
65
|
-
* A Slack application deployed with a manifest
|
|
57
|
+
* A Slack application deployed with a manifest
|
|
66
58
|
*
|
|
67
59
|
* @see https://api.slack.com/reference/manifests
|
|
68
|
-
* @stability stable
|
|
69
60
|
*/
|
|
70
61
|
class SlackApp extends constructs_1.Construct {
|
|
71
|
-
/**
|
|
72
|
-
* @stability stable
|
|
73
|
-
*/
|
|
74
62
|
constructor(scope, id, props) {
|
|
75
63
|
var _c;
|
|
76
64
|
super(scope, id);
|
|
@@ -99,5 +87,5 @@ class SlackApp extends constructs_1.Construct {
|
|
|
99
87
|
}
|
|
100
88
|
exports.SlackApp = SlackApp;
|
|
101
89
|
_b = JSII_RTTI_SYMBOL_1;
|
|
102
|
-
SlackApp[_b] = { fqn: "cloudstructs.SlackApp", version: "0.4.
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
90
|
+
SlackApp[_b] = { fqn: "cloudstructs.SlackApp", version: "0.4.21" };
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xhY2stYXBwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NsYWNrLWFwcC9zbGFjay1hcHAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx5QkFBeUI7QUFDekIsNkNBQTZDO0FBQzdDLGlFQUFpRTtBQUNqRSwyQ0FBbUQ7QUFDbkQseUNBQXFFO0FBQ3JFLHlDQUE4QztBQWtDOUM7O0dBRUc7QUFDSCxNQUFzQiwwQkFBMEI7SUFDOUM7O09BRUc7SUFDSSxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQWdCO1FBQ3ZDLE9BQU8sSUFBSSxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFZO1FBQ2pDLE9BQU8sSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUE0QjtRQUNyRCxPQUFPLElBQUksMkJBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQzs7QUFwQkgsZ0VBMEJDOzs7QUFFRCxNQUFNLGNBQWUsU0FBUSwwQkFBMEI7SUFDckQsWUFBNkIsUUFBZ0I7UUFDM0MsS0FBSyxFQUFFLENBQUM7UUFEbUIsYUFBUSxHQUFSLFFBQVEsQ0FBUTtJQUU3QyxDQUFDO0lBRU0sTUFBTSxDQUFDLFVBQXNCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0NBQ0Y7QUFFRCxNQUFNLFlBQWEsU0FBUSwwQkFBMEI7SUFDbkQsWUFBNkIsSUFBWTtRQUN2QyxLQUFLLEVBQUUsQ0FBQztRQURtQixTQUFJLEdBQUosSUFBSSxDQUFRO0lBRXpDLENBQUM7SUFFTSxNQUFNLENBQUMsVUFBc0I7UUFDbEMsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDNUMsQ0FBQztDQUNGO0FBRUQ7Ozs7R0FJRztBQUNILE1BQWEsUUFBUyxTQUFRLHNCQUFTO0lBeUNyQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQW9COztRQUM1RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sUUFBUSxHQUFHLDJCQUFnQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwRCxLQUFLLENBQUMsd0JBQXdCLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMzRCxLQUFLLENBQUMsd0JBQXdCLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU1RCxJQUFJLENBQUMsV0FBVyxTQUFHLEtBQUssQ0FBQyxpQkFBaUIsbUNBQUksSUFBSSxjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUU7WUFDM0YsV0FBVyxFQUFFLDZCQUE2QixJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRTtTQUN6RCxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFOUMsTUFBTSxRQUFRLEdBQUcsSUFBSSw0QkFBYyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDcEQsWUFBWSxFQUFFLFFBQVEsQ0FBQyxZQUFZO1lBQ25DLFlBQVksRUFBRSxrQkFBa0I7WUFDaEMsVUFBVSxFQUFFO2dCQUNWLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7Z0JBQ3JDLDJCQUEyQixFQUFFLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxTQUFTO2dCQUNyRSxvQkFBb0IsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVM7YUFDakQ7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzVFLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNwRixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzlGLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN4RixDQUFDOztBQXBFSCw0QkFxRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgeyBDdXN0b21SZXNvdXJjZSB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCAqIGFzIHNlY3JldHNtYW5hZ2VyIGZyb20gJ2F3cy1jZGstbGliL2F3cy1zZWNyZXRzbWFuYWdlcic7XG5pbXBvcnQgeyBDb25zdHJ1Y3QsIElDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IFNsYWNrQXBwTWFuaWZlc3QsIFNsYWNrQXBwTWFuaWZlc3RQcm9wcyB9IGZyb20gJy4vbWFuaWZlc3QnO1xuaW1wb3J0IHsgU2xhY2tBcHBQcm92aWRlciB9IGZyb20gJy4vcHJvdmlkZXInO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgU2xhY2tBcHBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcFByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBkZWZpbml0aW9uIG9mIHRoZSBhcHAgbWFuaWZlc3RcbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vcmVmZXJlbmNlL21hbmlmZXN0c1xuICAgKi9cbiAgcmVhZG9ubHkgbWFuaWZlc3Q6IFNsYWNrQXBwTWFuaWZlc3REZWZpbml0aW9uO1xuXG4gIC8qKlxuICAgKiBBbiBBV1MgU2VjcmV0cyBNYW5hZ2VyIHNlY3JldCBjb250YWluaW5nIHRoZSBhcHAgY29uZmlndXJhdGlvbiB0b2tlblxuICAgKlxuICAgKiBNdXN0IHVzZSB0aGUgZm9sbG93aW5nIEpTT04gZm9ybWF0OlxuICAgKlxuICAgKiBgYGBcbiAgICoge1xuICAgKiAgIFwicmVmcmVzaFRva2VuXCI6IFwiPHRva2VuPlwiXG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICByZWFkb25seSBjb25maWd1cmF0aW9uVG9rZW5TZWNyZXQ6IHNlY3JldHNtYW5hZ2VyLklTZWNyZXQ7XG5cbiAgLyoqXG4gICAqIFRoZSBBV1MgU2VjcmV0cyBNYW5hZ2VyIHNlY3JldCB3aGVyZSB0byBzdG9yZSB0aGUgYXBwIGNyZWRlbnRpYWxzXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gYSBuZXcgc2VjcmV0IGlzIGNyZWF0ZWRcbiAgICovXG4gIHJlYWRvbmx5IGNyZWRlbnRpYWxzU2VjcmV0Pzogc2VjcmV0c21hbmFnZXIuSVNlY3JldDtcbn1cblxuLyoqXG4gKiBBIFNsYWNrIGFwcCBtYW5pZmVzdCBkZWZpbml0aW9uXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTbGFja0FwcE1hbmlmZXN0RGVmaW5pdGlvbiB7XG4gIC8qKlxuICAgKiBDcmVhdGUgYSBTbGFjayBhcHAgbWFuaWZlc3QgZnJvbSBhIEpTT04gYXBwIG1hbmlmZXN0IGVuY29kZWQgYXMgYSBzdHJpbmdcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbVN0cmluZyhtYW5pZmVzdDogc3RyaW5nKTogU2xhY2tBcHBNYW5pZmVzdERlZmluaXRpb24ge1xuICAgIHJldHVybiBuZXcgU3RyaW5nTWFuaWZlc3QobWFuaWZlc3QpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBTbGFjayBhcHAgbWFuaWZlc3QgZnJvbSBhIGZpbGUgY29udGFpbmcgYSBKU09OIGFwcCBtYW5pZmVzdFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tRmlsZShmaWxlOiBzdHJpbmcpOiBTbGFja0FwcE1hbmlmZXN0RGVmaW5pdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBGaWxlTWFuaWZlc3QoZmlsZSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIFNsYWNrIGFwcCBtYW5pZmVzdCBieSBzcGVjaWZ5aW5nIHByb3BlcnRpZXNcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbU1hbmlmZXN0KHByb3BzOiBTbGFja0FwcE1hbmlmZXN0UHJvcHMpOiBTbGFja0FwcE1hbmlmZXN0RGVmaW5pdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBTbGFja0FwcE1hbmlmZXN0KHByb3BzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW5kZXJzIHRoZSBKU09OIGFwcCBtYW5pZmVzdCBlbmNvZGVkIGFzIGEgc3RyaW5nXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVuZGVyKGNvbnN0cnVjdDogSUNvbnN0cnVjdCk6IHN0cmluZztcbn1cblxuY2xhc3MgU3RyaW5nTWFuaWZlc3QgZXh0ZW5kcyBTbGFja0FwcE1hbmlmZXN0RGVmaW5pdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgbWFuaWZlc3Q6IHN0cmluZykge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwdWJsaWMgcmVuZGVyKF9jb25zdHJ1Y3Q6IElDb25zdHJ1Y3QpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm1hbmlmZXN0O1xuICB9XG59XG5cbmNsYXNzIEZpbGVNYW5pZmVzdCBleHRlbmRzIFNsYWNrQXBwTWFuaWZlc3REZWZpbml0aW9uIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBmaWxlOiBzdHJpbmcpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIHJlbmRlcihfY29uc3RydWN0OiBJQ29uc3RydWN0KTogc3RyaW5nIHtcbiAgICByZXR1cm4gZnMucmVhZEZpbGVTeW5jKHRoaXMuZmlsZSwgJ3V0ZjgnKTtcbiAgfVxufVxuXG4vKipcbiAqIEEgU2xhY2sgYXBwbGljYXRpb24gZGVwbG95ZWQgd2l0aCBhIG1hbmlmZXN0XG4gKlxuICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vcmVmZXJlbmNlL21hbmlmZXN0c1xuICovXG5leHBvcnQgY2xhc3MgU2xhY2tBcHAgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBhcHBsaWNhdGlvblxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGFwcElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFuIEFXUyBTZWNyZXRzIE1hbmFnZXIgc2VjcmV0IGNvbnRhaW5pbmcgdGhlIGNyZWRlbnRpYWxzIG9mIHRoZSBhcHBsaWNhdGlvbi5cbiAgICpcbiAgICogYGBgXG4gICAqIHtcbiAgICogICBcImFwcElkXCI6IFwiLi4uXCIsXG4gICAqICAgXCJjbGllbnRJZFwiOiBcIi4uLlwiLFxuICAgKiAgIFwiY2xpZW50U2VjcmV0XCI6IFwiLi4uXCIsXG4gICAqICAgXCJ2ZXJpZmljYXRpb25Ub2tlblwiOiBcIi4uLlwiLFxuICAgKiAgIFwic2lnbmluZ1NlY3JldFwiOiBcIi4uLlwiXG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY3JlZGVudGlhbHM6IHNlY3JldHNtYW5hZ2VyLklTZWNyZXQ7XG5cbiAgLyoqXG4gICAqIEEgZHluYW1pYyByZWZlcmVuY2UgdG8gdGhlIGNsaWVudCBJRCBvZiB0aGUgYXBwXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY2xpZW50SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQSBkeW5hbWljIHJlZmVyZW5jZSB0byB0aGUgY2xpZW50IHNlY3JldCBvZiB0aGUgYXBwXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY2xpZW50U2VjcmV0OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgZHluYW1pYyByZWZlcmVuY2UgdG8gdGhlIHZlcmlmaWNhdGlvbiB0b2tlbiBvZiB0aGUgYXBwXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdmVyaWZpY2F0aW9uVG9rZW46IHN0cmluZztcblxuICAvKipcbiAgICogQSBkeW5hbWljIHJlZmVyZW5jZSB0byB0aGUgc2lnbmluZyBzZWNyZXQgb2YgdGhlIGFwcFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNpZ25pbmdTZWNyZXQ6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogU2xhY2tBcHBQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBwcm92aWRlciA9IFNsYWNrQXBwUHJvdmlkZXIuZ2V0T3JDcmVhdGUodGhpcyk7XG4gICAgcHJvcHMuY29uZmlndXJhdGlvblRva2VuU2VjcmV0LmdyYW50UmVhZChwcm92aWRlci5oYW5kbGVyKTtcbiAgICBwcm9wcy5jb25maWd1cmF0aW9uVG9rZW5TZWNyZXQuZ3JhbnRXcml0ZShwcm92aWRlci5oYW5kbGVyKTtcblxuICAgIHRoaXMuY3JlZGVudGlhbHMgPSBwcm9wcy5jcmVkZW50aWFsc1NlY3JldCA/PyBuZXcgc2VjcmV0c21hbmFnZXIuU2VjcmV0KHRoaXMsICdDcmVkZW50aWFscycsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiBgQ3JlZGVudGlhbHMgZm9yIFNsYWNrIEFwcCAke3RoaXMubm9kZS5pZH1gLFxuICAgIH0pO1xuICAgIHRoaXMuY3JlZGVudGlhbHMuZ3JhbnRXcml0ZShwcm92aWRlci5oYW5kbGVyKTtcblxuICAgIGNvbnN0IHJlc291cmNlID0gbmV3IEN1c3RvbVJlc291cmNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIHNlcnZpY2VUb2tlbjogcHJvdmlkZXIuc2VydmljZVRva2VuLFxuICAgICAgcmVzb3VyY2VUeXBlOiAnQ3VzdG9tOjpTbGFja0FwcCcsXG4gICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgIG1hbmlmZXN0OiBwcm9wcy5tYW5pZmVzdC5yZW5kZXIodGhpcyksXG4gICAgICAgIGNvbmZpZ3VyYXRpb25Ub2tlblNlY3JldEFybjogcHJvcHMuY29uZmlndXJhdGlvblRva2VuU2VjcmV0LnNlY3JldEFybixcbiAgICAgICAgY3JlZGVudGlhbHNTZWNyZXRBcm46IHRoaXMuY3JlZGVudGlhbHMuc2VjcmV0QXJuLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIHRoaXMuYXBwSWQgPSByZXNvdXJjZS5nZXRBdHRTdHJpbmcoJ2FwcElkJyk7XG4gICAgdGhpcy5jbGllbnRJZCA9IHRoaXMuY3JlZGVudGlhbHMuc2VjcmV0VmFsdWVGcm9tSnNvbignY2xpZW50SWQnKS50b1N0cmluZygpO1xuICAgIHRoaXMuY2xpZW50U2VjcmV0ID0gdGhpcy5jcmVkZW50aWFscy5zZWNyZXRWYWx1ZUZyb21Kc29uKCdjbGllbnRTZWNyZXQnKS50b1N0cmluZygpO1xuICAgIHRoaXMudmVyaWZpY2F0aW9uVG9rZW4gPSB0aGlzLmNyZWRlbnRpYWxzLnNlY3JldFZhbHVlRnJvbUpzb24oJ3ZlcmlmaWNhdGlvblRva2VuJykudG9TdHJpbmcoKTtcbiAgICB0aGlzLnNpZ25pbmdTZWNyZXQgPSB0aGlzLmNyZWRlbnRpYWxzLnNlY3JldFZhbHVlRnJvbUpzb24oJ3NpZ25pbmdTZWNyZXQnKS50b1N0cmluZygpO1xuICB9XG59XG4iXX0=
|
|
@@ -2,46 +2,33 @@ import * as cdk from 'aws-cdk-lib';
|
|
|
2
2
|
import * as events from 'aws-cdk-lib/aws-events';
|
|
3
3
|
import { Construct } from 'constructs';
|
|
4
4
|
/**
|
|
5
|
-
* Properties for a SlackEvents
|
|
6
|
-
*
|
|
7
|
-
* @stability stable
|
|
5
|
+
* Properties for a SlackEvents
|
|
8
6
|
*/
|
|
9
7
|
export interface SlackEventsProps {
|
|
10
8
|
/**
|
|
11
|
-
* The signing secret of the Slack app
|
|
12
|
-
*
|
|
13
|
-
* @stability stable
|
|
9
|
+
* The signing secret of the Slack app
|
|
14
10
|
*/
|
|
15
11
|
readonly signingSecret: cdk.SecretValue;
|
|
16
12
|
/**
|
|
17
|
-
* A name for the API Gateway resource
|
|
13
|
+
* A name for the API Gateway resource
|
|
18
14
|
*
|
|
19
15
|
* @default SlackEventsApi
|
|
20
|
-
* @stability stable
|
|
21
16
|
*/
|
|
22
17
|
readonly apiName?: string;
|
|
23
18
|
/**
|
|
24
|
-
* Whether to use a custom event bus
|
|
19
|
+
* Whether to use a custom event bus
|
|
25
20
|
*
|
|
26
21
|
* @default false
|
|
27
|
-
* @stability stable
|
|
28
22
|
*/
|
|
29
23
|
readonly customEventBus?: boolean;
|
|
30
24
|
}
|
|
31
25
|
/**
|
|
32
|
-
* Send Slack events to Amazon EventBridge
|
|
33
|
-
*
|
|
34
|
-
* @stability stable
|
|
26
|
+
* Send Slack events to Amazon EventBridge
|
|
35
27
|
*/
|
|
36
28
|
export declare class SlackEvents extends Construct {
|
|
37
29
|
/**
|
|
38
|
-
* The custom event bus where Slack events are sent
|
|
39
|
-
*
|
|
40
|
-
* @stability stable
|
|
30
|
+
* The custom event bus where Slack events are sent
|
|
41
31
|
*/
|
|
42
32
|
readonly eventBus?: events.EventBus;
|
|
43
|
-
/**
|
|
44
|
-
* @stability stable
|
|
45
|
-
*/
|
|
46
33
|
constructor(scope: Construct, id: string, props: SlackEventsProps);
|
|
47
34
|
}
|
|
@@ -11,14 +11,9 @@ const logs = require("aws-cdk-lib/aws-logs");
|
|
|
11
11
|
const constructs_1 = require("constructs");
|
|
12
12
|
const events_function_1 = require("./events-function");
|
|
13
13
|
/**
|
|
14
|
-
* Send Slack events to Amazon EventBridge
|
|
15
|
-
*
|
|
16
|
-
* @stability stable
|
|
14
|
+
* Send Slack events to Amazon EventBridge
|
|
17
15
|
*/
|
|
18
16
|
class SlackEvents extends constructs_1.Construct {
|
|
19
|
-
/**
|
|
20
|
-
* @stability stable
|
|
21
|
-
*/
|
|
22
17
|
constructor(scope, id, props) {
|
|
23
18
|
super(scope, id);
|
|
24
19
|
if (props.customEventBus) {
|
|
@@ -47,5 +42,5 @@ class SlackEvents extends constructs_1.Construct {
|
|
|
47
42
|
}
|
|
48
43
|
exports.SlackEvents = SlackEvents;
|
|
49
44
|
_a = JSII_RTTI_SYMBOL_1;
|
|
50
|
-
SlackEvents[_a] = { fqn: "cloudstructs.SlackEvents", version: "0.4.
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
SlackEvents[_a] = { fqn: "cloudstructs.SlackEvents", version: "0.4.21" };
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2xhY2stZXZlbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsZ0VBQWdFO0FBQ2hFLDZFQUE2RTtBQUM3RSxtQ0FBbUM7QUFDbkMsaURBQWlEO0FBQ2pELDZDQUE2QztBQUM3QywyQ0FBdUM7QUFDdkMsdURBQW1EO0FBMEJuRDs7R0FFRztBQUNILE1BQWEsV0FBWSxTQUFRLHNCQUFTO0lBTXhDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBdUI7UUFDL0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLEtBQUssQ0FBQyxjQUFjLEVBQUU7WUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsOEJBQThCO1FBQzlCLE1BQU0sT0FBTyxHQUFHLElBQUksZ0NBQWMsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFO1lBQ2xELFlBQVksRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVM7WUFDMUMsV0FBVyxFQUFFO2dCQUNYLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFO2FBQ3JEO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUN0RTtRQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFM0MsV0FBVztRQUNYLE1BQU0sT0FBTyxHQUFHLElBQUksWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7WUFDL0Qsa0JBQWtCLEVBQUUsSUFBSSxZQUFZLENBQUMscUJBQXFCLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQztZQUNsRixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87U0FDdkIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUU7WUFDckMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxXQUFXO1NBQzNCLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBcENILGtDQXFDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFwaWdhdGV3YXl2MiBmcm9tICdAYXdzLWNkay9hd3MtYXBpZ2F0ZXdheXYyLWFscGhhJztcbmltcG9ydCAqIGFzIGludGVncmF0aW9ucyBmcm9tICdAYXdzLWNkay9hd3MtYXBpZ2F0ZXdheXYyLWludGVncmF0aW9ucy1hbHBoYSc7XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0ICogYXMgZXZlbnRzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1ldmVudHMnO1xuaW1wb3J0ICogYXMgbG9ncyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbG9ncyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IEV2ZW50c0Z1bmN0aW9uIH0gZnJvbSAnLi9ldmVudHMtZnVuY3Rpb24nO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgU2xhY2tFdmVudHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbGFja0V2ZW50c1Byb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBzaWduaW5nIHNlY3JldCBvZiB0aGUgU2xhY2sgYXBwXG4gICAqL1xuICByZWFkb25seSBzaWduaW5nU2VjcmV0OiBjZGsuU2VjcmV0VmFsdWU7XG5cbiAgLyoqXG4gICAqIEEgbmFtZSBmb3IgdGhlIEFQSSBHYXRld2F5IHJlc291cmNlXG4gICAqXG4gICAqIEBkZWZhdWx0IFNsYWNrRXZlbnRzQXBpXG4gICAqL1xuICByZWFkb25seSBhcGlOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHVzZSBhIGN1c3RvbSBldmVudCBidXNcbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGN1c3RvbUV2ZW50QnVzPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBTZW5kIFNsYWNrIGV2ZW50cyB0byBBbWF6b24gRXZlbnRCcmlkZ2VcbiAqL1xuZXhwb3J0IGNsYXNzIFNsYWNrRXZlbnRzIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIFRoZSBjdXN0b20gZXZlbnQgYnVzIHdoZXJlIFNsYWNrIGV2ZW50cyBhcmUgc2VudFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGV2ZW50QnVzPzogZXZlbnRzLkV2ZW50QnVzO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBTbGFja0V2ZW50c1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGlmIChwcm9wcy5jdXN0b21FdmVudEJ1cykge1xuICAgICAgdGhpcy5ldmVudEJ1cyA9IG5ldyBldmVudHMuRXZlbnRCdXModGhpcywgJ0V2ZW50QnVzJyk7XG4gICAgfVxuXG4gICAgLy8gU2VuZCBldmVudCB0byB0aGUgZXZlbnQgYnVzXG4gICAgY29uc3QgaGFuZGxlciA9IG5ldyBFdmVudHNGdW5jdGlvbih0aGlzLCAnaGFuZGxlcicsIHtcbiAgICAgIGxvZ1JldGVudGlvbjogbG9ncy5SZXRlbnRpb25EYXlzLk9ORV9NT05USCxcbiAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgIFNMQUNLX1NJR05JTkdfU0VDUkVUOiBwcm9wcy5zaWduaW5nU2VjcmV0LnRvU3RyaW5nKCksXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMuZXZlbnRCdXMpIHtcbiAgICAgIGhhbmRsZXIuYWRkRW52aXJvbm1lbnQoJ0VWRU5UX0JVU19OQU1FJywgdGhpcy5ldmVudEJ1cy5ldmVudEJ1c05hbWUpO1xuICAgIH1cblxuICAgIGV2ZW50cy5FdmVudEJ1cy5ncmFudEFsbFB1dEV2ZW50cyhoYW5kbGVyKTtcblxuICAgIC8vIEhUVFAgQVBJXG4gICAgY29uc3QgaHR0cEFwaSA9IG5ldyBhcGlnYXRld2F5djIuSHR0cEFwaSh0aGlzLCAnU2xhY2tFdmVudHNBcGknLCB7XG4gICAgICBkZWZhdWx0SW50ZWdyYXRpb246IG5ldyBpbnRlZ3JhdGlvbnMuSHR0cExhbWJkYUludGVncmF0aW9uKCdJbnRlZ3JhdGlvbicsIGhhbmRsZXIpLFxuICAgICAgYXBpTmFtZTogcHJvcHMuYXBpTmFtZSxcbiAgICB9KTtcblxuICAgIG5ldyBjZGsuQ2ZuT3V0cHV0KHRoaXMsICdBcGlFbmRwb2ludCcsIHtcbiAgICAgIHZhbHVlOiBodHRwQXBpLmFwaUVuZHBvaW50LFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,40 +1,27 @@
|
|
|
1
1
|
import { SecretValue } from 'aws-cdk-lib';
|
|
2
2
|
import { Construct } from 'constructs';
|
|
3
3
|
/**
|
|
4
|
-
* Properties for a SlackTextract
|
|
5
|
-
*
|
|
6
|
-
* @stability stable
|
|
4
|
+
* Properties for a SlackTextract
|
|
7
5
|
*/
|
|
8
6
|
export interface SlackTextractProps {
|
|
9
7
|
/**
|
|
10
|
-
* The signing secret of the Slack app
|
|
11
|
-
*
|
|
12
|
-
* @stability stable
|
|
8
|
+
* The signing secret of the Slack app
|
|
13
9
|
*/
|
|
14
10
|
readonly signingSecret: SecretValue;
|
|
15
11
|
/**
|
|
16
12
|
* The **bot** token of the Slack app.
|
|
17
13
|
*
|
|
18
14
|
* The following scopes are required: `chat:write` and `files:read`
|
|
19
|
-
*
|
|
20
|
-
* @stability stable
|
|
21
15
|
*/
|
|
22
16
|
readonly botToken: SecretValue;
|
|
23
17
|
/**
|
|
24
18
|
* The application id of the Slack app.
|
|
25
|
-
*
|
|
26
|
-
* @stability stable
|
|
27
19
|
*/
|
|
28
20
|
readonly appId: string;
|
|
29
21
|
}
|
|
30
22
|
/**
|
|
31
|
-
* Extract text from images posted to Slack using Amazon Textract
|
|
32
|
-
*
|
|
33
|
-
* @stability stable
|
|
23
|
+
* Extract text from images posted to Slack using Amazon Textract
|
|
34
24
|
*/
|
|
35
25
|
export declare class SlackTextract extends Construct {
|
|
36
|
-
/**
|
|
37
|
-
* @stability stable
|
|
38
|
-
*/
|
|
39
26
|
constructor(scope: Construct, id: string, props: SlackTextractProps);
|
|
40
27
|
}
|