@liflig/cdk 3.26.4 → 3.26.6

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.
@@ -4,30 +4,30 @@ requires-python = ">=3.14"
4
4
 
5
5
  [[package]]
6
6
  name = "boto3"
7
- version = "1.42.92"
7
+ version = "1.42.97"
8
8
  source = { registry = "https://pypi.org/simple" }
9
9
  dependencies = [
10
10
  { name = "botocore" },
11
11
  { name = "jmespath" },
12
12
  { name = "s3transfer" },
13
13
  ]
14
- sdist = { url = "https://files.pythonhosted.org/packages/e7/3b/84cafa37e85a57618554bd2bc21bd569417097f45f18c23ef488e6c69683/boto3-1.42.92.tar.gz", hash = "sha256:55ec6ef6fc81f46d567a7d1d398d1e5c375d468905d0ccd9e1f767f0c77dbe9b", size = 113207, upload-time = "2026-04-20T19:38:17.293Z" }
14
+ sdist = { url = "https://files.pythonhosted.org/packages/55/7d/5c6fa0bb9fd5caf865b9356411793900304328bcd0bc1eda96a32a1368a6/boto3-1.42.97.tar.gz", hash = "sha256:2833dbeda3670ea610ad48dff7d27cdc829dbbfcdfbc6b750b673948e949b6f0", size = 113217, upload-time = "2026-04-27T20:39:17.646Z" }
15
15
  wheels = [
16
- { url = "https://files.pythonhosted.org/packages/8f/8f/350ffd50aaa515429464deb1dc85893a21a64cb41892feb6b22ce87304ad/boto3-1.42.92-py3-none-any.whl", hash = "sha256:c90d9a170faa0585755fa103a3cd9595e1f53443864e902c180f3d8177589125", size = 140555, upload-time = "2026-04-20T19:38:14.323Z" },
16
+ { url = "https://files.pythonhosted.org/packages/38/43/84c1888139aa1aaf1dc53f8f914e6ec629e5a571fbafdd42fb2d98ac361f/boto3-1.42.97-py3-none-any.whl", hash = "sha256:966e49f0510af9a64057a902b7df53d4348c447de0d3df4cc855dfd85e058fcd", size = 140556, upload-time = "2026-04-27T20:39:15.509Z" },
17
17
  ]
18
18
 
19
19
  [[package]]
20
20
  name = "botocore"
21
- version = "1.42.92"
21
+ version = "1.42.97"
22
22
  source = { registry = "https://pypi.org/simple" }
23
23
  dependencies = [
24
24
  { name = "jmespath" },
25
25
  { name = "python-dateutil" },
26
26
  { name = "urllib3" },
27
27
  ]
28
- sdist = { url = "https://files.pythonhosted.org/packages/d5/0a/6785ce224ba4483b3e1282d959e1dd2c2898823336f013464c43cb154036/botocore-1.42.92.tar.gz", hash = "sha256:f1193d3057a2d0267353d7ef4e136be37ea432336d097fcb1951fae566ca3a22", size = 15235239, upload-time = "2026-04-20T19:38:05.085Z" }
28
+ sdist = { url = "https://files.pythonhosted.org/packages/c6/95/c37edb602948fad2253ffd1bb3dba5b938645bd1845ee4160350136a0f41/botocore-1.42.97.tar.gz", hash = "sha256:5c0bb00e32d16ff6d278cc8c9e10dc3672d9c1d569031635ac3c908a60de8310", size = 15269348, upload-time = "2026-04-27T20:39:05.625Z" }
29
29
  wheels = [
30
- { url = "https://files.pythonhosted.org/packages/32/b8/41d4d7ba75a4fb4f11362e96371a12695bc6ba0bb7cc680137db0213f97e/botocore-1.42.92-py3-none-any.whl", hash = "sha256:09ddefddbb1565ceef4b44b4b6e61b1ca5f12701d1494ecc85c1133d1b1e81fb", size = 14916275, upload-time = "2026-04-20T19:38:01.684Z" },
30
+ { url = "https://files.pythonhosted.org/packages/e3/d2/8e025ba1a4e257879af72d06913272311af79673d82fa2581a351b924317/botocore-1.42.97-py3-none-any.whl", hash = "sha256:77d2c8ce1bc592d3fbd7c01c35836f4a5b0cac2ca03ccdf6ffc60faa16b5fadc", size = 14950367, upload-time = "2026-04-27T20:39:01.261Z" },
31
31
  ]
32
32
 
33
33
  [[package]]
@@ -59,11 +59,11 @@ wheels = [
59
59
 
60
60
  [[package]]
61
61
  name = "packaging"
62
- version = "26.1"
62
+ version = "26.2"
63
63
  source = { registry = "https://pypi.org/simple" }
64
- sdist = { url = "https://files.pythonhosted.org/packages/df/de/0d2b39fb4af88a0258f3bac87dfcbb48e73fbdea4a2ed0e2213f9a4c2f9a/packaging-26.1.tar.gz", hash = "sha256:f042152b681c4bfac5cae2742a55e103d27ab2ec0f3d88037136b6bfe7c9c5de", size = 215519, upload-time = "2026-04-14T21:12:49.362Z" }
64
+ sdist = { url = "https://files.pythonhosted.org/packages/d7/f1/e7a6dd94a8d4a5626c03e4e99c87f241ba9e350cd9e6d75123f992427270/packaging-26.2.tar.gz", hash = "sha256:ff452ff5a3e828ce110190feff1178bb1f2ea2281fa2075aadb987c2fb221661", size = 228134, upload-time = "2026-04-24T20:15:23.917Z" }
65
65
  wheels = [
66
- { url = "https://files.pythonhosted.org/packages/7a/c2/920ef838e2f0028c8262f16101ec09ebd5969864e5a64c4c05fad0617c56/packaging-26.1-py3-none-any.whl", hash = "sha256:5d9c0669c6285e491e0ced2eee587eaf67b670d94a19e94e3984a481aba6802f", size = 95831, upload-time = "2026-04-14T21:12:47.56Z" },
66
+ { url = "https://files.pythonhosted.org/packages/df/b2/87e62e8c3e2f4b32e5fe99e0b86d576da1312593b39f47d8ceef365e95ed/packaging-26.2-py3-none-any.whl", hash = "sha256:5fc45236b9446107ff2415ce77c807cee2862cb6fac22b8a73826d0693b0980e", size = 100195, upload-time = "2026-04-24T20:15:22.081Z" },
67
67
  ]
68
68
 
69
69
  [[package]]
@@ -126,14 +126,14 @@ wheels = [
126
126
 
127
127
  [[package]]
128
128
  name = "s3transfer"
129
- version = "0.16.0"
129
+ version = "0.16.1"
130
130
  source = { registry = "https://pypi.org/simple" }
131
131
  dependencies = [
132
132
  { name = "botocore" },
133
133
  ]
134
- sdist = { url = "https://files.pythonhosted.org/packages/05/04/74127fc843314818edfa81b5540e26dd537353b123a4edc563109d8f17dd/s3transfer-0.16.0.tar.gz", hash = "sha256:8e990f13268025792229cd52fa10cb7163744bf56e719e0b9cb925ab79abf920", size = 153827, upload-time = "2025-12-01T02:30:59.114Z" }
134
+ sdist = { url = "https://files.pythonhosted.org/packages/46/29/af14f4ef3c11a50435308660e2cc68761c9a7742475e0585cd4396b91777/s3transfer-0.16.1.tar.gz", hash = "sha256:8e424355754b9ccb32467bdc568edf55be82692ef2002d934b1311dbb3b9e524", size = 154801, upload-time = "2026-04-22T20:36:06.475Z" }
135
135
  wheels = [
136
- { url = "https://files.pythonhosted.org/packages/fc/51/727abb13f44c1fcf6d145979e1535a35794db0f6e450a0cb46aa24732fe2/s3transfer-0.16.0-py3-none-any.whl", hash = "sha256:18e25d66fed509e3868dc1572b3f427ff947dd2c56f844a5bf09481ad3f3b2fe", size = 86830, upload-time = "2025-12-01T02:30:57.729Z" },
136
+ { url = "https://files.pythonhosted.org/packages/03/19/90d7d4ed51932c022d53f1d02d564b62d10e272692a1f9b76425c1ad2a02/s3transfer-0.16.1-py3-none-any.whl", hash = "sha256:61bcd00ccb83b21a0fe7e91a553fff9729d46c83b4e0106e7c314a733891f7c2", size = 86825, upload-time = "2026-04-22T20:36:04.992Z" },
137
137
  ]
138
138
 
139
139
  [[package]]
@@ -9,6 +9,11 @@ export class CrossRegionSsmParameter extends constructs.Construct {
9
9
  const physicalResourceId = cr.PhysicalResourceId.of(props.name);
10
10
  // TODO: Can we somehow propagate tags as well?
11
11
  new cr.AwsCustomResource(this, "Resoure", {
12
+ // Use SDK bundled with the Lambda runtime instead of installing the
13
+ // latest at execution time. Avoids ~60s npm install on every invocation
14
+ // and removes a runtime dependency on npmjs.com availability.
15
+ // https://constructs.dev/packages/aws-cdk-lib/v/2.251.0?submodule=custom_resources&lang=typescript
16
+ installLatestAwsSdk: false,
12
17
  onUpdate: {
13
18
  service: "SSM",
14
19
  action: "putParameter",
@@ -39,4 +44,4 @@ export class CrossRegionSsmParameter extends constructs.Construct {
39
44
  });
40
45
  }
41
46
  }
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Jvc3MtcmVnaW9uLXNzbS1wYXJhbWV0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY3Jvc3MtcmVnaW9uLXNzbS1wYXJhbWV0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUNsRCxPQUFPLEtBQUssVUFBVSxNQUFNLFlBQVksQ0FBQTtBQVF4Qzs7R0FFRztBQUNILE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxVQUFVLENBQUMsU0FBUztJQUMvRCxZQUFZLEtBQTJCLEVBQUUsRUFBVSxFQUFFLEtBQVk7UUFDL0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQTtRQUVoQixNQUFNLGtCQUFrQixHQUFHLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBRS9ELCtDQUErQztRQUMvQyxJQUFJLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFO1lBQ3hDLFFBQVEsRUFBRTtnQkFDUixPQUFPLEVBQUUsS0FBSztnQkFDZCxNQUFNLEVBQUUsY0FBYztnQkFDdEIsVUFBVSxFQUFFO29CQUNWLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtvQkFDaEIsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO29CQUNsQixJQUFJLEVBQUUsUUFBUTtvQkFDZCxTQUFTLEVBQUUsSUFBSTtpQkFDaEI7Z0JBQ0QsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO2dCQUNwQixrQkFBa0I7YUFDbkI7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsTUFBTSxFQUFFLGlCQUFpQjtnQkFDekIsVUFBVSxFQUFFO29CQUNWLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtpQkFDakI7Z0JBQ0QsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO2dCQUNwQixrQkFBa0I7YUFDbkI7WUFDRCxNQUFNLEVBQUUsRUFBRSxDQUFDLHVCQUF1QixDQUFDLFlBQVksQ0FBQztnQkFDOUMsc0RBQXNEO2dCQUN0RCxvREFBb0Q7Z0JBQ3BELHFCQUFxQjtnQkFDckIsU0FBUyxFQUFFLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxZQUFZO2FBQ25ELENBQUM7U0FDSCxDQUFDLENBQUE7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjciBmcm9tIFwiYXdzLWNkay1saWIvY3VzdG9tLXJlc291cmNlc1wiXG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCJcblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgcmVnaW9uOiBzdHJpbmdcbiAgbmFtZTogc3RyaW5nXG4gIHZhbHVlOiBzdHJpbmdcbn1cblxuLyoqXG4gKiBTU00gUGFyYW1ldGVyIHN0b3JlZCBpbiBhbm90aGVyIHJlZ2lvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIENyb3NzUmVnaW9uU3NtUGFyYW1ldGVyIGV4dGVuZHMgY29uc3RydWN0cy5Db25zdHJ1Y3Qge1xuICBjb25zdHJ1Y3RvcihzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZClcblxuICAgIGNvbnN0IHBoeXNpY2FsUmVzb3VyY2VJZCA9IGNyLlBoeXNpY2FsUmVzb3VyY2VJZC5vZihwcm9wcy5uYW1lKVxuXG4gICAgLy8gVE9ETzogQ2FuIHdlIHNvbWVob3cgcHJvcGFnYXRlIHRhZ3MgYXMgd2VsbD9cbiAgICBuZXcgY3IuQXdzQ3VzdG9tUmVzb3VyY2UodGhpcywgXCJSZXNvdXJlXCIsIHtcbiAgICAgIG9uVXBkYXRlOiB7XG4gICAgICAgIHNlcnZpY2U6IFwiU1NNXCIsXG4gICAgICAgIGFjdGlvbjogXCJwdXRQYXJhbWV0ZXJcIixcbiAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgIE5hbWU6IHByb3BzLm5hbWUsXG4gICAgICAgICAgVmFsdWU6IHByb3BzLnZhbHVlLFxuICAgICAgICAgIFR5cGU6IFwiU3RyaW5nXCIsXG4gICAgICAgICAgT3ZlcndyaXRlOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICByZWdpb246IHByb3BzLnJlZ2lvbixcbiAgICAgICAgcGh5c2ljYWxSZXNvdXJjZUlkLFxuICAgICAgfSxcbiAgICAgIG9uRGVsZXRlOiB7XG4gICAgICAgIHNlcnZpY2U6IFwiU1NNXCIsXG4gICAgICAgIGFjdGlvbjogXCJkZWxldGVQYXJhbWV0ZXJcIixcbiAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgIE5hbWU6IHByb3BzLm5hbWUsXG4gICAgICAgIH0sXG4gICAgICAgIHJlZ2lvbjogcHJvcHMucmVnaW9uLFxuICAgICAgICBwaHlzaWNhbFJlc291cmNlSWQsXG4gICAgICB9LFxuICAgICAgcG9saWN5OiBjci5Bd3NDdXN0b21SZXNvdXJjZVBvbGljeS5mcm9tU2RrQ2FsbHMoe1xuICAgICAgICAvLyBXZSBncmFudCB0aGUgQ3VzdG9tIFJlc291cmNlIGFjY2VzcyB0byB3cml0ZSB0byBhbnlcbiAgICAgICAgLy8gcGFyYW1ldGVyLCBhcyB0aGlzIGlzIG5lZWRlZCB0byBiZSBhYmxlIHRvIHJlbmFtZVxuICAgICAgICAvLyBhIHBhcmFtZXRlciBsYXRlci5cbiAgICAgICAgcmVzb3VyY2VzOiBjci5Bd3NDdXN0b21SZXNvdXJjZVBvbGljeS5BTllfUkVTT1VSQ0UsXG4gICAgICB9KSxcbiAgICB9KVxuICB9XG59XG4iXX0=
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Jvc3MtcmVnaW9uLXNzbS1wYXJhbWV0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY3Jvc3MtcmVnaW9uLXNzbS1wYXJhbWV0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUNsRCxPQUFPLEtBQUssVUFBVSxNQUFNLFlBQVksQ0FBQTtBQVF4Qzs7R0FFRztBQUNILE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxVQUFVLENBQUMsU0FBUztJQUMvRCxZQUFZLEtBQTJCLEVBQUUsRUFBVSxFQUFFLEtBQVk7UUFDL0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQTtRQUVoQixNQUFNLGtCQUFrQixHQUFHLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBRS9ELCtDQUErQztRQUMvQyxJQUFJLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFO1lBQ3hDLG9FQUFvRTtZQUNwRSx3RUFBd0U7WUFDeEUsOERBQThEO1lBQzlELG1HQUFtRztZQUNuRyxtQkFBbUIsRUFBRSxLQUFLO1lBQzFCLFFBQVEsRUFBRTtnQkFDUixPQUFPLEVBQUUsS0FBSztnQkFDZCxNQUFNLEVBQUUsY0FBYztnQkFDdEIsVUFBVSxFQUFFO29CQUNWLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtvQkFDaEIsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO29CQUNsQixJQUFJLEVBQUUsUUFBUTtvQkFDZCxTQUFTLEVBQUUsSUFBSTtpQkFDaEI7Z0JBQ0QsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO2dCQUNwQixrQkFBa0I7YUFDbkI7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsTUFBTSxFQUFFLGlCQUFpQjtnQkFDekIsVUFBVSxFQUFFO29CQUNWLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtpQkFDakI7Z0JBQ0QsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO2dCQUNwQixrQkFBa0I7YUFDbkI7WUFDRCxNQUFNLEVBQUUsRUFBRSxDQUFDLHVCQUF1QixDQUFDLFlBQVksQ0FBQztnQkFDOUMsc0RBQXNEO2dCQUN0RCxvREFBb0Q7Z0JBQ3BELHFCQUFxQjtnQkFDckIsU0FBUyxFQUFFLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxZQUFZO2FBQ25ELENBQUM7U0FDSCxDQUFDLENBQUE7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjciBmcm9tIFwiYXdzLWNkay1saWIvY3VzdG9tLXJlc291cmNlc1wiXG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCJcblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgcmVnaW9uOiBzdHJpbmdcbiAgbmFtZTogc3RyaW5nXG4gIHZhbHVlOiBzdHJpbmdcbn1cblxuLyoqXG4gKiBTU00gUGFyYW1ldGVyIHN0b3JlZCBpbiBhbm90aGVyIHJlZ2lvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIENyb3NzUmVnaW9uU3NtUGFyYW1ldGVyIGV4dGVuZHMgY29uc3RydWN0cy5Db25zdHJ1Y3Qge1xuICBjb25zdHJ1Y3RvcihzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZClcblxuICAgIGNvbnN0IHBoeXNpY2FsUmVzb3VyY2VJZCA9IGNyLlBoeXNpY2FsUmVzb3VyY2VJZC5vZihwcm9wcy5uYW1lKVxuXG4gICAgLy8gVE9ETzogQ2FuIHdlIHNvbWVob3cgcHJvcGFnYXRlIHRhZ3MgYXMgd2VsbD9cbiAgICBuZXcgY3IuQXdzQ3VzdG9tUmVzb3VyY2UodGhpcywgXCJSZXNvdXJlXCIsIHtcbiAgICAgIC8vIFVzZSBTREsgYnVuZGxlZCB3aXRoIHRoZSBMYW1iZGEgcnVudGltZSBpbnN0ZWFkIG9mIGluc3RhbGxpbmcgdGhlXG4gICAgICAvLyBsYXRlc3QgYXQgZXhlY3V0aW9uIHRpbWUuIEF2b2lkcyB+NjBzIG5wbSBpbnN0YWxsIG9uIGV2ZXJ5IGludm9jYXRpb25cbiAgICAgIC8vIGFuZCByZW1vdmVzIGEgcnVudGltZSBkZXBlbmRlbmN5IG9uIG5wbWpzLmNvbSBhdmFpbGFiaWxpdHkuXG4gICAgICAvLyBodHRwczovL2NvbnN0cnVjdHMuZGV2L3BhY2thZ2VzL2F3cy1jZGstbGliL3YvMi4yNTEuMD9zdWJtb2R1bGU9Y3VzdG9tX3Jlc291cmNlcyZsYW5nPXR5cGVzY3JpcHRcbiAgICAgIGluc3RhbGxMYXRlc3RBd3NTZGs6IGZhbHNlLFxuICAgICAgb25VcGRhdGU6IHtcbiAgICAgICAgc2VydmljZTogXCJTU01cIixcbiAgICAgICAgYWN0aW9uOiBcInB1dFBhcmFtZXRlclwiLFxuICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgTmFtZTogcHJvcHMubmFtZSxcbiAgICAgICAgICBWYWx1ZTogcHJvcHMudmFsdWUsXG4gICAgICAgICAgVHlwZTogXCJTdHJpbmdcIixcbiAgICAgICAgICBPdmVyd3JpdGU6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHJlZ2lvbjogcHJvcHMucmVnaW9uLFxuICAgICAgICBwaHlzaWNhbFJlc291cmNlSWQsXG4gICAgICB9LFxuICAgICAgb25EZWxldGU6IHtcbiAgICAgICAgc2VydmljZTogXCJTU01cIixcbiAgICAgICAgYWN0aW9uOiBcImRlbGV0ZVBhcmFtZXRlclwiLFxuICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgTmFtZTogcHJvcHMubmFtZSxcbiAgICAgICAgfSxcbiAgICAgICAgcmVnaW9uOiBwcm9wcy5yZWdpb24sXG4gICAgICAgIHBoeXNpY2FsUmVzb3VyY2VJZCxcbiAgICAgIH0sXG4gICAgICBwb2xpY3k6IGNyLkF3c0N1c3RvbVJlc291cmNlUG9saWN5LmZyb21TZGtDYWxscyh7XG4gICAgICAgIC8vIFdlIGdyYW50IHRoZSBDdXN0b20gUmVzb3VyY2UgYWNjZXNzIHRvIHdyaXRlIHRvIGFueVxuICAgICAgICAvLyBwYXJhbWV0ZXIsIGFzIHRoaXMgaXMgbmVlZGVkIHRvIGJlIGFibGUgdG8gcmVuYW1lXG4gICAgICAgIC8vIGEgcGFyYW1ldGVyIGxhdGVyLlxuICAgICAgICByZXNvdXJjZXM6IGNyLkF3c0N1c3RvbVJlc291cmNlUG9saWN5LkFOWV9SRVNPVVJDRSxcbiAgICAgIH0pLFxuICAgIH0pXG4gIH1cbn1cbiJdfQ==
@@ -34,7 +34,16 @@ export class Cluster extends constructs.Construct {
34
34
  clusterArn: [this.cluster.clusterArn],
35
35
  },
36
36
  },
37
- targets: [new targets.CloudWatchLogGroup(this.clusterEventLogs)],
37
+ targets: [
38
+ new targets.CloudWatchLogGroup(this.clusterEventLogs, {
39
+ // Use SDK bundled with the Lambda runtime instead of installing the
40
+ // latest at execution time. Avoids ~60s npm install on every
41
+ // invocation and removes a runtime dependency on npmjs.com
42
+ // availability.
43
+ // https://constructs.dev/packages/aws-cdk-lib/v/2.251.0?submodule=custom_resources&lang=typescript
44
+ installLatestAwsSdk: false,
45
+ }),
46
+ ],
38
47
  });
39
48
  if (props.alarmAction) {
40
49
  this.addRestartFrequencyAlarm(props.alarmAction);
@@ -65,4 +74,4 @@ export class Cluster extends constructs.Construct {
65
74
  alarm.addOkAction(action);
66
75
  }
67
76
  }
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2x1c3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lY3MvY2x1c3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssR0FBRyxNQUFNLGFBQWEsQ0FBQTtBQUNsQyxPQUFPLEtBQUssVUFBVSxNQUFNLDRCQUE0QixDQUFBO0FBRXhELE9BQU8sS0FBSyxHQUFHLE1BQU0scUJBQXFCLENBQUE7QUFDMUMsT0FBTyxLQUFLLE1BQU0sTUFBTSx3QkFBd0IsQ0FBQTtBQUNoRCxPQUFPLEtBQUssT0FBTyxNQUFNLGdDQUFnQyxDQUFBO0FBQ3pELE9BQU8sS0FBSyxJQUFJLE1BQU0sc0JBQXNCLENBQUE7QUFDNUMsT0FBTyxLQUFLLFVBQVUsTUFBTSxZQUFZLENBQUE7QUFjeEMsTUFBTSxPQUFPLE9BQVEsU0FBUSxVQUFVLENBQUMsU0FBUztJQUMvQixPQUFPLENBQWE7SUFDcEIsZ0JBQWdCLENBQWU7SUFFL0MsWUFBWSxLQUEyQixFQUFFLEVBQVUsRUFBRSxLQUFtQjtRQUN0RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFBO1FBRWhCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDL0MsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLEdBQUcsRUFBRSxLQUFLLENBQUMsR0FBRztZQUNkLDJCQUEyQixFQUFFO2dCQUMzQixxREFBcUQ7Z0JBQ3JELG9EQUFvRDtnQkFDcEQsaUNBQWlDO2dCQUNqQyxnREFBZ0Q7Z0JBQ2hELE9BQU8sRUFBRSxHQUFHLENBQUMscUJBQXFCLENBQUMsSUFBSTthQUN4QztTQUNGLENBQUMsQ0FBQTtRQUVGLCtEQUErRDtRQUMvRCwyQ0FBMkM7UUFDM0MsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFO1lBQzNELFNBQVMsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVM7WUFDdkMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxhQUFhLENBQUMsT0FBTztTQUN6QyxDQUFDLENBQUE7UUFFRixJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRTtZQUNqQyxZQUFZLEVBQUU7Z0JBQ1osTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDO2dCQUNuQixNQUFNLEVBQUU7b0JBQ04sVUFBVSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUM7aUJBQ3RDO2FBQ0Y7WUFDRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUNqRSxDQUFDLENBQUE7UUFFRixJQUFJLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsd0JBQXdCLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQ2xELENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSyx3QkFBd0IsQ0FBQyxNQUErQjtRQUM5RCxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQzdELCtCQUErQixFQUMvQjtZQUNFLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FDbkMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQzVCLGVBQWUsRUFDZixHQUFHLEVBQ0gsdUJBQXVCLENBQ3hCLEVBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQzVCLHFCQUFxQixFQUNyQixHQUFHLEVBQ0gsY0FBYyxDQUNmLENBQ0Y7WUFDRCxVQUFVLEVBQUUsY0FBYztZQUMxQixlQUFlLEVBQUUsZUFBZSxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRTtTQUMzRCxDQUNGLENBQUE7UUFFRCxNQUFNLEtBQUssR0FBRyxpQkFBaUI7YUFDNUIsTUFBTSxFQUFFO2FBQ1IsSUFBSSxDQUFDO1lBQ0osU0FBUyxFQUFFLEtBQUs7WUFDaEIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztTQUNqQyxDQUFDO2FBQ0QsV0FBVyxDQUFDLElBQUksRUFBRSx1QkFBdUIsRUFBRTtZQUMxQyxnQkFBZ0IsRUFBRSxZQUFZLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyw2QkFBNkI7WUFDbkYsaUJBQWlCLEVBQUUsQ0FBQztZQUNwQixTQUFTLEVBQUUsRUFBRTtZQUNiLGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhO1NBQzVELENBQUMsQ0FBQTtRQUVKLEtBQUssQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDNUIsS0FBSyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUMzQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCJcbmltcG9ydCAqIGFzIGNsb3Vkd2F0Y2ggZnJvbSBcImF3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoXCJcbmltcG9ydCB0eXBlICogYXMgZWMyIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWMyXCJcbmltcG9ydCAqIGFzIGVjcyBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjc1wiXG5pbXBvcnQgKiBhcyBldmVudHMgZnJvbSBcImF3cy1jZGstbGliL2F3cy1ldmVudHNcIlxuaW1wb3J0ICogYXMgdGFyZ2V0cyBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWV2ZW50cy10YXJnZXRzXCJcbmltcG9ydCAqIGFzIGxvZ3MgZnJvbSBcImF3cy1jZGstbGliL2F3cy1sb2dzXCJcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIlxuXG5leHBvcnQgaW50ZXJmYWNlIENsdXN0ZXJQcm9wcyB7XG4gIC8qKlxuICAgKiBAZGVmYXVsdCB3aWxsIGJlIGdlbmVyYXRlZFxuICAgKi9cbiAgY2x1c3Rlck5hbWU/OiBzdHJpbmdcbiAgdnBjOiBlYzIuSVZwY1xuICAvKipcbiAgICogQGRlZmF1bHQgbm8gYWxhcm1zIHdpbGwgYmUgc2V0IHVwXG4gICAqL1xuICBhbGFybUFjdGlvbj86IGNsb3Vkd2F0Y2guSUFsYXJtQWN0aW9uXG59XG5cbmV4cG9ydCBjbGFzcyBDbHVzdGVyIGV4dGVuZHMgY29uc3RydWN0cy5Db25zdHJ1Y3Qge1xuICBwdWJsaWMgcmVhZG9ubHkgY2x1c3RlcjogZWNzLkNsdXN0ZXJcbiAgcHVibGljIHJlYWRvbmx5IGNsdXN0ZXJFdmVudExvZ3M6IGxvZ3MuTG9nR3JvdXBcblxuICBjb25zdHJ1Y3RvcihzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBDbHVzdGVyUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpXG5cbiAgICB0aGlzLmNsdXN0ZXIgPSBuZXcgZWNzLkNsdXN0ZXIodGhpcywgXCJSZXNvdXJjZVwiLCB7XG4gICAgICBjbHVzdGVyTmFtZTogcHJvcHMuY2x1c3Rlck5hbWUsXG4gICAgICB2cGM6IHByb3BzLnZwYyxcbiAgICAgIGV4ZWN1dGVDb21tYW5kQ29uZmlndXJhdGlvbjoge1xuICAgICAgICAvLyBUaGUgZGVmYXVsdCB3b3VsZCBsb2cgdG8gdGhlIHNhbWUgYXdzbG9ncyBzZXR1cCBhc1xuICAgICAgICAvLyB0aGUgdGFza3MsIHdoaWNoIHdvdWxkIHByb2R1Y2UgZGlmZmVyZW50IHR5cGVzIG9mXG4gICAgICAgIC8vIG91dHB1dHMgaW4gdGhlIHNhbWUgbG9nIGdyb3VwLlxuICAgICAgICAvLyBXZSBoYXZlIG5vdCBzZXQgdXAgc3BlY2lmaWMgbG9nZ2luZyBmb3IgdGhpcy5cbiAgICAgICAgbG9nZ2luZzogZWNzLkV4ZWN1dGVDb21tYW5kTG9nZ2luZy5OT05FLFxuICAgICAgfSxcbiAgICB9KVxuXG4gICAgLy8gVGhlIGRldGFpbHMgaW4gRUNTIGNvbnNvbGUgaXMgYXZhaWxhYmxlIG9ubHkgZm9yIHNob3J0IHRpbWUsXG4gICAgLy8gc28gd2Ugc3RvcmUgaXQgdG8gUzMgdG8gaW1wcm92ZSBpbnNpZ2h0LlxuICAgIHRoaXMuY2x1c3RlckV2ZW50TG9ncyA9IG5ldyBsb2dzLkxvZ0dyb3VwKHRoaXMsIFwiRXZlbnRMb2dzXCIsIHtcbiAgICAgIHJldGVudGlvbjogbG9ncy5SZXRlbnRpb25EYXlzLk9ORV9NT05USCxcbiAgICAgIHJlbW92YWxQb2xpY3k6IGNkay5SZW1vdmFsUG9saWN5LkRFU1RST1ksXG4gICAgfSlcblxuICAgIG5ldyBldmVudHMuUnVsZSh0aGlzLCBcIlN0YXRlUnVsZVwiLCB7XG4gICAgICBldmVudFBhdHRlcm46IHtcbiAgICAgICAgc291cmNlOiBbXCJhd3MuZWNzXCJdLFxuICAgICAgICBkZXRhaWw6IHtcbiAgICAgICAgICBjbHVzdGVyQXJuOiBbdGhpcy5jbHVzdGVyLmNsdXN0ZXJBcm5dLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHRhcmdldHM6IFtuZXcgdGFyZ2V0cy5DbG91ZFdhdGNoTG9nR3JvdXAodGhpcy5jbHVzdGVyRXZlbnRMb2dzKV0sXG4gICAgfSlcblxuICAgIGlmIChwcm9wcy5hbGFybUFjdGlvbikge1xuICAgICAgdGhpcy5hZGRSZXN0YXJ0RnJlcXVlbmN5QWxhcm0ocHJvcHMuYWxhcm1BY3Rpb24pXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1vbml0b3IgaGlnaCBudW1iZXIgb2YgcmVzdGFydHMgd2hpY2ggdHlwaWNhbGx5IHNpZ25hbCBhIGZhaWxpbmcgdGFzay5cbiAgICovXG4gIHByaXZhdGUgYWRkUmVzdGFydEZyZXF1ZW5jeUFsYXJtKGFjdGlvbjogY2xvdWR3YXRjaC5JQWxhcm1BY3Rpb24pOiB2b2lkIHtcbiAgICBjb25zdCBlcnJvck1ldHJpY0ZpbHRlciA9IHRoaXMuY2x1c3RlckV2ZW50TG9ncy5hZGRNZXRyaWNGaWx0ZXIoXG4gICAgICBcIlByb3Zpc2lvbmluZ0Vycm9yTWV0cmljRmlsdGVyXCIsXG4gICAgICB7XG4gICAgICAgIGZpbHRlclBhdHRlcm46IGxvZ3MuRmlsdGVyUGF0dGVybi5hbGwoXG4gICAgICAgICAgbG9ncy5GaWx0ZXJQYXR0ZXJuLnN0cmluZ1ZhbHVlKFxuICAgICAgICAgICAgXCIkLmRldGFpbC10eXBlXCIsXG4gICAgICAgICAgICBcIj1cIixcbiAgICAgICAgICAgIFwiRUNTIFRhc2sgU3RhdGUgQ2hhbmdlXCIsXG4gICAgICAgICAgKSxcbiAgICAgICAgICBsb2dzLkZpbHRlclBhdHRlcm4uc3RyaW5nVmFsdWUoXG4gICAgICAgICAgICBcIiQuZGV0YWlsLmxhc3RTdGF0dXNcIixcbiAgICAgICAgICAgIFwiPVwiLFxuICAgICAgICAgICAgXCJQUk9WSVNJT05JTkdcIixcbiAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgICBtZXRyaWNOYW1lOiBcIlByb3Zpc2lvbmluZ1wiLFxuICAgICAgICBtZXRyaWNOYW1lc3BhY2U6IGBFQ1MvQ2x1c3Rlci8ke3RoaXMuY2x1c3Rlci5jbHVzdGVyTmFtZX1gLFxuICAgICAgfSxcbiAgICApXG5cbiAgICBjb25zdCBhbGFybSA9IGVycm9yTWV0cmljRmlsdGVyXG4gICAgICAubWV0cmljKClcbiAgICAgIC53aXRoKHtcbiAgICAgICAgc3RhdGlzdGljOiBcIlN1bVwiLFxuICAgICAgICBwZXJpb2Q6IGNkay5EdXJhdGlvbi5taW51dGVzKDEwKSxcbiAgICAgIH0pXG4gICAgICAuY3JlYXRlQWxhcm0odGhpcywgXCJSZXN0YXJ0RnJlcXVlbmN5QWxhcm1cIiwge1xuICAgICAgICBhbGFybURlc2NyaXB0aW9uOiBgVGFza3MgaW4gJHt0aGlzLmNsdXN0ZXIuY2x1c3Rlck5hbWV9IGlzIGZyZXF1ZW50bHkgcHJvdmlzaW9uaW5nYCxcbiAgICAgICAgZXZhbHVhdGlvblBlcmlvZHM6IDEsXG4gICAgICAgIHRocmVzaG9sZDogMjUsXG4gICAgICAgIHRyZWF0TWlzc2luZ0RhdGE6IGNsb3Vkd2F0Y2guVHJlYXRNaXNzaW5nRGF0YS5OT1RfQlJFQUNISU5HLFxuICAgICAgfSlcblxuICAgIGFsYXJtLmFkZEFsYXJtQWN0aW9uKGFjdGlvbilcbiAgICBhbGFybS5hZGRPa0FjdGlvbihhY3Rpb24pXG4gIH1cbn1cbiJdfQ==
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2x1c3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lY3MvY2x1c3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssR0FBRyxNQUFNLGFBQWEsQ0FBQTtBQUNsQyxPQUFPLEtBQUssVUFBVSxNQUFNLDRCQUE0QixDQUFBO0FBRXhELE9BQU8sS0FBSyxHQUFHLE1BQU0scUJBQXFCLENBQUE7QUFDMUMsT0FBTyxLQUFLLE1BQU0sTUFBTSx3QkFBd0IsQ0FBQTtBQUNoRCxPQUFPLEtBQUssT0FBTyxNQUFNLGdDQUFnQyxDQUFBO0FBQ3pELE9BQU8sS0FBSyxJQUFJLE1BQU0sc0JBQXNCLENBQUE7QUFDNUMsT0FBTyxLQUFLLFVBQVUsTUFBTSxZQUFZLENBQUE7QUFjeEMsTUFBTSxPQUFPLE9BQVEsU0FBUSxVQUFVLENBQUMsU0FBUztJQUMvQixPQUFPLENBQWE7SUFDcEIsZ0JBQWdCLENBQWU7SUFFL0MsWUFBWSxLQUEyQixFQUFFLEVBQVUsRUFBRSxLQUFtQjtRQUN0RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFBO1FBRWhCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDL0MsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLEdBQUcsRUFBRSxLQUFLLENBQUMsR0FBRztZQUNkLDJCQUEyQixFQUFFO2dCQUMzQixxREFBcUQ7Z0JBQ3JELG9EQUFvRDtnQkFDcEQsaUNBQWlDO2dCQUNqQyxnREFBZ0Q7Z0JBQ2hELE9BQU8sRUFBRSxHQUFHLENBQUMscUJBQXFCLENBQUMsSUFBSTthQUN4QztTQUNGLENBQUMsQ0FBQTtRQUVGLCtEQUErRDtRQUMvRCwyQ0FBMkM7UUFDM0MsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFO1lBQzNELFNBQVMsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVM7WUFDdkMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxhQUFhLENBQUMsT0FBTztTQUN6QyxDQUFDLENBQUE7UUFFRixJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRTtZQUNqQyxZQUFZLEVBQUU7Z0JBQ1osTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDO2dCQUNuQixNQUFNLEVBQUU7b0JBQ04sVUFBVSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUM7aUJBQ3RDO2FBQ0Y7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsSUFBSSxPQUFPLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFO29CQUNwRCxvRUFBb0U7b0JBQ3BFLDZEQUE2RDtvQkFDN0QsMkRBQTJEO29CQUMzRCxnQkFBZ0I7b0JBQ2hCLG1HQUFtRztvQkFDbkcsbUJBQW1CLEVBQUUsS0FBSztpQkFDM0IsQ0FBQzthQUNIO1NBQ0YsQ0FBQyxDQUFBO1FBRUYsSUFBSSxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUNsRCxDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ssd0JBQXdCLENBQUMsTUFBK0I7UUFDOUQsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUM3RCwrQkFBK0IsRUFDL0I7WUFDRSxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQ25DLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUM1QixlQUFlLEVBQ2YsR0FBRyxFQUNILHVCQUF1QixDQUN4QixFQUNELElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUM1QixxQkFBcUIsRUFDckIsR0FBRyxFQUNILGNBQWMsQ0FDZixDQUNGO1lBQ0QsVUFBVSxFQUFFLGNBQWM7WUFDMUIsZUFBZSxFQUFFLGVBQWUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUU7U0FDM0QsQ0FDRixDQUFBO1FBRUQsTUFBTSxLQUFLLEdBQUcsaUJBQWlCO2FBQzVCLE1BQU0sRUFBRTthQUNSLElBQUksQ0FBQztZQUNKLFNBQVMsRUFBRSxLQUFLO1lBQ2hCLE1BQU0sRUFBRSxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7U0FDakMsQ0FBQzthQUNELFdBQVcsQ0FBQyxJQUFJLEVBQUUsdUJBQXVCLEVBQUU7WUFDMUMsZ0JBQWdCLEVBQUUsWUFBWSxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsNkJBQTZCO1lBQ25GLGlCQUFpQixFQUFFLENBQUM7WUFDcEIsU0FBUyxFQUFFLEVBQUU7WUFDYixnQkFBZ0IsRUFBRSxVQUFVLENBQUMsZ0JBQWdCLENBQUMsYUFBYTtTQUM1RCxDQUFDLENBQUE7UUFFSixLQUFLLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQzVCLEtBQUssQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDM0IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiXG5pbXBvcnQgKiBhcyBjbG91ZHdhdGNoIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaFwiXG5pbXBvcnQgdHlwZSAqIGFzIGVjMiBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiXG5pbXBvcnQgKiBhcyBlY3MgZnJvbSBcImF3cy1jZGstbGliL2F3cy1lY3NcIlxuaW1wb3J0ICogYXMgZXZlbnRzIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZXZlbnRzXCJcbmltcG9ydCAqIGFzIHRhcmdldHMgZnJvbSBcImF3cy1jZGstbGliL2F3cy1ldmVudHMtdGFyZ2V0c1wiXG5pbXBvcnQgKiBhcyBsb2dzIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbG9nc1wiXG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCJcblxuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyUHJvcHMge1xuICAvKipcbiAgICogQGRlZmF1bHQgd2lsbCBiZSBnZW5lcmF0ZWRcbiAgICovXG4gIGNsdXN0ZXJOYW1lPzogc3RyaW5nXG4gIHZwYzogZWMyLklWcGNcbiAgLyoqXG4gICAqIEBkZWZhdWx0IG5vIGFsYXJtcyB3aWxsIGJlIHNldCB1cFxuICAgKi9cbiAgYWxhcm1BY3Rpb24/OiBjbG91ZHdhdGNoLklBbGFybUFjdGlvblxufVxuXG5leHBvcnQgY2xhc3MgQ2x1c3RlciBleHRlbmRzIGNvbnN0cnVjdHMuQ29uc3RydWN0IHtcbiAgcHVibGljIHJlYWRvbmx5IGNsdXN0ZXI6IGVjcy5DbHVzdGVyXG4gIHB1YmxpYyByZWFkb25seSBjbHVzdGVyRXZlbnRMb2dzOiBsb2dzLkxvZ0dyb3VwXG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQ2x1c3RlclByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKVxuXG4gICAgdGhpcy5jbHVzdGVyID0gbmV3IGVjcy5DbHVzdGVyKHRoaXMsIFwiUmVzb3VyY2VcIiwge1xuICAgICAgY2x1c3Rlck5hbWU6IHByb3BzLmNsdXN0ZXJOYW1lLFxuICAgICAgdnBjOiBwcm9wcy52cGMsXG4gICAgICBleGVjdXRlQ29tbWFuZENvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgLy8gVGhlIGRlZmF1bHQgd291bGQgbG9nIHRvIHRoZSBzYW1lIGF3c2xvZ3Mgc2V0dXAgYXNcbiAgICAgICAgLy8gdGhlIHRhc2tzLCB3aGljaCB3b3VsZCBwcm9kdWNlIGRpZmZlcmVudCB0eXBlcyBvZlxuICAgICAgICAvLyBvdXRwdXRzIGluIHRoZSBzYW1lIGxvZyBncm91cC5cbiAgICAgICAgLy8gV2UgaGF2ZSBub3Qgc2V0IHVwIHNwZWNpZmljIGxvZ2dpbmcgZm9yIHRoaXMuXG4gICAgICAgIGxvZ2dpbmc6IGVjcy5FeGVjdXRlQ29tbWFuZExvZ2dpbmcuTk9ORSxcbiAgICAgIH0sXG4gICAgfSlcblxuICAgIC8vIFRoZSBkZXRhaWxzIGluIEVDUyBjb25zb2xlIGlzIGF2YWlsYWJsZSBvbmx5IGZvciBzaG9ydCB0aW1lLFxuICAgIC8vIHNvIHdlIHN0b3JlIGl0IHRvIFMzIHRvIGltcHJvdmUgaW5zaWdodC5cbiAgICB0aGlzLmNsdXN0ZXJFdmVudExvZ3MgPSBuZXcgbG9ncy5Mb2dHcm91cCh0aGlzLCBcIkV2ZW50TG9nc1wiLCB7XG4gICAgICByZXRlbnRpb246IGxvZ3MuUmV0ZW50aW9uRGF5cy5PTkVfTU9OVEgsXG4gICAgICByZW1vdmFsUG9saWN5OiBjZGsuUmVtb3ZhbFBvbGljeS5ERVNUUk9ZLFxuICAgIH0pXG5cbiAgICBuZXcgZXZlbnRzLlJ1bGUodGhpcywgXCJTdGF0ZVJ1bGVcIiwge1xuICAgICAgZXZlbnRQYXR0ZXJuOiB7XG4gICAgICAgIHNvdXJjZTogW1wiYXdzLmVjc1wiXSxcbiAgICAgICAgZGV0YWlsOiB7XG4gICAgICAgICAgY2x1c3RlckFybjogW3RoaXMuY2x1c3Rlci5jbHVzdGVyQXJuXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB0YXJnZXRzOiBbXG4gICAgICAgIG5ldyB0YXJnZXRzLkNsb3VkV2F0Y2hMb2dHcm91cCh0aGlzLmNsdXN0ZXJFdmVudExvZ3MsIHtcbiAgICAgICAgICAvLyBVc2UgU0RLIGJ1bmRsZWQgd2l0aCB0aGUgTGFtYmRhIHJ1bnRpbWUgaW5zdGVhZCBvZiBpbnN0YWxsaW5nIHRoZVxuICAgICAgICAgIC8vIGxhdGVzdCBhdCBleGVjdXRpb24gdGltZS4gQXZvaWRzIH42MHMgbnBtIGluc3RhbGwgb24gZXZlcnlcbiAgICAgICAgICAvLyBpbnZvY2F0aW9uIGFuZCByZW1vdmVzIGEgcnVudGltZSBkZXBlbmRlbmN5IG9uIG5wbWpzLmNvbVxuICAgICAgICAgIC8vIGF2YWlsYWJpbGl0eS5cbiAgICAgICAgICAvLyBodHRwczovL2NvbnN0cnVjdHMuZGV2L3BhY2thZ2VzL2F3cy1jZGstbGliL3YvMi4yNTEuMD9zdWJtb2R1bGU9Y3VzdG9tX3Jlc291cmNlcyZsYW5nPXR5cGVzY3JpcHRcbiAgICAgICAgICBpbnN0YWxsTGF0ZXN0QXdzU2RrOiBmYWxzZSxcbiAgICAgICAgfSksXG4gICAgICBdLFxuICAgIH0pXG5cbiAgICBpZiAocHJvcHMuYWxhcm1BY3Rpb24pIHtcbiAgICAgIHRoaXMuYWRkUmVzdGFydEZyZXF1ZW5jeUFsYXJtKHByb3BzLmFsYXJtQWN0aW9uKVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBNb25pdG9yIGhpZ2ggbnVtYmVyIG9mIHJlc3RhcnRzIHdoaWNoIHR5cGljYWxseSBzaWduYWwgYSBmYWlsaW5nIHRhc2suXG4gICAqL1xuICBwcml2YXRlIGFkZFJlc3RhcnRGcmVxdWVuY3lBbGFybShhY3Rpb246IGNsb3Vkd2F0Y2guSUFsYXJtQWN0aW9uKTogdm9pZCB7XG4gICAgY29uc3QgZXJyb3JNZXRyaWNGaWx0ZXIgPSB0aGlzLmNsdXN0ZXJFdmVudExvZ3MuYWRkTWV0cmljRmlsdGVyKFxuICAgICAgXCJQcm92aXNpb25pbmdFcnJvck1ldHJpY0ZpbHRlclwiLFxuICAgICAge1xuICAgICAgICBmaWx0ZXJQYXR0ZXJuOiBsb2dzLkZpbHRlclBhdHRlcm4uYWxsKFxuICAgICAgICAgIGxvZ3MuRmlsdGVyUGF0dGVybi5zdHJpbmdWYWx1ZShcbiAgICAgICAgICAgIFwiJC5kZXRhaWwtdHlwZVwiLFxuICAgICAgICAgICAgXCI9XCIsXG4gICAgICAgICAgICBcIkVDUyBUYXNrIFN0YXRlIENoYW5nZVwiLFxuICAgICAgICAgICksXG4gICAgICAgICAgbG9ncy5GaWx0ZXJQYXR0ZXJuLnN0cmluZ1ZhbHVlKFxuICAgICAgICAgICAgXCIkLmRldGFpbC5sYXN0U3RhdHVzXCIsXG4gICAgICAgICAgICBcIj1cIixcbiAgICAgICAgICAgIFwiUFJPVklTSU9OSU5HXCIsXG4gICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgICAgbWV0cmljTmFtZTogXCJQcm92aXNpb25pbmdcIixcbiAgICAgICAgbWV0cmljTmFtZXNwYWNlOiBgRUNTL0NsdXN0ZXIvJHt0aGlzLmNsdXN0ZXIuY2x1c3Rlck5hbWV9YCxcbiAgICAgIH0sXG4gICAgKVxuXG4gICAgY29uc3QgYWxhcm0gPSBlcnJvck1ldHJpY0ZpbHRlclxuICAgICAgLm1ldHJpYygpXG4gICAgICAud2l0aCh7XG4gICAgICAgIHN0YXRpc3RpYzogXCJTdW1cIixcbiAgICAgICAgcGVyaW9kOiBjZGsuRHVyYXRpb24ubWludXRlcygxMCksXG4gICAgICB9KVxuICAgICAgLmNyZWF0ZUFsYXJtKHRoaXMsIFwiUmVzdGFydEZyZXF1ZW5jeUFsYXJtXCIsIHtcbiAgICAgICAgYWxhcm1EZXNjcmlwdGlvbjogYFRhc2tzIGluICR7dGhpcy5jbHVzdGVyLmNsdXN0ZXJOYW1lfSBpcyBmcmVxdWVudGx5IHByb3Zpc2lvbmluZ2AsXG4gICAgICAgIGV2YWx1YXRpb25QZXJpb2RzOiAxLFxuICAgICAgICB0aHJlc2hvbGQ6IDI1LFxuICAgICAgICB0cmVhdE1pc3NpbmdEYXRhOiBjbG91ZHdhdGNoLlRyZWF0TWlzc2luZ0RhdGEuTk9UX0JSRUFDSElORyxcbiAgICAgIH0pXG5cbiAgICBhbGFybS5hZGRBbGFybUFjdGlvbihhY3Rpb24pXG4gICAgYWxhcm0uYWRkT2tBY3Rpb24oYWN0aW9uKVxuICB9XG59XG4iXX0=
@@ -13,6 +13,11 @@ export class ConfigurationSetDeliveryOptions extends constructs.Construct {
13
13
  constructor(scope, id, props) {
14
14
  super(scope, id);
15
15
  new cr.AwsCustomResource(this, "Resource", {
16
+ // Use SDK bundled with the Lambda runtime instead of installing the
17
+ // latest at execution time. Avoids ~60s npm install on every invocation
18
+ // and removes a runtime dependency on npmjs.com availability.
19
+ // https://constructs.dev/packages/aws-cdk-lib/v/2.251.0?submodule=custom_resources&lang=typescript
20
+ installLatestAwsSdk: false,
16
21
  policy: cr.AwsCustomResourcePolicy.fromStatements([
17
22
  new iam.PolicyStatement({
18
23
  actions: ["ses:PutConfigurationSetDeliveryOptions"],
@@ -41,4 +46,4 @@ export class ConfigurationSetDeliveryOptions extends constructs.Construct {
41
46
  });
42
47
  }
43
48
  }
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VzL2NvbmZpZ3VyYXRpb25zZXRkZWxpdmVyeW9wdGlvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQTtBQUMxQyxPQUFPLEtBQUssRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBQ2xELE9BQU8sS0FBSyxVQUFVLE1BQU0sWUFBWSxDQUFBO0FBa0J4Qzs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLFVBQVUsQ0FBQyxTQUFTO0lBQ3ZFLFlBQ0UsS0FBMkIsRUFDM0IsRUFBVSxFQUNWLEtBQTJDO1FBRTNDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFFaEIsSUFBSSxFQUFFLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUN6QyxNQUFNLEVBQUUsRUFBRSxDQUFDLHVCQUF1QixDQUFDLGNBQWMsQ0FBQztnQkFDaEQsSUFBSSxHQUFHLENBQUMsZUFBZSxDQUFDO29CQUN0QixPQUFPLEVBQUUsQ0FBQyx3Q0FBd0MsQ0FBQztvQkFDbkQsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDO2lCQUNqQixDQUFDO2FBQ0gsQ0FBQztZQUNGLHFDQUFxQztZQUNyQyxRQUFRLEVBQUU7Z0JBQ1IsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsTUFBTSxFQUFFLG9DQUFvQztnQkFDNUMsVUFBVSxFQUFFO29CQUNWLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxvQkFBb0I7b0JBQ2hELGVBQWUsRUFBRTt3QkFDZixTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVM7cUJBQzNCO2lCQUNGO2dCQUNELGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQzFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FDM0I7YUFDRjtZQUNELFFBQVEsRUFBRTtnQkFDUixPQUFPLEVBQUUsS0FBSztnQkFDZCxNQUFNLEVBQUUsb0NBQW9DO2dCQUM1QyxVQUFVLEVBQUU7b0JBQ1Ysb0JBQW9CLEVBQUUsS0FBSyxDQUFDLG9CQUFvQjtpQkFDakQ7YUFDRjtTQUNGLENBQUMsQ0FBQTtJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGlhbSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWlhbVwiXG5pbXBvcnQgKiBhcyBjciBmcm9tIFwiYXdzLWNkay1saWIvY3VzdG9tLXJlc291cmNlc1wiXG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCJcblxuZXhwb3J0IHR5cGUgVGxzUG9saWN5ID0gXCJSZXF1aXJlXCIgfCBcIk9wdGlvbmFsXCJcblxuZXhwb3J0IGludGVyZmFjZSBDb25maWd1cmF0aW9uU2V0RGVsaXZlcnlPcHRpb25zUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgYW4gZXhpc3RpbmcgU0VTIGNvbmZpZ3VyYXRpb24gc2V0IHRvIHVwZGF0ZSBkZWxpdmVyeSBvcHRpb25zIG9uXG4gICAqL1xuICBjb25maWd1cmF0aW9uU2V0TmFtZTogc3RyaW5nXG4gIC8qKlxuICAgKiBUaGUgVExTIHBvbGljeSBmb3Igb3V0Z29pbmcgZW1haWxzXG4gICAqXG4gICAqIFNldHRpbmcgdGhpcyB0byBcIlJlcXVpcmVcIiB3aWxsIG1ha2UgbWFpbCBkZWxpdmVyeSBmYWlsIGlmIFNFUyBjYW5ub3RcbiAgICogZXN0YWJsaXNoIGEgVExTLWVuY3J5cHRlZCBjb25uZWN0aW9uIHRvIHRoZSByZWNlaXZpbmcgbWFpbCBzZXJ2ZXIuXG4gICAqL1xuICB0bHNQb2xpY3k6IFRsc1BvbGljeVxufVxuXG4vKipcbiAqIFNldCBEZWxpdmVyeSBPcHRpb25zIGZvciBhIFNFUyBDb25maWd1cmF0aW9uIFNldC5cbiAqXG4gKiBDdXJyZW50bHkgdGhlIG9ubHkgZGVsaXZlcnkgb3B0aW9uIHRoYXQgY2FuIGJlIHNldCBpcyB0aGUgVExTIFBvbGljeSwgd2hpY2hcbiAqIGNhbiBiZSBzZXQgdG8gZWl0aGVyIFwiUmVxdWlyZVwiIG9yIFwiT3B0aW9uYWxcIi4gSWYgc2V0IHRvIFwiUmVxdWlyZVwiIFNFU1xuICogd2lsbCByZWZ1c2UgdG8gZGVsaXZlciBtYWlsIHRvIG1haWwgc2VydmVycyBpdCBjYW5ub3QgY29ubmVjdCB0byB1c2luZ1xuICogYW4gZW5jcnlwdGVkIGNvbm5lY3Rpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBDb25maWd1cmF0aW9uU2V0RGVsaXZlcnlPcHRpb25zIGV4dGVuZHMgY29uc3RydWN0cy5Db25zdHJ1Y3Qge1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ29uZmlndXJhdGlvblNldERlbGl2ZXJ5T3B0aW9uc1Byb3BzLFxuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQpXG5cbiAgICBuZXcgY3IuQXdzQ3VzdG9tUmVzb3VyY2UodGhpcywgXCJSZXNvdXJjZVwiLCB7XG4gICAgICBwb2xpY3k6IGNyLkF3c0N1c3RvbVJlc291cmNlUG9saWN5LmZyb21TdGF0ZW1lbnRzKFtcbiAgICAgICAgbmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgIGFjdGlvbnM6IFtcInNlczpQdXRDb25maWd1cmF0aW9uU2V0RGVsaXZlcnlPcHRpb25zXCJdLFxuICAgICAgICAgIHJlc291cmNlczogW1wiKlwiXSxcbiAgICAgICAgfSksXG4gICAgICBdKSxcbiAgICAgIC8vIEhhbmRsZXMgYm90aCBvbkNyZWF0ZSBhbmQgb25VcGRhdGVcbiAgICAgIG9uVXBkYXRlOiB7XG4gICAgICAgIHNlcnZpY2U6IFwiU0VTXCIsXG4gICAgICAgIGFjdGlvbjogXCJwdXRDb25maWd1cmF0aW9uU2V0RGVsaXZlcnlPcHRpb25zXCIsXG4gICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICBDb25maWd1cmF0aW9uU2V0TmFtZTogcHJvcHMuY29uZmlndXJhdGlvblNldE5hbWUsXG4gICAgICAgICAgRGVsaXZlcnlPcHRpb25zOiB7XG4gICAgICAgICAgICBUbHNQb2xpY3k6IHByb3BzLnRsc1BvbGljeSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBwaHlzaWNhbFJlc291cmNlSWQ6IGNyLlBoeXNpY2FsUmVzb3VyY2VJZC5vZihcbiAgICAgICAgICBwcm9wcy5jb25maWd1cmF0aW9uU2V0TmFtZSxcbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgICBvbkRlbGV0ZToge1xuICAgICAgICBzZXJ2aWNlOiBcIlNFU1wiLFxuICAgICAgICBhY3Rpb246IFwicHV0Q29uZmlndXJhdGlvblNldERlbGl2ZXJ5T3B0aW9uc1wiLFxuICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgQ29uZmlndXJhdGlvblNldE5hbWU6IHByb3BzLmNvbmZpZ3VyYXRpb25TZXROYW1lLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KVxuICB9XG59XG4iXX0=
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VzL2NvbmZpZ3VyYXRpb25zZXRkZWxpdmVyeW9wdGlvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQTtBQUMxQyxPQUFPLEtBQUssRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBQ2xELE9BQU8sS0FBSyxVQUFVLE1BQU0sWUFBWSxDQUFBO0FBa0J4Qzs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLFVBQVUsQ0FBQyxTQUFTO0lBQ3ZFLFlBQ0UsS0FBMkIsRUFDM0IsRUFBVSxFQUNWLEtBQTJDO1FBRTNDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFFaEIsSUFBSSxFQUFFLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUN6QyxvRUFBb0U7WUFDcEUsd0VBQXdFO1lBQ3hFLDhEQUE4RDtZQUM5RCxtR0FBbUc7WUFDbkcsbUJBQW1CLEVBQUUsS0FBSztZQUMxQixNQUFNLEVBQUUsRUFBRSxDQUFDLHVCQUF1QixDQUFDLGNBQWMsQ0FBQztnQkFDaEQsSUFBSSxHQUFHLENBQUMsZUFBZSxDQUFDO29CQUN0QixPQUFPLEVBQUUsQ0FBQyx3Q0FBd0MsQ0FBQztvQkFDbkQsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDO2lCQUNqQixDQUFDO2FBQ0gsQ0FBQztZQUNGLHFDQUFxQztZQUNyQyxRQUFRLEVBQUU7Z0JBQ1IsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsTUFBTSxFQUFFLG9DQUFvQztnQkFDNUMsVUFBVSxFQUFFO29CQUNWLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxvQkFBb0I7b0JBQ2hELGVBQWUsRUFBRTt3QkFDZixTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVM7cUJBQzNCO2lCQUNGO2dCQUNELGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQzFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FDM0I7YUFDRjtZQUNELFFBQVEsRUFBRTtnQkFDUixPQUFPLEVBQUUsS0FBSztnQkFDZCxNQUFNLEVBQUUsb0NBQW9DO2dCQUM1QyxVQUFVLEVBQUU7b0JBQ1Ysb0JBQW9CLEVBQUUsS0FBSyxDQUFDLG9CQUFvQjtpQkFDakQ7YUFDRjtTQUNGLENBQUMsQ0FBQTtJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGlhbSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWlhbVwiXG5pbXBvcnQgKiBhcyBjciBmcm9tIFwiYXdzLWNkay1saWIvY3VzdG9tLXJlc291cmNlc1wiXG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCJcblxuZXhwb3J0IHR5cGUgVGxzUG9saWN5ID0gXCJSZXF1aXJlXCIgfCBcIk9wdGlvbmFsXCJcblxuZXhwb3J0IGludGVyZmFjZSBDb25maWd1cmF0aW9uU2V0RGVsaXZlcnlPcHRpb25zUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgYW4gZXhpc3RpbmcgU0VTIGNvbmZpZ3VyYXRpb24gc2V0IHRvIHVwZGF0ZSBkZWxpdmVyeSBvcHRpb25zIG9uXG4gICAqL1xuICBjb25maWd1cmF0aW9uU2V0TmFtZTogc3RyaW5nXG4gIC8qKlxuICAgKiBUaGUgVExTIHBvbGljeSBmb3Igb3V0Z29pbmcgZW1haWxzXG4gICAqXG4gICAqIFNldHRpbmcgdGhpcyB0byBcIlJlcXVpcmVcIiB3aWxsIG1ha2UgbWFpbCBkZWxpdmVyeSBmYWlsIGlmIFNFUyBjYW5ub3RcbiAgICogZXN0YWJsaXNoIGEgVExTLWVuY3J5cHRlZCBjb25uZWN0aW9uIHRvIHRoZSByZWNlaXZpbmcgbWFpbCBzZXJ2ZXIuXG4gICAqL1xuICB0bHNQb2xpY3k6IFRsc1BvbGljeVxufVxuXG4vKipcbiAqIFNldCBEZWxpdmVyeSBPcHRpb25zIGZvciBhIFNFUyBDb25maWd1cmF0aW9uIFNldC5cbiAqXG4gKiBDdXJyZW50bHkgdGhlIG9ubHkgZGVsaXZlcnkgb3B0aW9uIHRoYXQgY2FuIGJlIHNldCBpcyB0aGUgVExTIFBvbGljeSwgd2hpY2hcbiAqIGNhbiBiZSBzZXQgdG8gZWl0aGVyIFwiUmVxdWlyZVwiIG9yIFwiT3B0aW9uYWxcIi4gSWYgc2V0IHRvIFwiUmVxdWlyZVwiIFNFU1xuICogd2lsbCByZWZ1c2UgdG8gZGVsaXZlciBtYWlsIHRvIG1haWwgc2VydmVycyBpdCBjYW5ub3QgY29ubmVjdCB0byB1c2luZ1xuICogYW4gZW5jcnlwdGVkIGNvbm5lY3Rpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBDb25maWd1cmF0aW9uU2V0RGVsaXZlcnlPcHRpb25zIGV4dGVuZHMgY29uc3RydWN0cy5Db25zdHJ1Y3Qge1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ29uZmlndXJhdGlvblNldERlbGl2ZXJ5T3B0aW9uc1Byb3BzLFxuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQpXG5cbiAgICBuZXcgY3IuQXdzQ3VzdG9tUmVzb3VyY2UodGhpcywgXCJSZXNvdXJjZVwiLCB7XG4gICAgICAvLyBVc2UgU0RLIGJ1bmRsZWQgd2l0aCB0aGUgTGFtYmRhIHJ1bnRpbWUgaW5zdGVhZCBvZiBpbnN0YWxsaW5nIHRoZVxuICAgICAgLy8gbGF0ZXN0IGF0IGV4ZWN1dGlvbiB0aW1lLiBBdm9pZHMgfjYwcyBucG0gaW5zdGFsbCBvbiBldmVyeSBpbnZvY2F0aW9uXG4gICAgICAvLyBhbmQgcmVtb3ZlcyBhIHJ1bnRpbWUgZGVwZW5kZW5jeSBvbiBucG1qcy5jb20gYXZhaWxhYmlsaXR5LlxuICAgICAgLy8gaHR0cHM6Ly9jb25zdHJ1Y3RzLmRldi9wYWNrYWdlcy9hd3MtY2RrLWxpYi92LzIuMjUxLjA/c3VibW9kdWxlPWN1c3RvbV9yZXNvdXJjZXMmbGFuZz10eXBlc2NyaXB0XG4gICAgICBpbnN0YWxsTGF0ZXN0QXdzU2RrOiBmYWxzZSxcbiAgICAgIHBvbGljeTogY3IuQXdzQ3VzdG9tUmVzb3VyY2VQb2xpY3kuZnJvbVN0YXRlbWVudHMoW1xuICAgICAgICBuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgYWN0aW9uczogW1wic2VzOlB1dENvbmZpZ3VyYXRpb25TZXREZWxpdmVyeU9wdGlvbnNcIl0sXG4gICAgICAgICAgcmVzb3VyY2VzOiBbXCIqXCJdLFxuICAgICAgICB9KSxcbiAgICAgIF0pLFxuICAgICAgLy8gSGFuZGxlcyBib3RoIG9uQ3JlYXRlIGFuZCBvblVwZGF0ZVxuICAgICAgb25VcGRhdGU6IHtcbiAgICAgICAgc2VydmljZTogXCJTRVNcIixcbiAgICAgICAgYWN0aW9uOiBcInB1dENvbmZpZ3VyYXRpb25TZXREZWxpdmVyeU9wdGlvbnNcIixcbiAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgIENvbmZpZ3VyYXRpb25TZXROYW1lOiBwcm9wcy5jb25maWd1cmF0aW9uU2V0TmFtZSxcbiAgICAgICAgICBEZWxpdmVyeU9wdGlvbnM6IHtcbiAgICAgICAgICAgIFRsc1BvbGljeTogcHJvcHMudGxzUG9saWN5LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHBoeXNpY2FsUmVzb3VyY2VJZDogY3IuUGh5c2ljYWxSZXNvdXJjZUlkLm9mKFxuICAgICAgICAgIHByb3BzLmNvbmZpZ3VyYXRpb25TZXROYW1lLFxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIG9uRGVsZXRlOiB7XG4gICAgICAgIHNlcnZpY2U6IFwiU0VTXCIsXG4gICAgICAgIGFjdGlvbjogXCJwdXRDb25maWd1cmF0aW9uU2V0RGVsaXZlcnlPcHRpb25zXCIsXG4gICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICBDb25maWd1cmF0aW9uU2V0TmFtZTogcHJvcHMuY29uZmlndXJhdGlvblNldE5hbWUsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pXG4gIH1cbn1cbiJdfQ==
package/lib/snapshots.js CHANGED
@@ -18,6 +18,23 @@ function removeTrace(data) {
18
18
  }
19
19
  return data;
20
20
  }
21
+ // CDK >= 2.251.0 emits `aws:cdk:creationStack` metadata entries containing
22
+ // construct creation stack traces. These include absolute paths from the
23
+ // machine that ran `cdk synth`, so they are not stable across environments.
24
+ function removeCreationStack(data) {
25
+ if (Array.isArray(data)) {
26
+ return data
27
+ .filter((item) => !(item === Object(item) &&
28
+ item.type === "aws:cdk:creationStack"))
29
+ .map(removeCreationStack);
30
+ }
31
+ if (data === Object(data)) {
32
+ return Object.fromEntries(Object.entries(data)
33
+ .map(([key, value]) => [key, removeCreationStack(value)])
34
+ .filter(([, value]) => !(Array.isArray(value) && value.length === 0)));
35
+ }
36
+ return data;
37
+ }
21
38
  function removeRuntimeLibraries(data) {
22
39
  const cp = {
23
40
  ...data,
@@ -152,6 +169,7 @@ export function sanitizeManifest(content) {
152
169
  // or other users generating the snapshots.
153
170
  removeRuntimeLibraries,
154
171
  removeTrace,
172
+ removeCreationStack,
155
173
  // Avoid details (hashes) from assets.
156
174
  removeAssetDetailsFromManifest,
157
175
  ].reduce((acc, fn) => fn(acc), input);
@@ -167,7 +185,11 @@ export function sanitizeManifest(content) {
167
185
  */
168
186
  export function sanitizeMetadata(content) {
169
187
  const input = JSON.parse(content);
170
- const output = [removeTrace, removeAssetDetailsFromManifest].reduce((acc, fn) => fn(acc), input);
188
+ const output = [
189
+ removeTrace,
190
+ removeCreationStack,
191
+ removeAssetDetailsFromManifest,
192
+ ].reduce((acc, fn) => fn(acc), input);
171
193
  return JSON.stringify(output, undefined, " ");
172
194
  }
173
195
  export function sanitizeTemplate(content) {
@@ -222,4 +244,4 @@ export async function createCloudAssemblySnapshot(src, dst) {
222
244
  };
223
245
  await Promise.all(Object.entries(fileTransforms).flatMap(([pattern, transform]) => expandGlob(pattern, destAbs).map((f) => transformFileInPlace(f, transform))));
224
246
  }
225
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hcHNob3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NuYXBzaG90cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUM3QixPQUFPLEtBQUssSUFBSSxNQUFNLFdBQVcsQ0FBQTtBQUVqQyxTQUFTLGFBQWEsQ0FBQyxJQUFTO0lBQzlCLE1BQU0sRUFBRSxHQUFHO1FBQ1QsR0FBRyxJQUFJO0tBQ1IsQ0FBQTtJQUVELE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQTtJQUNqQixPQUFPLEVBQUUsQ0FBQTtBQUNYLENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FBQyxJQUFTO0lBQzVCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQTtJQUM5QixDQUFDO0lBRUQsSUFBSSxJQUFJLEtBQUssTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDMUIsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUN2QixNQUFNLENBQUMsT0FBTyxDQUFDLElBQStCLENBQUM7YUFDNUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLE9BQU8sQ0FBQzthQUNsQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FDcEQsQ0FBQTtJQUNILENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUM7QUFFRCxTQUFTLHNCQUFzQixDQUFDLElBQVM7SUFDdkMsTUFBTSxFQUFFLEdBQUc7UUFDVCxHQUFHLElBQUk7S0FDUixDQUFBO0lBRUQsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDakIs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RUFBRSxDQUNyQyxvQkFBb0IsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQ25DLENBQ0YsQ0FDRixDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gXCJub2RlOmZzXCJcbmltcG9ydCAqIGFzIHBhdGggZnJvbSBcIm5vZGU6cGF0aFwiXG5cbmZ1bmN0aW9uIHJlbW92ZVZlcnNpb24oZGF0YTogYW55KTogYW55IHtcbiAgY29uc3QgY3AgPSB7XG4gICAgLi4uZGF0YSxcbiAgfVxuXG4gIGRlbGV0ZSBjcC52ZXJzaW9uXG4gIHJldHVybiBjcFxufVxuXG5mdW5jdGlvbiByZW1vdmVUcmFjZShkYXRhOiBhbnkpOiBhbnkge1xuICBpZiAoQXJyYXkuaXNBcnJheShkYXRhKSkge1xuICAgIHJldHVybiBkYXRhLm1hcChyZW1vdmVUcmFjZSlcbiAgfVxuXG4gIGlmIChkYXRhID09PSBPYmplY3QoZGF0YSkpIHtcbiAgICByZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgICAgT2JqZWN0LmVudHJpZXMoZGF0YSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPilcbiAgICAgICAgLmZpbHRlcigoW2tleV0pID0+IGtleSAhPT0gXCJ0cmFjZVwiKVxuICAgICAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IFtrZXksIHJlbW92ZVRyYWNlKHZhbHVlKV0pLFxuICAgIClcbiAgfVxuXG4gIHJldHVybiBkYXRhXG59XG5cbmZ1bmN0aW9uIHJlbW92ZVJ1bnRpbWVMaWJyYXJpZXMoZGF0YTogYW55KTogYW55IHtcbiAgY29uc3QgY3AgPSB7XG4gICAgLi4uZGF0YSxcbiAgfVxuXG4gIGlmIChkYXRhLnJ1bnRpbWUpIHtcbiAgICBjcC5ydW50aW1lID0ge1xuICAgICAgLi4uZGF0YS5ydW50aW1lLFxuICAgIH1cblxuICAgIGRlbGV0ZSBjcC5ydW50aW1lLmxpYnJhcmllc1xuICB9XG5cbiAgcmV0dXJuIGNwXG59XG5cbmNvbnN0IGN1cnJlbnRWZXJzaW9uUmVnZXggPSAvXiguK0N1cnJlbnRWZXJzaW9uWzAtOUEtRl17OH0pWzAtOWEtZl17MzJ9JC9cblxuLy8gTWF0Y2hlcyA2NC1jaGFyIGhleCBzdHJpbmdzIHVzZWQgYXMgQ0RLIGFzc2V0IGNvbnRlbnQgaGFzaGVzLlxuY29uc3QgYXNzZXRDb250ZW50SGFzaFJlZ2V4ID0gL1swLTlhLWZdezY0fS9nXG5cbi8vIE1hdGNoZXMgdGhlIHNob3J0IDgtY2hhciBoYXNoIHN1ZmZpeCBpbiBDREsgUGlwZWxpbmVzIGFzc2V0IGlkZW50aWZpZXJzLFxuLy8gZS5nLiBcInNuYXBzaG90LXZhbHVlOjEyMzQ1Njc4OTAxMi1ldS13ZXN0LTEtMGU5NGY5ZGVcIi5cbmNvbnN0IHBpcGVsaW5lc0Fzc2V0SWRTdWZmaXhSZWdleCA9XG4gIC8oc25hcHNob3QtdmFsdWU6XFxkKy1bYS16MC05LV0rLSlbMC05YS1mXXs4fS9nXG5cbi8qKlxuICogTWF0Y2ggYSByZXNvdXJjZSBjcmVhdGVkIGJ5IGBsYW1iZGEuRnVuY3Rpb24uY3VycmVudFZlcnNpb25gLCB3aGljaFxuICogd2lsbCBpbmNsdWRlIHRoZSBhc3NldCBoYXNoIGFzIHBhcnQgb2YgdGhlIHJlb3VzcmNlIG5hbWUgYW5kIHJldHVyblxuICogYSBzbmFwc2hvdC1mcmllbmRseSB2ZXJzaW9uIG9mIGl0IGlmIGZvdW5kLlxuICovXG5mdW5jdGlvbiByZXdyaXRlQ3VycmVudFZlcnNpb25JZkZvdW5kKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgY29uc3QgbWF0Y2ggPSBjdXJyZW50VmVyc2lvblJlZ2V4LmV4ZWModmFsdWUpXG4gIHJldHVybiBtYXRjaCA/IGAke21hdGNoWzFdfXh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4YCA6IG51bGxcbn1cblxuLyoqXG4gKiBSZXBsYWNlIGFzc2V0IGhhc2hlcyBpbiBhIHN0cmluZyB2YWx1ZSB3aXRoIHN0YWJsZSBwbGFjZWhvbGRlcnMuXG4gKiBTaGFyZWQgYnkgYm90aCB0ZW1wbGF0ZSBhbmQgbWFuaWZlc3QvbWV0YWRhdGEgYXNzZXQgc3RyaXBwaW5nLlxuICovXG5mdW5jdGlvbiByZXBsYWNlQXNzZXRIYXNoZXNJblN0cmluZyh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgbmV3Q3VycmVudFZlcnNpb24gPSByZXdyaXRlQ3VycmVudFZlcnNpb25JZkZvdW5kKHZhbHVlKVxuICBpZiAobmV3Q3VycmVudFZlcnNpb24pIHtcbiAgICByZXR1cm4gbmV3Q3VycmVudFZlcnNpb25cbiAgfVxuXG4gIHJldHVybiB2YWx1ZVxuICAgIC5yZXBsYWNlKGFzc2V0Q29udGVudEhhc2hSZWdleCwgXCJzbmFwc2hvdC12YWx1ZVwiKVxuICAgIC5yZXBsYWNlKHBpcGVsaW5lc0Fzc2V0SWRTdWZmaXhSZWdleCwgXCIkMXNuYXBzaG90LXZhbHVlXCIpXG59XG5cbmZ1bmN0aW9uIHJlbW92ZUFzc2V0RGV0YWlsc0Zyb21UZW1wbGF0ZShkYXRhOiBhbnkpOiBhbnkge1xuICBpZiAoQXJyYXkuaXNBcnJheShkYXRhKSkge1xuICAgIHJldHVybiBkYXRhLm1hcChyZW1vdmVBc3NldERldGFpbHNGcm9tVGVtcGxhdGUpXG4gIH1cblxuICBpZiAoZGF0YSA9PT0gT2JqZWN0KGRhdGEpKSB7XG4gICAgcmV0dXJuIE9iamVjdC5mcm9tRW50cmllcyhcbiAgICAgIE9iamVjdC5lbnRyaWVzKGRhdGEgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4pXG4gICAgICAgIC5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgIGNvbnN0IG5ld0N1cnJlbnRWZXJzaW9uID0gcmV3cml0ZUN1cnJlbnRWZXJzaW9uSWZGb3VuZChrZXkpXG4gICAgICAgICAgaWYgKG5ld0N1cnJlbnRWZXJzaW9uKSB7XG4gICAgICAgICAgICByZXR1cm4gW25ld0N1cnJlbnRWZXJzaW9uLCByZW1vdmVBc3NldERldGFpbHNGcm9tVGVtcGxhdGUodmFsdWUpXVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoa2V5LmluY2x1ZGVzKFwiQXNzZXRQYXJhbWV0ZXJcIikpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGtleSA9PT0gXCJSZWZcIiAmJlxuICAgICAgICAgICAgdHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiICYmXG4gICAgICAgICAgICB2YWx1ZS5pbmNsdWRlcyhcIkFzc2V0UGFyYW1ldGVyc1wiKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIFtrZXksIFwic25hcHNob3QtdmFsdWVcIl1cbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAga2V5ID09PSBcImF3czphc3NldDpwYXRoXCIgJiZcbiAgICAgICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIiAmJlxuICAgICAgICAgICAgL2Fzc2V0XFwuWzAtOWEtZl17NjR9Ly50ZXN0KHZhbHVlKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIFtrZXksIFwiYXNzZXQuc25hcHNob3QtdmFsdWVcIl1cbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIFtrZXksIHJlbW92ZUFzc2V0RGV0YWlsc0Zyb21UZW1wbGF0ZSh2YWx1ZSldXG4gICAgICAgIH0pXG4gICAgICAgIC5maWx0ZXIoKGl0KTogaXQgaXMgW10gPT4gaXQgIT0gbnVsbCksXG4gICAgKVxuICB9XG5cbiAgaWYgKHR5cGVvZiBkYXRhID09PSBcInN0cmluZ1wiKSB7XG4gICAgcmV0dXJuIHJlcGxhY2VBc3NldEhhc2hlc0luU3RyaW5nKGRhdGEpXG4gIH1cblxuICByZXR1cm4gZGF0YVxufVxuXG4vKipcbiAqIFJlY3Vyc2l2ZWx5IHN0cmlwIGFzc2V0LXJlbGF0ZWQgZGV0YWlscyAoaGFzaGVzLCBwYXJhbWV0ZXJzKSBmcm9tIGEgSlNPTlxuICogc3RydWN0dXJlLiBVc2VkIGZvciBib3RoIG1hbmlmZXN0Lmpzb24gKENESyA8IDIuMjQyLjAgd2l0aCBpbmxpbmUgbWV0YWRhdGEpXG4gKiBhbmQgc3RhbmRhbG9uZSAqLm1ldGFkYXRhLmpzb24gZmlsZXMgKENESyA+PSAyLjI0Mi4wKS5cbiAqL1xuZnVuY3Rpb24gcmVtb3ZlQXNzZXREZXRhaWxzRnJvbU1hbmlmZXN0KGRhdGE6IGFueSk6IGFueSB7XG4gIGlmIChBcnJheS5pc0FycmF5KGRhdGEpKSB7XG4gICAgcmV0dXJuIGRhdGEubWFwKHJlbW92ZUFzc2V0RGV0YWlsc0Zyb21NYW5pZmVzdClcbiAgfVxuXG4gIGlmIChkYXRhID09PSBPYmplY3QoZGF0YSkpIHtcbiAgICAvLyBhd3M6Y2RrOmFzc2V0IGluIG1ldGFkYXRhXG4gICAgaWYgKGRhdGEudHlwZSA9PT0gXCJhd3M6Y2RrOmFzc2V0XCIgJiYgXCJkYXRhXCIgaW4gZGF0YSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgZGF0YTogXCJzbmFwc2hvdC12YWx1ZVwiLFxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBPYmplY3QuZnJvbUVudHJpZXMoXG4gICAgICBPYmplY3QuZW50cmllcyhkYXRhIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KVxuICAgICAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgICBpZiAoa2V5LmluY2x1ZGVzKFwiQXNzZXRQYXJhbWV0ZXJzXCIpKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gW2tleSwgcmVtb3ZlQXNzZXREZXRhaWxzRnJvbU1hbmlmZXN0KHZhbHVlKV1cbiAgICAgICAgfSlcbiAgICAgICAgLmZpbHRlcigoaXQpOiBpdCBpcyBbXSA9PiBpdCAhPSBudWxsKSxcbiAgICApXG4gIH1cblxuICBpZiAodHlwZW9mIGRhdGEgPT09IFwic3RyaW5nXCIpIHtcbiAgICByZXR1cm4gcmVwbGFjZUFzc2V0SGFzaGVzSW5TdHJpbmcoZGF0YSlcbiAgfVxuXG4gIHJldHVybiBkYXRhXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBDREtNZXRhZGF0YSByZXNvdXJjZXMgdGhhdCBpcyBwYXJ0IG9mIHRoZSBzeW50aGVzaXplZFxuICogdGVtcGxhdGUgc2luY2UgQ0RLIDEuNjMuMC5cbiAqL1xuZnVuY3Rpb24gcmVtb3ZlQ2RrTWV0YWRhdGFSZXNvdXJjZUZyb21UZW1wbGF0ZShkYXRhOiBhbnkpOiBhbnkge1xuICBjb25zdCBjcCA9IHtcbiAgICAuLi5kYXRhLFxuICAgIFJlc291cmNlczoge1xuICAgICAgLi4uZGF0YS5SZXNvdXJjZXMsXG4gICAgfSxcbiAgfVxuXG4gIGRlbGV0ZSBjcC5SZXNvdXJjZXMuQ0RLTWV0YWRhdGFcbiAgcmV0dXJuIGNwXG59XG5cbi8qKlxuICogU2FuaXRpemUgYSBDbG91ZCBBc3NlbWJseSBtYW5pZmVzdC5qc29uIGZvciBzbmFwc2hvdCB1c2UuXG4gKlxuICogT24gQ0RLIDwgMi4yNDIuMCB0aGUgbWFuaWZlc3QgY29udGFpbnMgaW5saW5lIG1ldGFkYXRhIHBlciBzdGFjayBhcnRpZmFjdC5cbiAqIE9uIENESyA+PSAyLjI0Mi4wIHRoYXQgbWV0YWRhdGEgaXMgZXh0cmFjdGVkIGludG8gc2VwYXJhdGUgZmlsZXMgKGhhbmRsZWRcbiAqIGJ5IHtAbGluayBzYW5pdGl6ZU1ldGFkYXRhfSksIGJ1dCB0aGUgbWFuaWZlc3Qgc3RpbGwgbmVlZHMgdmVyc2lvbixcbiAqIHJ1bnRpbWUsIHRyYWNlLCBhbmQgYXNzZXQgZGV0YWlsIHN0cmlwcGluZy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNhbml0aXplTWFuaWZlc3QoY29udGVudDogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgaW5wdXQgPSBKU09OLnBhcnNlKGNvbnRlbnQpXG4gIGNvbnN0IG91dHB1dCA9IFtcbiAgICByZW1vdmVWZXJzaW9uLFxuICAgIC8vIFJlbW92ZSB0aGUgcnVudGltZSB2ZXJzaW9uIGluZm9ybWF0aW9uIHNvIGl0IGRvbid0IGNvbmZsaWN0IHdpdGggQ0lcbiAgICAvLyBvciBvdGhlciB1c2VycyBnZW5lcmF0aW5nIHRoZSBzbmFwc2hvdHMuXG4gICAgcmVtb3ZlUnVudGltZUxpYnJhcmllcyxcbiAgICByZW1vdmVUcmFjZSxcbiAgICAvLyBBdm9pZCBkZXRhaWxzIChoYXNoZXMpIGZyb20gYXNzZXRzLlxuICAgIHJlbW92ZUFzc2V0RGV0YWlsc0Zyb21NYW5pZmVzdCxcbiAgXS5yZWR1Y2UoKGFjYywgZm4pID0+IGZuKGFjYyksIGlucHV0KVxuXG4gIHJldHVybiBKU09OLnN0cmluZ2lmeShvdXRwdXQsIHVuZGVmaW5lZCwgXCIgIFwiKVxufVxuXG4vKipcbiAqIFNhbml0aXplIGFuIGV4dHJhY3RlZCBtZXRhZGF0YSBKU09OIGZpbGUgZm9yIHNuYXBzaG90IHVzZS5cbiAqXG4gKiBDREsgPj0gMi4yNDIuMCBleHRyYWN0cyBwZXItc3RhY2sgbWV0YWRhdGEgaW50byBzZXBhcmF0ZSAqLm1ldGFkYXRhLmpzb25cbiAqIGZpbGVzIChwcmV2aW91c2x5IHRoaXMgZGF0YSB3YXMgaW5saW5lIGluIG1hbmlmZXN0Lmpzb24pLiBUaGlzIGZ1bmN0aW9uXG4gKiBhcHBsaWVzIHRoZSBzYW1lIHNhbml0aXphdGlvbiAodHJhY2UgcmVtb3ZhbCwgYXNzZXQgZGV0YWlsIHN0cmlwcGluZykgc29cbiAqIHNuYXBzaG90cyByZW1haW4gc3RhYmxlIGFjcm9zcyBzeW50aGVzaXplcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNhbml0aXplTWV0YWRhdGEoY29udGVudDogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgaW5wdXQgPSBKU09OLnBhcnNlKGNvbnRlbnQpXG4gIGNvbnN0IG91dHB1dCA9IFtyZW1vdmVUcmFjZSwgcmVtb3ZlQXNzZXREZXRhaWxzRnJvbU1hbmlmZXN0XS5yZWR1Y2UoXG4gICAgKGFjYywgZm4pID0+IGZuKGFjYyksXG4gICAgaW5wdXQsXG4gIClcblxuICByZXR1cm4gSlNPTi5zdHJpbmdpZnkob3V0cHV0LCB1bmRlZmluZWQsIFwiICBcIilcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNhbml0aXplVGVtcGxhdGUoY29udGVudDogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgaW5wdXQgPSBKU09OLnBhcnNlKGNvbnRlbnQpXG4gIGNvbnN0IG91dHB1dCA9IFtcbiAgICByZW1vdmVDZGtNZXRhZGF0YVJlc291cmNlRnJvbVRlbXBsYXRlLFxuICAgIC8vIEF2b2lkIGRldGFpbHMgKGhhc2hlcykgZnJvbSBhc3NldHMuXG4gICAgcmVtb3ZlQXNzZXREZXRhaWxzRnJvbVRlbXBsYXRlLFxuICBdLnJlZHVjZSgoYWNjLCBmbikgPT4gZm4oYWNjKSwgaW5wdXQpXG5cbiAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KG91dHB1dCwgdW5kZWZpbmVkLCBcIiAgXCIpXG59XG5cbi8qKlxuICogUmVhZCBhIGZpbGUsIGFwcGx5IGEgdHJhbnNmb3JtLCBhbmQgd3JpdGUgdGhlIHJlc3VsdCBiYWNrLlxuICovXG5hc3luYyBmdW5jdGlvbiB0cmFuc2Zvcm1GaWxlSW5QbGFjZShcbiAgZmlsZTogc3RyaW5nLFxuICB0cmFuc2Zvcm06IChjb250ZW50OiBzdHJpbmcpID0+IHN0cmluZyxcbik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCByZXN1bHQgPSB0cmFuc2Zvcm0oYXdhaXQgZnMucHJvbWlzZXMucmVhZEZpbGUoZmlsZSwgXCJ1dGY4XCIpKVxuICBhd2FpdCBmcy5wcm9taXNlcy53cml0ZUZpbGUoZmlsZSwgcmVzdWx0KVxufVxuXG4vKipcbiAqIENvbnZlcnQgYSBDbG91ZCBBc3NlbWJseSB0byBhIHNuYXBzaG90LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlQ2xvdWRBc3NlbWJseVNuYXBzaG90KFxuICBzcmM6IHN0cmluZyxcbiAgZHN0OiBzdHJpbmcsXG4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgZGVzdEFicyA9IHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBkc3QpXG4gIGNvbnN0IHNyY0FicyA9IHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBzcmMpXG5cbiAgLy8gQ29weSBhbGwgZmlsZXMgZnJvbSBzcmMgKGNkay5vdXQpIHRvIGRlc3QgKF9fc25hcHNob3RzX18pXG4gIGZzLmNwU3luYyhzcmNBYnMsIGRlc3RBYnMsIHsgcmVjdXJzaXZlOiB0cnVlIH0pXG5cbiAgY29uc3QgZXhwYW5kR2xvYiA9IChwYXR0ZXJuOiBzdHJpbmcsIGN3ZDogc3RyaW5nKTogc3RyaW5nW10gPT4ge1xuICAgIHJldHVybiBmcy5nbG9iU3luYyhwYXR0ZXJuLCB7IGN3ZCB9KS5tYXAoKHApID0+IHBhdGguam9pbihjd2QsIHApKVxuICB9XG5cbiAgY29uc3QgZmlsZXNUb0RlbGV0ZSA9IFtcbiAgICAvLyBEb24ndCBrZWVwIHRyYWNrIG9mIG1hbmlmZXN0IHZlcnNpb24uXG4gICAgXCIqKi9jZGsub3V0XCIsXG5cbiAgICAvLyBUaGUgdHJlZSBmaWxlIGRvZXNuJ3QgZ2l2ZSB1cyBtdWNoIHZhbHVlIGFzIHBhcnQgb2YgdGhlIHNuYXBzaG90LlxuICAgIFwiKiovdHJlZS5qc29uXCIsXG5cbiAgICAvLyBSZW1vdmUgYXNzZXQgY29udGVudHMgZm9yIG5vdy5cbiAgICBcIioqL2Fzc2V0LipcIixcblxuICAgIC8vIFJlbW92ZSBhc3NldCBjb25maWdzIHNvIHdlIGRvbid0IGhhdmUgdG8gdXBkYXRlIHNuYXBzaG90cyBmb3IgYXNzZXQgY2hhbmdlcy5cbiAgICBcIioqLyouYXNzZXRzLmpzb25cIixcblxuICAgIC8vIFJlbW92ZSBncmFwaHZpeiBmaWxlcyBnZW5lcmF0ZWQgd2hlbiB1c2luZyBDREsgUGlwZWxpbmVzXG4gICAgXCIqKi8qLmRvdFwiLFxuICBdLmZsYXRNYXAoKGcpID0+IGV4cGFuZEdsb2IoZywgZGVzdEFicykpXG5cbiAgYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgZmlsZXNUb0RlbGV0ZS5tYXAoKHApID0+XG4gICAgICBmcy5wcm9taXNlcy5ybShwLCB7XG4gICAgICAgIHJlY3Vyc2l2ZTogdHJ1ZSxcbiAgICAgICAgZm9yY2U6IHRydWUsXG4gICAgICB9KSxcbiAgICApLFxuICApXG5cbiAgY29uc3QgZmlsZVRyYW5zZm9ybXM6IFJlY29yZDxzdHJpbmcsIChjb250ZW50OiBzdHJpbmcpID0+IHN0cmluZz4gPSB7XG4gICAgXCIqKi9tYW5pZmVzdC5qc29uXCI6IHNhbml0aXplTWFuaWZlc3QsXG4gICAgLy8gQ0RLID49IDIuMjQyLjAgZXh0cmFjdHMgcGVyLXN0YWNrIG1ldGFkYXRhIGludG8gc2VwYXJhdGUgZmlsZXMuXG4gICAgLy8gTm8gbWF0Y2hlcyBvbiBvbGRlciBDREsg4oCUIHNhZmUgdG8gcHJvY2VzcyB1bmNvbmRpdGlvbmFsbHkuXG4gICAgXCIqKi8qLm1ldGFkYXRhLmpzb25cIjogc2FuaXRpemVNZXRhZGF0YSxcbiAgICBcIioqLyoudGVtcGxhdGUuanNvblwiOiBzYW5pdGl6ZVRlbXBsYXRlLFxuICB9XG5cbiAgYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgT2JqZWN0LmVudHJpZXMoZmlsZVRyYW5zZm9ybXMpLmZsYXRNYXAoKFtwYXR0ZXJuLCB0cmFuc2Zvcm1dKSA9PlxuICAgICAgZXhwYW5kR2xvYihwYXR0ZXJuLCBkZXN0QWJzKS5tYXAoKGYpID0+XG4gICAgICAgIHRyYW5zZm9ybUZpbGVJblBsYWNlKGYsIHRyYW5zZm9ybSksXG4gICAgICApLFxuICAgICksXG4gIClcbn1cbiJdfQ==
247
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hcHNob3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NuYXBzaG90cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUM3QixPQUFPLEtBQUssSUFBSSxNQUFNLFdBQVcsQ0FBQTtBQUVqQyxTQUFTLGFBQWEsQ0FBQyxJQUFTO0lBQzlCLE1BQU0sRUFBRSxHQUFHO1FBQ1QsR0FBRyxJQUFJO0tBQ1IsQ0FBQTtJQUVELE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQTtJQUNqQixPQUFPLEVBQUUsQ0FBQTtBQUNYLENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FBQyxJQUFTO0lBQzVCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQTtJQUM5QixDQUFDO0lBRUQsSUFBSSxJQUFJLEtBQUssTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDMUIsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUN2QixNQUFNLENBQUMsT0FBTyxDQUFDLElBQStCLENBQUM7YUFDNUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLE9BQU8sQ0FBQzthQUNsQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FDcEQsQ0FBQTtJQUNILENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUM7QUFFRCwyRUFBMkU7QUFDM0UseUVBQXlFO0FBQ3pFLDRFQUE0RTtBQUM1RSxTQUFTLG1CQUFtQixDQUFDLElBQVM7SUFDcEMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENB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Q3BFLENBQUMsQ0FBQTtJQUVELE1BQU0sYUFBYSxHQUFHO1FBQ3BCLHdDQUF3QztRQUN4QyxZQUFZO1FBRVosb0VBQW9FO1FBQ3BFLGNBQWM7UUFFZCxpQ0FBaUM7UUFDakMsWUFBWTtRQUVaLCtFQUErRTtRQUMvRSxrQkFBa0I7UUFFbEIsMkRBQTJEO1FBQzNELFVBQVU7S0FDWCxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFBO0lBRXhDLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDZixhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDdEIsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFO1FBQ2hCLFNBQVMsRUFBRSxJQUFJO1FBQ2YsS0FBSyxFQUFFLElBQUk7S0FDWixDQUFDLENBQ0gsQ0FDRixDQUFBO0lBRUQsTUFBTSxjQUFjLEdBQWdEO1FBQ2xFLGtCQUFrQixFQUFFLGdCQUFnQjtRQUNwQyxrRUFBa0U7UUFDbEUsNkRBQTZEO1FBQzdELG9CQUFvQixFQUFFLGdCQUFnQjtRQUN0QyxvQkFBb0IsRUFBRSxnQkFBZ0I7S0FDdkMsQ0FBQTtJQUVELE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDZixNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxFQUFFLEVBQUUsQ0FDOUQsVUFBVSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNyQyxvQkFBb0IsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQ25DLENBQ0YsQ0FDRixDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gXCJub2RlOmZzXCJcbmltcG9ydCAqIGFzIHBhdGggZnJvbSBcIm5vZGU6cGF0aFwiXG5cbmZ1bmN0aW9uIHJlbW92ZVZlcnNpb24oZGF0YTogYW55KTogYW55IHtcbiAgY29uc3QgY3AgPSB7XG4gICAgLi4uZGF0YSxcbiAgfVxuXG4gIGRlbGV0ZSBjcC52ZXJzaW9uXG4gIHJldHVybiBjcFxufVxuXG5mdW5jdGlvbiByZW1vdmVUcmFjZShkYXRhOiBhbnkpOiBhbnkge1xuICBpZiAoQXJyYXkuaXNBcnJheShkYXRhKSkge1xuICAgIHJldHVybiBkYXRhLm1hcChyZW1vdmVUcmFjZSlcbiAgfVxuXG4gIGlmIChkYXRhID09PSBPYmplY3QoZGF0YSkpIHtcbiAgICByZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgICAgT2JqZWN0LmVudHJpZXMoZGF0YSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPilcbiAgICAgICAgLmZpbHRlcigoW2tleV0pID0+IGtleSAhPT0gXCJ0cmFjZVwiKVxuICAgICAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IFtrZXksIHJlbW92ZVRyYWNlKHZhbHVlKV0pLFxuICAgIClcbiAgfVxuXG4gIHJldHVybiBkYXRhXG59XG5cbi8vIENESyA+PSAyLjI1MS4wIGVtaXRzIGBhd3M6Y2RrOmNyZWF0aW9uU3RhY2tgIG1ldGFkYXRhIGVudHJpZXMgY29udGFpbmluZ1xuLy8gY29uc3RydWN0IGNyZWF0aW9uIHN0YWNrIHRyYWNlcy4gVGhlc2UgaW5jbHVkZSBhYnNvbHV0ZSBwYXRocyBmcm9tIHRoZVxuLy8gbWFjaGluZSB0aGF0IHJhbiBgY2RrIHN5bnRoYCwgc28gdGhleSBhcmUgbm90IHN0YWJsZSBhY3Jvc3MgZW52aXJvbm1lbnRzLlxuZnVuY3Rpb24gcmVtb3ZlQ3JlYXRpb25TdGFjayhkYXRhOiBhbnkpOiBhbnkge1xuICBpZiAoQXJyYXkuaXNBcnJheShkYXRhKSkge1xuICAgIHJldHVybiBkYXRhXG4gICAgICAuZmlsdGVyKFxuICAgICAgICAoaXRlbSkgPT5cbiAgICAgICAgICAhKFxuICAgICAgICAgICAgaXRlbSA9PT0gT2JqZWN0KGl0ZW0pICYmXG4gICAgICAgICAgICAoaXRlbSBhcyB7IHR5cGU/OiB1bmtub3duIH0pLnR5cGUgPT09IFwiYXdzOmNkazpjcmVhdGlvblN0YWNrXCJcbiAgICAgICAgICApLFxuICAgICAgKVxuICAgICAgLm1hcChyZW1vdmVDcmVhdGlvblN0YWNrKVxuICB9XG5cbiAgaWYgKGRhdGEgPT09IE9iamVjdChkYXRhKSkge1xuICAgIHJldHVybiBPYmplY3QuZnJvbUVudHJpZXMoXG4gICAgICBPYmplY3QuZW50cmllcyhkYXRhIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KVxuICAgICAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IFtrZXksIHJlbW92ZUNyZWF0aW9uU3RhY2sodmFsdWUpXSlcbiAgICAgICAgLmZpbHRlcigoWywgdmFsdWVdKSA9PiAhKEFycmF5LmlzQXJyYXkodmFsdWUpICYmIHZhbHVlLmxlbmd0aCA9PT0gMCkpLFxuICAgIClcbiAgfVxuXG4gIHJldHVybiBkYXRhXG59XG5cbmZ1bmN0aW9uIHJlbW92ZVJ1bnRpbWVMaWJyYXJpZXMoZGF0YTogYW55KTogYW55IHtcbiAgY29uc3QgY3AgPSB7XG4gICAgLi4uZGF0YSxcbiAgfVxuXG4gIGlmIChkYXRhLnJ1bnRpbWUpIHtcbiAgICBjcC5ydW50aW1lID0ge1xuICAgICAgLi4uZGF0YS5ydW50aW1lLFxuICAgIH1cblxuICAgIGRlbGV0ZSBjcC5ydW50aW1lLmxpYnJhcmllc1xuICB9XG5cbiAgcmV0dXJuIGNwXG59XG5cbmNvbnN0IGN1cnJlbnRWZXJzaW9uUmVnZXggPSAvXiguK0N1cnJlbnRWZXJzaW9uWzAtOUEtRl17OH0pWzAtOWEtZl17MzJ9JC9cblxuLy8gTWF0Y2hlcyA2NC1jaGFyIGhleCBzdHJpbmdzIHVzZWQgYXMgQ0RLIGFzc2V0IGNvbnRlbnQgaGFzaGVzLlxuY29uc3QgYXNzZXRDb250ZW50SGFzaFJlZ2V4ID0gL1swLTlhLWZdezY0fS9nXG5cbi8vIE1hdGNoZXMgdGhlIHNob3J0IDgtY2hhciBoYXNoIHN1ZmZpeCBpbiBDREsgUGlwZWxpbmVzIGFzc2V0IGlkZW50aWZpZXJzLFxuLy8gZS5nLiBcInNuYXBzaG90LXZhbHVlOjEyMzQ1Njc4OTAxMi1ldS13ZXN0LTEtMGU5NGY5ZGVcIi5cbmNvbnN0IHBpcGVsaW5lc0Fzc2V0SWRTdWZmaXhSZWdleCA9XG4gIC8oc25hcHNob3QtdmFsdWU6XFxkKy1bYS16MC05LV0rLSlbMC05YS1mXXs4fS9nXG5cbi8qKlxuICogTWF0Y2ggYSByZXNvdXJjZSBjcmVhdGVkIGJ5IGBsYW1iZGEuRnVuY3Rpb24uY3VycmVudFZlcnNpb25gLCB3aGljaFxuICogd2lsbCBpbmNsdWRlIHRoZSBhc3NldCBoYXNoIGFzIHBhcnQgb2YgdGhlIHJlb3VzcmNlIG5hbWUgYW5kIHJldHVyblxuICogYSBzbmFwc2hvdC1mcmllbmRseSB2ZXJzaW9uIG9mIGl0IGlmIGZvdW5kLlxuICovXG5mdW5jdGlvbiByZXdyaXRlQ3VycmVudFZlcnNpb25JZkZvdW5kKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgY29uc3QgbWF0Y2ggPSBjdXJyZW50VmVyc2lvblJlZ2V4LmV4ZWModmFsdWUpXG4gIHJldHVybiBtYXRjaCA/IGAke21hdGNoWzFdfXh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4YCA6IG51bGxcbn1cblxuLyoqXG4gKiBSZXBsYWNlIGFzc2V0IGhhc2hlcyBpbiBhIHN0cmluZyB2YWx1ZSB3aXRoIHN0YWJsZSBwbGFjZWhvbGRlcnMuXG4gKiBTaGFyZWQgYnkgYm90aCB0ZW1wbGF0ZSBhbmQgbWFuaWZlc3QvbWV0YWRhdGEgYXNzZXQgc3RyaXBwaW5nLlxuICovXG5mdW5jdGlvbiByZXBsYWNlQXNzZXRIYXNoZXNJblN0cmluZyh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgbmV3Q3VycmVudFZlcnNpb24gPSByZXdyaXRlQ3VycmVudFZlcnNpb25JZkZvdW5kKHZhbHVlKVxuICBpZiAobmV3Q3VycmVudFZlcnNpb24pIHtcbiAgICByZXR1cm4gbmV3Q3VycmVudFZlcnNpb25cbiAgfVxuXG4gIHJldHVybiB2YWx1ZVxuICAgIC5yZXBsYWNlKGFzc2V0Q29udGVudEhhc2hSZWdleCwgXCJzbmFwc2hvdC12YWx1ZVwiKVxuICAgIC5yZXBsYWNlKHBpcGVsaW5lc0Fzc2V0SWRTdWZmaXhSZWdleCwgXCIkMXNuYXBzaG90LXZhbHVlXCIpXG59XG5cbmZ1bmN0aW9uIHJlbW92ZUFzc2V0RGV0YWlsc0Zyb21UZW1wbGF0ZShkYXRhOiBhbnkpOiBhbnkge1xuICBpZiAoQXJyYXkuaXNBcnJheShkYXRhKSkge1xuICAgIHJldHVybiBkYXRhLm1hcChyZW1vdmVBc3NldERldGFpbHNGcm9tVGVtcGxhdGUpXG4gIH1cblxuICBpZiAoZGF0YSA9PT0gT2JqZWN0KGRhdGEpKSB7XG4gICAgcmV0dXJuIE9iamVjdC5mcm9tRW50cmllcyhcbiAgICAgIE9iamVjdC5lbnRyaWVzKGRhdGEgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4pXG4gICAgICAgIC5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgIGNvbnN0IG5ld0N1cnJlbnRWZXJzaW9uID0gcmV3cml0ZUN1cnJlbnRWZXJzaW9uSWZGb3VuZChrZXkpXG4gICAgICAgICAgaWYgKG5ld0N1cnJlbnRWZXJzaW9uKSB7XG4gICAgICAgICAgICByZXR1cm4gW25ld0N1cnJlbnRWZXJzaW9uLCByZW1vdmVBc3NldERldGFpbHNGcm9tVGVtcGxhdGUodmFsdWUpXVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoa2V5LmluY2x1ZGVzKFwiQXNzZXRQYXJhbWV0ZXJcIikpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGtleSA9PT0gXCJSZWZcIiAmJlxuICAgICAgICAgICAgdHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiICYmXG4gICAgICAgICAgICB2YWx1ZS5pbmNsdWRlcyhcIkFzc2V0UGFyYW1ldGVyc1wiKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIFtrZXksIFwic25hcHNob3QtdmFsdWVcIl1cbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAga2V5ID09PSBcImF3czphc3NldDpwYXRoXCIgJiZcbiAgICAgICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIiAmJlxuICAgICAgICAgICAgL2Fzc2V0XFwuWzAtOWEtZl17NjR9Ly50ZXN0KHZhbHVlKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIFtrZXksIFwiYXNzZXQuc25hcHNob3QtdmFsdWVcIl1cbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIFtrZXksIHJlbW92ZUFzc2V0RGV0YWlsc0Zyb21UZW1wbGF0ZSh2YWx1ZSldXG4gICAgICAgIH0pXG4gICAgICAgIC5maWx0ZXIoKGl0KTogaXQgaXMgW10gPT4gaXQgIT0gbnVsbCksXG4gICAgKVxuICB9XG5cbiAgaWYgKHR5cGVvZiBkYXRhID09PSBcInN0cmluZ1wiKSB7XG4gICAgcmV0dXJuIHJlcGxhY2VBc3NldEhhc2hlc0luU3RyaW5nKGRhdGEpXG4gIH1cblxuICByZXR1cm4gZGF0YVxufVxuXG4vKipcbiAqIFJlY3Vyc2l2ZWx5IHN0cmlwIGFzc2V0LXJlbGF0ZWQgZGV0YWlscyAoaGFzaGVzLCBwYXJhbWV0ZXJzKSBmcm9tIGEgSlNPTlxuICogc3RydWN0dXJlLiBVc2VkIGZvciBib3RoIG1hbmlmZXN0Lmpzb24gKENESyA8IDIuMjQyLjAgd2l0aCBpbmxpbmUgbWV0YWRhdGEpXG4gKiBhbmQgc3RhbmRhbG9uZSAqLm1ldGFkYXRhLmpzb24gZmlsZXMgKENESyA+PSAyLjI0Mi4wKS5cbiAqL1xuZnVuY3Rpb24gcmVtb3ZlQXNzZXREZXRhaWxzRnJvbU1hbmlmZXN0KGRhdGE6IGFueSk6IGFueSB7XG4gIGlmIChBcnJheS5pc0FycmF5KGRhdGEpKSB7XG4gICAgcmV0dXJuIGRhdGEubWFwKHJlbW92ZUFzc2V0RGV0YWlsc0Zyb21NYW5pZmVzdClcbiAgfVxuXG4gIGlmIChkYXRhID09PSBPYmplY3QoZGF0YSkpIHtcbiAgICAvLyBhd3M6Y2RrOmFzc2V0IGluIG1ldGFkYXRhXG4gICAgaWYgKGRhdGEudHlwZSA9PT0gXCJhd3M6Y2RrOmFzc2V0XCIgJiYgXCJkYXRhXCIgaW4gZGF0YSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgZGF0YTogXCJzbmFwc2hvdC12YWx1ZVwiLFxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBPYmplY3QuZnJvbUVudHJpZXMoXG4gICAgICBPYmplY3QuZW50cmllcyhkYXRhIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KVxuICAgICAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgICBpZiAoa2V5LmluY2x1ZGVzKFwiQXNzZXRQYXJhbWV0ZXJzXCIpKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gW2tleSwgcmVtb3ZlQXNzZXREZXRhaWxzRnJvbU1hbmlmZXN0KHZhbHVlKV1cbiAgICAgICAgfSlcbiAgICAgICAgLmZpbHRlcigoaXQpOiBpdCBpcyBbXSA9PiBpdCAhPSBudWxsKSxcbiAgICApXG4gIH1cblxuICBpZiAodHlwZW9mIGRhdGEgPT09IFwic3RyaW5nXCIpIHtcbiAgICByZXR1cm4gcmVwbGFjZUFzc2V0SGFzaGVzSW5TdHJpbmcoZGF0YSlcbiAgfVxuXG4gIHJldHVybiBkYXRhXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBDREtNZXRhZGF0YSByZXNvdXJjZXMgdGhhdCBpcyBwYXJ0IG9mIHRoZSBzeW50aGVzaXplZFxuICogdGVtcGxhdGUgc2luY2UgQ0RLIDEuNjMuMC5cbiAqL1xuZnVuY3Rpb24gcmVtb3ZlQ2RrTWV0YWRhdGFSZXNvdXJjZUZyb21UZW1wbGF0ZShkYXRhOiBhbnkpOiBhbnkge1xuICBjb25zdCBjcCA9IHtcbiAgICAuLi5kYXRhLFxuICAgIFJlc291cmNlczoge1xuICAgICAgLi4uZGF0YS5SZXNvdXJjZXMsXG4gICAgfSxcbiAgfVxuXG4gIGRlbGV0ZSBjcC5SZXNvdXJjZXMuQ0RLTWV0YWRhdGFcbiAgcmV0dXJuIGNwXG59XG5cbi8qKlxuICogU2FuaXRpemUgYSBDbG91ZCBBc3NlbWJseSBtYW5pZmVzdC5qc29uIGZvciBzbmFwc2hvdCB1c2UuXG4gKlxuICogT24gQ0RLIDwgMi4yNDIuMCB0aGUgbWFuaWZlc3QgY29udGFpbnMgaW5saW5lIG1ldGFkYXRhIHBlciBzdGFjayBhcnRpZmFjdC5cbiAqIE9uIENESyA+PSAyLjI0Mi4wIHRoYXQgbWV0YWRhdGEgaXMgZXh0cmFjdGVkIGludG8gc2VwYXJhdGUgZmlsZXMgKGhhbmRsZWRcbiAqIGJ5IHtAbGluayBzYW5pdGl6ZU1ldGFkYXRhfSksIGJ1dCB0aGUgbWFuaWZlc3Qgc3RpbGwgbmVlZHMgdmVyc2lvbixcbiAqIHJ1bnRpbWUsIHRyYWNlLCBhbmQgYXNzZXQgZGV0YWlsIHN0cmlwcGluZy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNhbml0aXplTWFuaWZlc3QoY29udGVudDogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgaW5wdXQgPSBKU09OLnBhcnNlKGNvbnRlbnQpXG4gIGNvbnN0IG91dHB1dCA9IFtcbiAgICByZW1vdmVWZXJzaW9uLFxuICAgIC8vIFJlbW92ZSB0aGUgcnVudGltZSB2ZXJzaW9uIGluZm9ybWF0aW9uIHNvIGl0IGRvbid0IGNvbmZsaWN0IHdpdGggQ0lcbiAgICAvLyBvciBvdGhlciB1c2VycyBnZW5lcmF0aW5nIHRoZSBzbmFwc2hvdHMuXG4gICAgcmVtb3ZlUnVudGltZUxpYnJhcmllcyxcbiAgICByZW1vdmVUcmFjZSxcbiAgICByZW1vdmVDcmVhdGlvblN0YWNrLFxuICAgIC8vIEF2b2lkIGRldGFpbHMgKGhhc2hlcykgZnJvbSBhc3NldHMuXG4gICAgcmVtb3ZlQXNzZXREZXRhaWxzRnJvbU1hbmlmZXN0LFxuICBdLnJlZHVjZSgoYWNjLCBmbikgPT4gZm4oYWNjKSwgaW5wdXQpXG5cbiAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KG91dHB1dCwgdW5kZWZpbmVkLCBcIiAgXCIpXG59XG5cbi8qKlxuICogU2FuaXRpemUgYW4gZXh0cmFjdGVkIG1ldGFkYXRhIEpTT04gZmlsZSBmb3Igc25hcHNob3QgdXNlLlxuICpcbiAqIENESyA+PSAyLjI0Mi4wIGV4dHJhY3RzIHBlci1zdGFjayBtZXRhZGF0YSBpbnRvIHNlcGFyYXRlICoubWV0YWRhdGEuanNvblxuICogZmlsZXMgKHByZXZpb3VzbHkgdGhpcyBkYXRhIHdhcyBpbmxpbmUgaW4gbWFuaWZlc3QuanNvbikuIFRoaXMgZnVuY3Rpb25cbiAqIGFwcGxpZXMgdGhlIHNhbWUgc2FuaXRpemF0aW9uICh0cmFjZSByZW1vdmFsLCBhc3NldCBkZXRhaWwgc3RyaXBwaW5nKSBzb1xuICogc25hcHNob3RzIHJlbWFpbiBzdGFibGUgYWNyb3NzIHN5bnRoZXNpemVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc2FuaXRpemVNZXRhZGF0YShjb250ZW50OiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBpbnB1dCA9IEpTT04ucGFyc2UoY29udGVudClcbiAgY29uc3Qgb3V0cHV0ID0gW1xuICAgIHJlbW92ZVRyYWNlLFxuICAgIHJlbW92ZUNyZWF0aW9uU3RhY2ssXG4gICAgcmVtb3ZlQXNzZXREZXRhaWxzRnJvbU1hbmlmZXN0LFxuICBdLnJlZHVjZSgoYWNjLCBmbikgPT4gZm4oYWNjKSwgaW5wdXQpXG5cbiAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KG91dHB1dCwgdW5kZWZpbmVkLCBcIiAgXCIpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzYW5pdGl6ZVRlbXBsYXRlKGNvbnRlbnQ6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IGlucHV0ID0gSlNPTi5wYXJzZShjb250ZW50KVxuICBjb25zdCBvdXRwdXQgPSBbXG4gICAgcmVtb3ZlQ2RrTWV0YWRhdGFSZXNvdXJjZUZyb21UZW1wbGF0ZSxcbiAgICAvLyBBdm9pZCBkZXRhaWxzIChoYXNoZXMpIGZyb20gYXNzZXRzLlxuICAgIHJlbW92ZUFzc2V0RGV0YWlsc0Zyb21UZW1wbGF0ZSxcbiAgXS5yZWR1Y2UoKGFjYywgZm4pID0+IGZuKGFjYyksIGlucHV0KVxuXG4gIHJldHVybiBKU09OLnN0cmluZ2lmeShvdXRwdXQsIHVuZGVmaW5lZCwgXCIgIFwiKVxufVxuXG4vKipcbiAqIFJlYWQgYSBmaWxlLCBhcHBseSBhIHRyYW5zZm9ybSwgYW5kIHdyaXRlIHRoZSByZXN1bHQgYmFjay5cbiAqL1xuYXN5bmMgZnVuY3Rpb24gdHJhbnNmb3JtRmlsZUluUGxhY2UoXG4gIGZpbGU6IHN0cmluZyxcbiAgdHJhbnNmb3JtOiAoY29udGVudDogc3RyaW5nKSA9PiBzdHJpbmcsXG4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgcmVzdWx0ID0gdHJhbnNmb3JtKGF3YWl0IGZzLnByb21pc2VzLnJlYWRGaWxlKGZpbGUsIFwidXRmOFwiKSlcbiAgYXdhaXQgZnMucHJvbWlzZXMud3JpdGVGaWxlKGZpbGUsIHJlc3VsdClcbn1cblxuLyoqXG4gKiBDb252ZXJ0IGEgQ2xvdWQgQXNzZW1ibHkgdG8gYSBzbmFwc2hvdC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNyZWF0ZUNsb3VkQXNzZW1ibHlTbmFwc2hvdChcbiAgc3JjOiBzdHJpbmcsXG4gIGRzdDogc3RyaW5nLFxuKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IGRlc3RBYnMgPSBwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgZHN0KVxuICBjb25zdCBzcmNBYnMgPSBwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgc3JjKVxuXG4gIC8vIENvcHkgYWxsIGZpbGVzIGZyb20gc3JjIChjZGsub3V0KSB0byBkZXN0IChfX3NuYXBzaG90c19fKVxuICBmcy5jcFN5bmMoc3JjQWJzLCBkZXN0QWJzLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KVxuXG4gIGNvbnN0IGV4cGFuZEdsb2IgPSAocGF0dGVybjogc3RyaW5nLCBjd2Q6IHN0cmluZyk6IHN0cmluZ1tdID0+IHtcbiAgICByZXR1cm4gZnMuZ2xvYlN5bmMocGF0dGVybiwgeyBjd2QgfSkubWFwKChwKSA9PiBwYXRoLmpvaW4oY3dkLCBwKSlcbiAgfVxuXG4gIGNvbnN0IGZpbGVzVG9EZWxldGUgPSBbXG4gICAgLy8gRG9uJ3Qga2VlcCB0cmFjayBvZiBtYW5pZmVzdCB2ZXJzaW9uLlxuICAgIFwiKiovY2RrLm91dFwiLFxuXG4gICAgLy8gVGhlIHRyZWUgZmlsZSBkb2Vzbid0IGdpdmUgdXMgbXVjaCB2YWx1ZSBhcyBwYXJ0IG9mIHRoZSBzbmFwc2hvdC5cbiAgICBcIioqL3RyZWUuanNvblwiLFxuXG4gICAgLy8gUmVtb3ZlIGFzc2V0IGNvbnRlbnRzIGZvciBub3cuXG4gICAgXCIqKi9hc3NldC4qXCIsXG5cbiAgICAvLyBSZW1vdmUgYXNzZXQgY29uZmlncyBzbyB3ZSBkb24ndCBoYXZlIHRvIHVwZGF0ZSBzbmFwc2hvdHMgZm9yIGFzc2V0IGNoYW5nZXMuXG4gICAgXCIqKi8qLmFzc2V0cy5qc29uXCIsXG5cbiAgICAvLyBSZW1vdmUgZ3JhcGh2aXogZmlsZXMgZ2VuZXJhdGVkIHdoZW4gdXNpbmcgQ0RLIFBpcGVsaW5lc1xuICAgIFwiKiovKi5kb3RcIixcbiAgXS5mbGF0TWFwKChnKSA9PiBleHBhbmRHbG9iKGcsIGRlc3RBYnMpKVxuXG4gIGF3YWl0IFByb21pc2UuYWxsKFxuICAgIGZpbGVzVG9EZWxldGUubWFwKChwKSA9PlxuICAgICAgZnMucHJvbWlzZXMucm0ocCwge1xuICAgICAgICByZWN1cnNpdmU6IHRydWUsXG4gICAgICAgIGZvcmNlOiB0cnVlLFxuICAgICAgfSksXG4gICAgKSxcbiAgKVxuXG4gIGNvbnN0IGZpbGVUcmFuc2Zvcm1zOiBSZWNvcmQ8c3RyaW5nLCAoY29udGVudDogc3RyaW5nKSA9PiBzdHJpbmc+ID0ge1xuICAgIFwiKiovbWFuaWZlc3QuanNvblwiOiBzYW5pdGl6ZU1hbmlmZXN0LFxuICAgIC8vIENESyA+PSAyLjI0Mi4wIGV4dHJhY3RzIHBlci1zdGFjayBtZXRhZGF0YSBpbnRvIHNlcGFyYXRlIGZpbGVzLlxuICAgIC8vIE5vIG1hdGNoZXMgb24gb2xkZXIgQ0RLIOKAlCBzYWZlIHRvIHByb2Nlc3MgdW5jb25kaXRpb25hbGx5LlxuICAgIFwiKiovKi5tZXRhZGF0YS5qc29uXCI6IHNhbml0aXplTWV0YWRhdGEsXG4gICAgXCIqKi8qLnRlbXBsYXRlLmpzb25cIjogc2FuaXRpemVUZW1wbGF0ZSxcbiAgfVxuXG4gIGF3YWl0IFByb21pc2UuYWxsKFxuICAgIE9iamVjdC5lbnRyaWVzKGZpbGVUcmFuc2Zvcm1zKS5mbGF0TWFwKChbcGF0dGVybiwgdHJhbnNmb3JtXSkgPT5cbiAgICAgIGV4cGFuZEdsb2IocGF0dGVybiwgZGVzdEFicykubWFwKChmKSA9PlxuICAgICAgICB0cmFuc2Zvcm1GaWxlSW5QbGFjZShmLCB0cmFuc2Zvcm0pLFxuICAgICAgKSxcbiAgICApLFxuICApXG59XG4iXX0=
@@ -10,6 +10,11 @@ function removeLeadingSlash(value) {
10
10
  export class SsmParameterReader extends cr.AwsCustomResource {
11
11
  constructor(scope, id, props) {
12
12
  super(scope, id, {
13
+ // Use SDK bundled with the Lambda runtime instead of installing the
14
+ // latest at execution time. Avoids ~60s npm install on every invocation
15
+ // and removes a runtime dependency on npmjs.com availability.
16
+ // https://constructs.dev/packages/aws-cdk-lib/v/2.251.0?submodule=custom_resources&lang=typescript
17
+ installLatestAwsSdk: false,
13
18
  onUpdate: {
14
19
  service: "SSM",
15
20
  action: "getParameter",
@@ -40,4 +45,4 @@ export class SsmParameterReader extends cr.AwsCustomResource {
40
45
  return this.getResponseField("Parameter.Value");
41
46
  }
42
47
  }
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3NtLXBhcmFtZXRlci1yZWFkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvc3NtLXBhcmFtZXRlci1yZWFkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEdBQUcsTUFBTSxhQUFhLENBQUE7QUFDbEMsT0FBTyxLQUFLLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQWNsRCxTQUFTLGtCQUFrQixDQUFDLEtBQWE7SUFDdkMsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQTtBQUMzRCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGtCQUFtQixTQUFRLEVBQUUsQ0FBQyxpQkFBaUI7SUFDMUQsWUFBWSxLQUEyQixFQUFFLEVBQVUsRUFBRSxLQUFZO1FBQy9ELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsUUFBUSxFQUFFO2dCQUNSLE9BQU8sRUFBRSxLQUFLO2dCQUNkLE1BQU0sRUFBRSxjQUFjO2dCQUN0QixVQUFVLEVBQUU7b0JBQ1YsSUFBSSxFQUFFLEtBQUssQ0FBQyxhQUFhO2lCQUMxQjtnQkFDRCxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07Z0JBQ3BCLGtEQUFrRDtnQkFDbEQsa0JBQWtCLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDO2FBQ2xFO1lBQ0QsTUFBTSxFQUFFLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxZQUFZLENBQUM7Z0JBQzlDLFNBQVMsRUFBRTtvQkFDVCxHQUFHLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FDWjt3QkFDRSxPQUFPLEVBQUUsS0FBSzt3QkFDZCxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07d0JBQ3BCLFFBQVEsRUFBRSxXQUFXO3dCQUNyQixZQUFZLEVBQUUsa0JBQWtCLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQztxQkFDdEQsRUFDRCxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FDcEI7aUJBQ0Y7YUFDRixDQUFDO1NBQ0gsQ0FBQyxDQUFBO1FBRUYsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSTthQUMzQyxZQUErQixDQUFBO1FBQ2xDLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQTtRQUNuRCxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDcEUsQ0FBQztJQUVNLGlCQUFpQjtRQUN0QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO0lBQ2pELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIlxuaW1wb3J0ICogYXMgY3IgZnJvbSBcImF3cy1jZGstbGliL2N1c3RvbS1yZXNvdXJjZXNcIlxuaW1wb3J0IHR5cGUgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCJcblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgcGFyYW1ldGVyTmFtZTogc3RyaW5nXG4gIHJlZ2lvbjogc3RyaW5nXG4gIC8qKlxuICAgKiBWYWx1ZSB0aGF0IG11c3QgYmUgdXBkYXRlZCB0byBjaGVjayBpZiB0aGUgcGFyYW1ldGVyIGhhcyBhIG5ldyB2YWx1ZS5cbiAgICpcbiAgICogQGRlZmF1bHQgRGF0ZS5ub3coKS50b1N0cmluZygpXG4gICAqL1xuICBub25jZT86IHN0cmluZ1xufVxuXG5mdW5jdGlvbiByZW1vdmVMZWFkaW5nU2xhc2godmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiB2YWx1ZS5zbGljZSgwLCAxKSA9PT0gXCIvXCIgPyB2YWx1ZS5zbGljZSgxKSA6IHZhbHVlXG59XG5cbi8qKlxuICogR2V0IHZhbHVlIG9mIGEgU1NNIHBhcmFtZXRlciBkeW5hbWljYWxseSBkdXJpbmcgZGVwbG95bWVudFxuICogd2l0aCBzdXBwb3J0IHRvIHJlYWQgY3Jvc3MtcmVnaW9uLlxuICovXG5leHBvcnQgY2xhc3MgU3NtUGFyYW1ldGVyUmVhZGVyIGV4dGVuZHMgY3IuQXdzQ3VzdG9tUmVzb3VyY2Uge1xuICBjb25zdHJ1Y3RvcihzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgb25VcGRhdGU6IHtcbiAgICAgICAgc2VydmljZTogXCJTU01cIixcbiAgICAgICAgYWN0aW9uOiBcImdldFBhcmFtZXRlclwiLFxuICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgTmFtZTogcHJvcHMucGFyYW1ldGVyTmFtZSxcbiAgICAgICAgfSxcbiAgICAgICAgcmVnaW9uOiBwcm9wcy5yZWdpb24sXG4gICAgICAgIC8vIFVwZGF0ZSBwaHlzaWNhbCBpZCB0byBmZXRjaCB0aGUgbGF0ZXN0IHZlcnNpb24uXG4gICAgICAgIHBoeXNpY2FsUmVzb3VyY2VJZDogY3IuUGh5c2ljYWxSZXNvdXJjZUlkLm9mKHByb3BzLnBhcmFtZXRlck5hbWUpLFxuICAgICAgfSxcbiAgICAgIHBvbGljeTogY3IuQXdzQ3VzdG9tUmVzb3VyY2VQb2xpY3kuZnJvbVNka0NhbGxzKHtcbiAgICAgICAgcmVzb3VyY2VzOiBbXG4gICAgICAgICAgY2RrLkFybi5mb3JtYXQoXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHNlcnZpY2U6IFwic3NtXCIsXG4gICAgICAgICAgICAgIHJlZ2lvbjogcHJvcHMucmVnaW9uLFxuICAgICAgICAgICAgICByZXNvdXJjZTogXCJwYXJhbWV0ZXJcIixcbiAgICAgICAgICAgICAgcmVzb3VyY2VOYW1lOiByZW1vdmVMZWFkaW5nU2xhc2gocHJvcHMucGFyYW1ldGVyTmFtZSksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY2RrLlN0YWNrLm9mKHNjb3BlKSxcbiAgICAgICAgICApLFxuICAgICAgICBdLFxuICAgICAgfSksXG4gICAgfSlcblxuICAgIGNvbnN0IHIgPSB0aGlzLm5vZGUuZmluZENoaWxkKFwiUmVzb3VyY2VcIikubm9kZVxuICAgICAgLmRlZmF1bHRDaGlsZCBhcyBjZGsuQ2ZuUmVzb3VyY2VcbiAgICByLmNmbk9wdGlvbnMubWV0YWRhdGEgPSByLmNmbk9wdGlvbnMubWV0YWRhdGEgfHwge31cbiAgICByLmNmbk9wdGlvbnMubWV0YWRhdGEuTm9uY2UgPSBwcm9wcy5ub25jZSA/PyBEYXRlLm5vdygpLnRvU3RyaW5nKClcbiAgfVxuXG4gIHB1YmxpYyBnZXRQYXJhbWV0ZXJWYWx1ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmdldFJlc3BvbnNlRmllbGQoXCJQYXJhbWV0ZXIuVmFsdWVcIilcbiAgfVxufVxuIl19
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3NtLXBhcmFtZXRlci1yZWFkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvc3NtLXBhcmFtZXRlci1yZWFkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEdBQUcsTUFBTSxhQUFhLENBQUE7QUFDbEMsT0FBTyxLQUFLLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQWNsRCxTQUFTLGtCQUFrQixDQUFDLEtBQWE7SUFDdkMsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQTtBQUMzRCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGtCQUFtQixTQUFRLEVBQUUsQ0FBQyxpQkFBaUI7SUFDMUQsWUFBWSxLQUEyQixFQUFFLEVBQVUsRUFBRSxLQUFZO1FBQy9ELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2Ysb0VBQW9FO1lBQ3BFLHdFQUF3RTtZQUN4RSw4REFBOEQ7WUFDOUQsbUdBQW1HO1lBQ25HLG1CQUFtQixFQUFFLEtBQUs7WUFDMUIsUUFBUSxFQUFFO2dCQUNSLE9BQU8sRUFBRSxLQUFLO2dCQUNkLE1BQU0sRUFBRSxjQUFjO2dCQUN0QixVQUFVLEVBQUU7b0JBQ1YsSUFBSSxFQUFFLEtBQUssQ0FBQyxhQUFhO2lCQUMxQjtnQkFDRCxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07Z0JBQ3BCLGtEQUFrRDtnQkFDbEQsa0JBQWtCLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDO2FBQ2xFO1lBQ0QsTUFBTSxFQUFFLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxZQUFZLENBQUM7Z0JBQzlDLFNBQVMsRUFBRTtvQkFDVCxHQUFHLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FDWjt3QkFDRSxPQUFPLEVBQUUsS0FBSzt3QkFDZCxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07d0JBQ3BCLFFBQVEsRUFBRSxXQUFXO3dCQUNyQixZQUFZLEVBQUUsa0JBQWtCLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQztxQkFDdEQsRUFDRCxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FDcEI7aUJBQ0Y7YUFDRixDQUFDO1NBQ0gsQ0FBQyxDQUFBO1FBRUYsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSTthQUMzQyxZQUErQixDQUFBO1FBQ2xDLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQTtRQUNuRCxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDcEUsQ0FBQztJQUVNLGlCQUFpQjtRQUN0QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO0lBQ2pELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIlxuaW1wb3J0ICogYXMgY3IgZnJvbSBcImF3cy1jZGstbGliL2N1c3RvbS1yZXNvdXJjZXNcIlxuaW1wb3J0IHR5cGUgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCJcblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgcGFyYW1ldGVyTmFtZTogc3RyaW5nXG4gIHJlZ2lvbjogc3RyaW5nXG4gIC8qKlxuICAgKiBWYWx1ZSB0aGF0IG11c3QgYmUgdXBkYXRlZCB0byBjaGVjayBpZiB0aGUgcGFyYW1ldGVyIGhhcyBhIG5ldyB2YWx1ZS5cbiAgICpcbiAgICogQGRlZmF1bHQgRGF0ZS5ub3coKS50b1N0cmluZygpXG4gICAqL1xuICBub25jZT86IHN0cmluZ1xufVxuXG5mdW5jdGlvbiByZW1vdmVMZWFkaW5nU2xhc2godmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiB2YWx1ZS5zbGljZSgwLCAxKSA9PT0gXCIvXCIgPyB2YWx1ZS5zbGljZSgxKSA6IHZhbHVlXG59XG5cbi8qKlxuICogR2V0IHZhbHVlIG9mIGEgU1NNIHBhcmFtZXRlciBkeW5hbWljYWxseSBkdXJpbmcgZGVwbG95bWVudFxuICogd2l0aCBzdXBwb3J0IHRvIHJlYWQgY3Jvc3MtcmVnaW9uLlxuICovXG5leHBvcnQgY2xhc3MgU3NtUGFyYW1ldGVyUmVhZGVyIGV4dGVuZHMgY3IuQXdzQ3VzdG9tUmVzb3VyY2Uge1xuICBjb25zdHJ1Y3RvcihzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgLy8gVXNlIFNESyBidW5kbGVkIHdpdGggdGhlIExhbWJkYSBydW50aW1lIGluc3RlYWQgb2YgaW5zdGFsbGluZyB0aGVcbiAgICAgIC8vIGxhdGVzdCBhdCBleGVjdXRpb24gdGltZS4gQXZvaWRzIH42MHMgbnBtIGluc3RhbGwgb24gZXZlcnkgaW52b2NhdGlvblxuICAgICAgLy8gYW5kIHJlbW92ZXMgYSBydW50aW1lIGRlcGVuZGVuY3kgb24gbnBtanMuY29tIGF2YWlsYWJpbGl0eS5cbiAgICAgIC8vIGh0dHBzOi8vY29uc3RydWN0cy5kZXYvcGFja2FnZXMvYXdzLWNkay1saWIvdi8yLjI1MS4wP3N1Ym1vZHVsZT1jdXN0b21fcmVzb3VyY2VzJmxhbmc9dHlwZXNjcmlwdFxuICAgICAgaW5zdGFsbExhdGVzdEF3c1NkazogZmFsc2UsXG4gICAgICBvblVwZGF0ZToge1xuICAgICAgICBzZXJ2aWNlOiBcIlNTTVwiLFxuICAgICAgICBhY3Rpb246IFwiZ2V0UGFyYW1ldGVyXCIsXG4gICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICBOYW1lOiBwcm9wcy5wYXJhbWV0ZXJOYW1lLFxuICAgICAgICB9LFxuICAgICAgICByZWdpb246IHByb3BzLnJlZ2lvbixcbiAgICAgICAgLy8gVXBkYXRlIHBoeXNpY2FsIGlkIHRvIGZldGNoIHRoZSBsYXRlc3QgdmVyc2lvbi5cbiAgICAgICAgcGh5c2ljYWxSZXNvdXJjZUlkOiBjci5QaHlzaWNhbFJlc291cmNlSWQub2YocHJvcHMucGFyYW1ldGVyTmFtZSksXG4gICAgICB9LFxuICAgICAgcG9saWN5OiBjci5Bd3NDdXN0b21SZXNvdXJjZVBvbGljeS5mcm9tU2RrQ2FsbHMoe1xuICAgICAgICByZXNvdXJjZXM6IFtcbiAgICAgICAgICBjZGsuQXJuLmZvcm1hdChcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgc2VydmljZTogXCJzc21cIixcbiAgICAgICAgICAgICAgcmVnaW9uOiBwcm9wcy5yZWdpb24sXG4gICAgICAgICAgICAgIHJlc291cmNlOiBcInBhcmFtZXRlclwiLFxuICAgICAgICAgICAgICByZXNvdXJjZU5hbWU6IHJlbW92ZUxlYWRpbmdTbGFzaChwcm9wcy5wYXJhbWV0ZXJOYW1lKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBjZGsuU3RhY2sub2Yoc2NvcGUpLFxuICAgICAgICAgICksXG4gICAgICAgIF0sXG4gICAgICB9KSxcbiAgICB9KVxuXG4gICAgY29uc3QgciA9IHRoaXMubm9kZS5maW5kQ2hpbGQoXCJSZXNvdXJjZVwiKS5ub2RlXG4gICAgICAuZGVmYXVsdENoaWxkIGFzIGNkay5DZm5SZXNvdXJjZVxuICAgIHIuY2ZuT3B0aW9ucy5tZXRhZGF0YSA9IHIuY2ZuT3B0aW9ucy5tZXRhZGF0YSB8fCB7fVxuICAgIHIuY2ZuT3B0aW9ucy5tZXRhZGF0YS5Ob25jZSA9IHByb3BzLm5vbmNlID8/IERhdGUubm93KCkudG9TdHJpbmcoKVxuICB9XG5cbiAgcHVibGljIGdldFBhcmFtZXRlclZhbHVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0UmVzcG9uc2VGaWVsZChcIlBhcmFtZXRlci5WYWx1ZVwiKVxuICB9XG59XG4iXX0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@liflig/cdk",
3
- "version": "3.26.4",
3
+ "version": "3.26.6",
4
4
  "description": "CDK library for Liflig",
5
5
  "type": "module",
6
6
  "repository": {
@@ -40,31 +40,31 @@
40
40
  },
41
41
  "devDependencies": {
42
42
  "@aws-cdk/assert": "2.68.0",
43
- "@aws-sdk/client-cloudwatch-logs": "3.1036.0",
44
- "@aws-sdk/client-codebuild": "3.1036.0",
45
- "@aws-sdk/client-codepipeline": "3.1036.0",
46
- "@aws-sdk/client-ecs": "3.1036.0",
47
- "@aws-sdk/client-s3": "3.1036.0",
48
- "@aws-sdk/client-secrets-manager": "3.1036.0",
49
- "@aws-sdk/client-ses": "3.1036.0",
50
- "@aws-sdk/client-sesv2": "3.1036.0",
51
- "@aws-sdk/client-sfn": "3.1036.0",
52
- "@aws-sdk/client-ssm": "3.1036.0",
53
- "@aws-sdk/lib-storage": "3.1036.0",
43
+ "@aws-sdk/client-cloudwatch-logs": "3.1037.0",
44
+ "@aws-sdk/client-codebuild": "3.1037.0",
45
+ "@aws-sdk/client-codepipeline": "3.1037.0",
46
+ "@aws-sdk/client-ecs": "3.1037.0",
47
+ "@aws-sdk/client-s3": "3.1037.0",
48
+ "@aws-sdk/client-secrets-manager": "3.1037.0",
49
+ "@aws-sdk/client-ses": "3.1037.0",
50
+ "@aws-sdk/client-sesv2": "3.1037.0",
51
+ "@aws-sdk/client-sfn": "3.1037.0",
52
+ "@aws-sdk/client-ssm": "3.1037.0",
53
+ "@aws-sdk/lib-storage": "3.1037.0",
54
54
  "@biomejs/biome": "2.4.13",
55
- "@commitlint/cli": "20.5.0",
55
+ "@commitlint/cli": "20.5.2",
56
56
  "@commitlint/config-conventional": "20.5.0",
57
57
  "@types/aws-lambda": "8.10.161",
58
58
  "@types/jest": "30.0.0",
59
59
  "@types/node": "24.12.2",
60
60
  "aws-cdk": "2.1119.0",
61
- "aws-cdk-lib": "2.250.0",
61
+ "aws-cdk-lib": "2.251.0",
62
62
  "constructs": "10.6.0",
63
63
  "esbuild": "0.28.0",
64
64
  "jest": "30.3.0",
65
65
  "jest-cdk-snapshot": "2.3.6",
66
66
  "lefthook": "2.1.6",
67
- "npm-check-updates": "21.0.3",
67
+ "npm-check-updates": "22.0.1",
68
68
  "semantic-release": "25.0.3",
69
69
  "ts-jest": "29.4.9",
70
70
  "tsx": "4.21.0",
@@ -72,7 +72,7 @@
72
72
  "typescript": "5.9.3"
73
73
  },
74
74
  "dependencies": {
75
- "@capraconsulting/webapp-deploy-lambda": "2.5.92",
75
+ "@capraconsulting/webapp-deploy-lambda": "2.5.93",
76
76
  "aws-jwt-verify": "5.1.1"
77
77
  },
78
78
  "peerDependencies": {