@pwrdrvr/microapps-cdk 0.0.29 → 0.2.1
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 +2907 -1230
- package/API.md +102 -50
- package/lib/MicroApps.d.ts +19 -6
- package/lib/MicroApps.js +6 -5
- package/lib/MicroAppsAPIGwy.d.ts +8 -7
- package/lib/MicroAppsAPIGwy.js +11 -10
- package/lib/MicroAppsCF.d.ts +50 -12
- package/lib/MicroAppsCF.js +22 -12
- package/lib/MicroAppsS3.d.ts +8 -7
- package/lib/MicroAppsS3.js +9 -8
- package/lib/MicroAppsSvcs.d.ts +10 -9
- package/lib/MicroAppsSvcs.js +89 -29
- package/lib/microapps-deployer/index.js +93 -89
- package/lib/microapps-deployer/index.js.map +3 -3
- package/package.json +12 -34
- package/patches/@aws-cdk+aws-apigatewayv2-alpha+2.8.0-alpha.0.patch +39 -0
package/API.md
CHANGED
|
@@ -18,7 +18,7 @@ new MicroApps(scope: Construct, id: string, props?: MicroAppsProps)
|
|
|
18
18
|
|
|
19
19
|
##### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroApps.scope"></a>
|
|
20
20
|
|
|
21
|
-
- *Type:* [
|
|
21
|
+
- *Type:* [`constructs.Construct`](#constructs.Construct)
|
|
22
22
|
|
|
23
23
|
---
|
|
24
24
|
|
|
@@ -77,7 +77,7 @@ new MicroAppsAPIGwy(scope: Construct, id: string, props?: MicroAppsAPIGwyProps)
|
|
|
77
77
|
|
|
78
78
|
##### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwy.scope"></a>
|
|
79
79
|
|
|
80
|
-
- *Type:* [
|
|
80
|
+
- *Type:* [`constructs.Construct`](#constructs.Construct)
|
|
81
81
|
|
|
82
82
|
---
|
|
83
83
|
|
|
@@ -99,7 +99,7 @@ new MicroAppsAPIGwy(scope: Construct, id: string, props?: MicroAppsAPIGwyProps)
|
|
|
99
99
|
|
|
100
100
|
##### `httpApi`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwy.httpApi"></a>
|
|
101
101
|
|
|
102
|
-
- *Type:* [`@aws-cdk/aws-apigatewayv2.HttpApi`](#@aws-cdk/aws-apigatewayv2.HttpApi)
|
|
102
|
+
- *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.HttpApi`](#@aws-cdk/aws-apigatewayv2-alpha.HttpApi)
|
|
103
103
|
|
|
104
104
|
API Gateway.
|
|
105
105
|
|
|
@@ -107,7 +107,7 @@ API Gateway.
|
|
|
107
107
|
|
|
108
108
|
##### `dnAppsOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwy.dnAppsOrigin"></a>
|
|
109
109
|
|
|
110
|
-
- *Type:* [`@aws-cdk/aws-apigatewayv2.IDomainName`](#@aws-cdk/aws-apigatewayv2.IDomainName)
|
|
110
|
+
- *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.IDomainName`](#@aws-cdk/aws-apigatewayv2-alpha.IDomainName)
|
|
111
111
|
|
|
112
112
|
Domain Name applied to API Gateway origin.
|
|
113
113
|
|
|
@@ -128,7 +128,7 @@ new MicroAppsCF(scope: Construct, id: string, props: MicroAppsCFProps)
|
|
|
128
128
|
|
|
129
129
|
##### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF.scope"></a>
|
|
130
130
|
|
|
131
|
-
- *Type:* [
|
|
131
|
+
- *Type:* [`constructs.Construct`](#constructs.Construct)
|
|
132
132
|
|
|
133
133
|
---
|
|
134
134
|
|
|
@@ -157,7 +157,7 @@ MicroAppsCF.addRoutes(_scope: Construct, props: AddRoutesOptions)
|
|
|
157
157
|
|
|
158
158
|
###### `_scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF._scope"></a>
|
|
159
159
|
|
|
160
|
-
- *Type:* [
|
|
160
|
+
- *Type:* [`constructs.Construct`](#constructs.Construct)
|
|
161
161
|
|
|
162
162
|
---
|
|
163
163
|
|
|
@@ -177,7 +177,7 @@ MicroAppsCF.createAPIOriginPolicy(scope: Construct, props: CreateAPIOriginPolicy
|
|
|
177
177
|
|
|
178
178
|
###### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF.scope"></a>
|
|
179
179
|
|
|
180
|
-
- *Type:* [
|
|
180
|
+
- *Type:* [`constructs.Construct`](#constructs.Construct)
|
|
181
181
|
|
|
182
182
|
---
|
|
183
183
|
|
|
@@ -191,7 +191,7 @@ MicroAppsCF.createAPIOriginPolicy(scope: Construct, props: CreateAPIOriginPolicy
|
|
|
191
191
|
|
|
192
192
|
##### `cloudFrontDistro`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF.cloudFrontDistro"></a>
|
|
193
193
|
|
|
194
|
-
- *Type:* [
|
|
194
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.Distribution`](#aws-cdk-lib.aws_cloudfront.Distribution)
|
|
195
195
|
|
|
196
196
|
---
|
|
197
197
|
|
|
@@ -210,7 +210,7 @@ new MicroAppsS3(scope: Construct, id: string, props?: MicroAppsS3Props)
|
|
|
210
210
|
|
|
211
211
|
##### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.scope"></a>
|
|
212
212
|
|
|
213
|
-
- *Type:* [
|
|
213
|
+
- *Type:* [`constructs.Construct`](#constructs.Construct)
|
|
214
214
|
|
|
215
215
|
---
|
|
216
216
|
|
|
@@ -232,7 +232,7 @@ new MicroAppsS3(scope: Construct, id: string, props?: MicroAppsS3Props)
|
|
|
232
232
|
|
|
233
233
|
##### `bucketApps`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketApps"></a>
|
|
234
234
|
|
|
235
|
-
- *Type:* [
|
|
235
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
236
236
|
|
|
237
237
|
S3 bucket for deployed applications.
|
|
238
238
|
|
|
@@ -240,7 +240,7 @@ S3 bucket for deployed applications.
|
|
|
240
240
|
|
|
241
241
|
##### `bucketAppsOAI`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketAppsOAI"></a>
|
|
242
242
|
|
|
243
|
-
- *Type:* [
|
|
243
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.OriginAccessIdentity`](#aws-cdk-lib.aws_cloudfront.OriginAccessIdentity)
|
|
244
244
|
|
|
245
245
|
CloudFront Origin Access Identity for the deployed applications bucket.
|
|
246
246
|
|
|
@@ -248,7 +248,7 @@ CloudFront Origin Access Identity for the deployed applications bucket.
|
|
|
248
248
|
|
|
249
249
|
##### `bucketAppsOrigin`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketAppsOrigin"></a>
|
|
250
250
|
|
|
251
|
-
- *Type:* [
|
|
251
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront_origins.S3Origin`](#aws-cdk-lib.aws_cloudfront_origins.S3Origin)
|
|
252
252
|
|
|
253
253
|
CloudFront Origin for the deployed applications bucket.
|
|
254
254
|
|
|
@@ -256,7 +256,7 @@ CloudFront Origin for the deployed applications bucket.
|
|
|
256
256
|
|
|
257
257
|
##### `bucketAppsStaging`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketAppsStaging"></a>
|
|
258
258
|
|
|
259
|
-
- *Type:* [
|
|
259
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
260
260
|
|
|
261
261
|
S3 bucket for staged applications (prior to deploy).
|
|
262
262
|
|
|
@@ -264,7 +264,7 @@ S3 bucket for staged applications (prior to deploy).
|
|
|
264
264
|
|
|
265
265
|
##### `bucketLogs`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketLogs"></a>
|
|
266
266
|
|
|
267
|
-
- *Type:* [
|
|
267
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
268
268
|
|
|
269
269
|
S3 bucket for CloudFront logs.
|
|
270
270
|
|
|
@@ -285,7 +285,7 @@ new MicroAppsSvcs(scope: Construct, id: string, props?: MicroAppsSvcsProps)
|
|
|
285
285
|
|
|
286
286
|
##### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs.scope"></a>
|
|
287
287
|
|
|
288
|
-
- *Type:* [
|
|
288
|
+
- *Type:* [`constructs.Construct`](#constructs.Construct)
|
|
289
289
|
|
|
290
290
|
---
|
|
291
291
|
|
|
@@ -307,7 +307,7 @@ new MicroAppsSvcs(scope: Construct, id: string, props?: MicroAppsSvcsProps)
|
|
|
307
307
|
|
|
308
308
|
##### `deployerFunc`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs.deployerFunc"></a>
|
|
309
309
|
|
|
310
|
-
- *Type:* [
|
|
310
|
+
- *Type:* [`aws-cdk-lib.aws_lambda.IFunction`](#aws-cdk-lib.aws_lambda.IFunction)
|
|
311
311
|
|
|
312
312
|
Lambda function for the Deployer.
|
|
313
313
|
|
|
@@ -315,7 +315,7 @@ Lambda function for the Deployer.
|
|
|
315
315
|
|
|
316
316
|
##### `table`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs.table"></a>
|
|
317
317
|
|
|
318
|
-
- *Type:* [
|
|
318
|
+
- *Type:* [`aws-cdk-lib.aws_dynamodb.ITable`](#aws-cdk-lib.aws_dynamodb.ITable)
|
|
319
319
|
|
|
320
320
|
DynamoDB table used by Router, Deployer, and Release console app.
|
|
321
321
|
|
|
@@ -336,25 +336,47 @@ const addRoutesOptions: AddRoutesOptions = { ... }
|
|
|
336
336
|
|
|
337
337
|
##### `apiGwyOrigin`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.apiGwyOrigin"></a>
|
|
338
338
|
|
|
339
|
-
- *Type:* [
|
|
339
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.IOrigin`](#aws-cdk-lib.aws_cloudfront.IOrigin)
|
|
340
|
+
|
|
341
|
+
API Gateway CloudFront Origin for API calls.
|
|
340
342
|
|
|
341
343
|
---
|
|
342
344
|
|
|
343
345
|
##### `apigwyOriginRequestPolicy`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.apigwyOriginRequestPolicy"></a>
|
|
344
346
|
|
|
345
|
-
- *Type:* [
|
|
347
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.IOriginRequestPolicy`](#aws-cdk-lib.aws_cloudfront.IOriginRequestPolicy)
|
|
348
|
+
|
|
349
|
+
Origin Request policy for API Gateway Origin.
|
|
346
350
|
|
|
347
351
|
---
|
|
348
352
|
|
|
349
353
|
##### `bucketAppsOrigin`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.bucketAppsOrigin"></a>
|
|
350
354
|
|
|
351
|
-
- *Type:* [
|
|
355
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront_origins.S3Origin`](#aws-cdk-lib.aws_cloudfront_origins.S3Origin)
|
|
356
|
+
|
|
357
|
+
S3 Bucket CloudFront Origin for static assets.
|
|
352
358
|
|
|
353
359
|
---
|
|
354
360
|
|
|
355
361
|
##### `distro`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.distro"></a>
|
|
356
362
|
|
|
357
|
-
- *Type:* [
|
|
363
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.Distribution`](#aws-cdk-lib.aws_cloudfront.Distribution)
|
|
364
|
+
|
|
365
|
+
CloudFront Distribution to add the Behaviors (Routes) to.
|
|
366
|
+
|
|
367
|
+
---
|
|
368
|
+
|
|
369
|
+
##### `createAPIPathRoute`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.createAPIPathRoute"></a>
|
|
370
|
+
|
|
371
|
+
- *Type:* `boolean`
|
|
372
|
+
- *Default:* true
|
|
373
|
+
|
|
374
|
+
Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them.
|
|
375
|
+
|
|
376
|
+
When false API routes with a period in the path will get routed to S3.
|
|
377
|
+
|
|
378
|
+
When true API routes that contain /api/ in the path will get routed to API Gateway
|
|
379
|
+
even if they have a period in the path.
|
|
358
380
|
|
|
359
381
|
---
|
|
360
382
|
|
|
@@ -362,6 +384,8 @@ const addRoutesOptions: AddRoutesOptions = { ... }
|
|
|
362
384
|
|
|
363
385
|
- *Type:* `string`
|
|
364
386
|
|
|
387
|
+
Path prefix on the root of the CloudFront distribution.
|
|
388
|
+
|
|
365
389
|
---
|
|
366
390
|
|
|
367
391
|
### CreateAPIOriginPolicyOptions <a name="@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions"></a>
|
|
@@ -424,7 +448,7 @@ Optional asset name suffix.
|
|
|
424
448
|
|
|
425
449
|
##### `certOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwyProps.certOrigin"></a>
|
|
426
450
|
|
|
427
|
-
- *Type:* [
|
|
451
|
+
- *Type:* [`aws-cdk-lib.aws_certificatemanager.ICertificate`](#aws-cdk-lib.aws_certificatemanager.ICertificate)
|
|
428
452
|
- *Default:* none
|
|
429
453
|
|
|
430
454
|
Optional local region ACM certificate to use for API Gateway Note: required when using a custom domain.
|
|
@@ -451,7 +475,7 @@ API Gateway origin domain name.
|
|
|
451
475
|
|
|
452
476
|
##### `r53Zone`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwyProps.r53Zone"></a>
|
|
453
477
|
|
|
454
|
-
- *Type:* [
|
|
478
|
+
- *Type:* [`aws-cdk-lib.aws_route53.IHostedZone`](#aws-cdk-lib.aws_route53.IHostedZone)
|
|
455
479
|
|
|
456
480
|
Route53 zone in which to create optional `domainNameEdge` record.
|
|
457
481
|
|
|
@@ -459,7 +483,7 @@ Route53 zone in which to create optional `domainNameEdge` record.
|
|
|
459
483
|
|
|
460
484
|
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwyProps.removalPolicy"></a>
|
|
461
485
|
|
|
462
|
-
- *Type:* [
|
|
486
|
+
- *Type:* [`aws-cdk-lib.RemovalPolicy`](#aws-cdk-lib.RemovalPolicy)
|
|
463
487
|
- *Default:* per resource default
|
|
464
488
|
|
|
465
489
|
RemovalPolicy override for child resources.
|
|
@@ -489,7 +513,7 @@ const microAppsCFProps: MicroAppsCFProps = { ... }
|
|
|
489
513
|
|
|
490
514
|
##### `bucketAppsOrigin`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.bucketAppsOrigin"></a>
|
|
491
515
|
|
|
492
|
-
- *Type:* [
|
|
516
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront_origins.S3Origin`](#aws-cdk-lib.aws_cloudfront_origins.S3Origin)
|
|
493
517
|
|
|
494
518
|
S3 bucket origin for deployed applications.
|
|
495
519
|
|
|
@@ -497,7 +521,7 @@ S3 bucket origin for deployed applications.
|
|
|
497
521
|
|
|
498
522
|
##### `httpApi`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.httpApi"></a>
|
|
499
523
|
|
|
500
|
-
- *Type:* [`@aws-cdk/aws-apigatewayv2.HttpApi`](#@aws-cdk/aws-apigatewayv2.HttpApi)
|
|
524
|
+
- *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.HttpApi`](#@aws-cdk/aws-apigatewayv2-alpha.HttpApi)
|
|
501
525
|
|
|
502
526
|
API Gateway v2 HTTP API for apps.
|
|
503
527
|
|
|
@@ -523,7 +547,7 @@ Optional asset name suffix.
|
|
|
523
547
|
|
|
524
548
|
##### `bucketLogs`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.bucketLogs"></a>
|
|
525
549
|
|
|
526
|
-
- *Type:* [
|
|
550
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
527
551
|
|
|
528
552
|
S3 bucket for CloudFront logs.
|
|
529
553
|
|
|
@@ -531,12 +555,26 @@ S3 bucket for CloudFront logs.
|
|
|
531
555
|
|
|
532
556
|
##### `certEdge`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.certEdge"></a>
|
|
533
557
|
|
|
534
|
-
- *Type:* [
|
|
558
|
+
- *Type:* [`aws-cdk-lib.aws_certificatemanager.ICertificate`](#aws-cdk-lib.aws_certificatemanager.ICertificate)
|
|
535
559
|
|
|
536
560
|
ACM Certificate that covers `domainNameEdge` name.
|
|
537
561
|
|
|
538
562
|
---
|
|
539
563
|
|
|
564
|
+
##### `createAPIPathRoute`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.createAPIPathRoute"></a>
|
|
565
|
+
|
|
566
|
+
- *Type:* `boolean`
|
|
567
|
+
- *Default:* true
|
|
568
|
+
|
|
569
|
+
Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them.
|
|
570
|
+
|
|
571
|
+
When false API routes with a period in the path will get routed to S3.
|
|
572
|
+
|
|
573
|
+
When true API routes that contain /api/ in the path will get routed to API Gateway
|
|
574
|
+
even if they have a period in the path.
|
|
575
|
+
|
|
576
|
+
---
|
|
577
|
+
|
|
540
578
|
##### `domainNameEdge`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.domainNameEdge"></a>
|
|
541
579
|
|
|
542
580
|
- *Type:* `string`
|
|
@@ -557,7 +595,7 @@ API Gateway custom origin domain name.
|
|
|
557
595
|
|
|
558
596
|
##### `r53Zone`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.r53Zone"></a>
|
|
559
597
|
|
|
560
|
-
- *Type:* [
|
|
598
|
+
- *Type:* [`aws-cdk-lib.aws_route53.IHostedZone`](#aws-cdk-lib.aws_route53.IHostedZone)
|
|
561
599
|
|
|
562
600
|
Route53 zone in which to create optional `domainNameEdge` record.
|
|
563
601
|
|
|
@@ -565,7 +603,7 @@ Route53 zone in which to create optional `domainNameEdge` record.
|
|
|
565
603
|
|
|
566
604
|
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.removalPolicy"></a>
|
|
567
605
|
|
|
568
|
-
- *Type:* [
|
|
606
|
+
- *Type:* [`aws-cdk-lib.RemovalPolicy`](#aws-cdk-lib.RemovalPolicy)
|
|
569
607
|
- *Default:* per resource default
|
|
570
608
|
|
|
571
609
|
RemovalPolicy override for child resources.
|
|
@@ -623,7 +661,7 @@ Optional asset name suffix.
|
|
|
623
661
|
|
|
624
662
|
##### `certEdge`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.certEdge"></a>
|
|
625
663
|
|
|
626
|
-
- *Type:* [
|
|
664
|
+
- *Type:* [`aws-cdk-lib.aws_certificatemanager.ICertificate`](#aws-cdk-lib.aws_certificatemanager.ICertificate)
|
|
627
665
|
|
|
628
666
|
Certificate in US-East-1 for the CloudFront distribution.
|
|
629
667
|
|
|
@@ -631,12 +669,26 @@ Certificate in US-East-1 for the CloudFront distribution.
|
|
|
631
669
|
|
|
632
670
|
##### `certOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.certOrigin"></a>
|
|
633
671
|
|
|
634
|
-
- *Type:* [
|
|
672
|
+
- *Type:* [`aws-cdk-lib.aws_certificatemanager.ICertificate`](#aws-cdk-lib.aws_certificatemanager.ICertificate)
|
|
635
673
|
|
|
636
674
|
Certificate in deployed region for the API Gateway.
|
|
637
675
|
|
|
638
676
|
---
|
|
639
677
|
|
|
678
|
+
##### `createAPIPathRoute`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.createAPIPathRoute"></a>
|
|
679
|
+
|
|
680
|
+
- *Type:* `boolean`
|
|
681
|
+
- *Default:* true
|
|
682
|
+
|
|
683
|
+
Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them.
|
|
684
|
+
|
|
685
|
+
When false API routes with a period in the path will get routed to S3.
|
|
686
|
+
|
|
687
|
+
When true API routes that contain /api/ in the path will get routed to API Gateway
|
|
688
|
+
even if they have a period in the path.
|
|
689
|
+
|
|
690
|
+
---
|
|
691
|
+
|
|
640
692
|
##### `domainNameEdge`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.domainNameEdge"></a>
|
|
641
693
|
|
|
642
694
|
- *Type:* `string`
|
|
@@ -657,7 +709,7 @@ Optional custom domain name for the API Gateway HTTPv2 API.
|
|
|
657
709
|
|
|
658
710
|
##### `r53Zone`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.r53Zone"></a>
|
|
659
711
|
|
|
660
|
-
- *Type:* [
|
|
712
|
+
- *Type:* [`aws-cdk-lib.aws_route53.IHostedZone`](#aws-cdk-lib.aws_route53.IHostedZone)
|
|
661
713
|
|
|
662
714
|
Route53 zone in which to create optional `domainNameEdge` record.
|
|
663
715
|
|
|
@@ -665,7 +717,7 @@ Route53 zone in which to create optional `domainNameEdge` record.
|
|
|
665
717
|
|
|
666
718
|
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.removalPolicy"></a>
|
|
667
719
|
|
|
668
|
-
- *Type:* [
|
|
720
|
+
- *Type:* [`aws-cdk-lib.RemovalPolicy`](#aws-cdk-lib.RemovalPolicy)
|
|
669
721
|
- *Default:* per resource default
|
|
670
722
|
|
|
671
723
|
RemovalPolicy override for child resources.
|
|
@@ -812,7 +864,7 @@ S3 logs bucket name.
|
|
|
812
864
|
|
|
813
865
|
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3Props.removalPolicy"></a>
|
|
814
866
|
|
|
815
|
-
- *Type:* [
|
|
867
|
+
- *Type:* [`aws-cdk-lib.RemovalPolicy`](#aws-cdk-lib.RemovalPolicy)
|
|
816
868
|
- *Default:* per resource default
|
|
817
869
|
|
|
818
870
|
RemovalPolicy override for child resources.
|
|
@@ -839,7 +891,7 @@ const microAppsSvcsProps: MicroAppsSvcsProps = { ... }
|
|
|
839
891
|
|
|
840
892
|
##### `bucketApps`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.bucketApps"></a>
|
|
841
893
|
|
|
842
|
-
- *Type:* [
|
|
894
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
843
895
|
|
|
844
896
|
S3 bucket for deployed applications.
|
|
845
897
|
|
|
@@ -847,7 +899,7 @@ S3 bucket for deployed applications.
|
|
|
847
899
|
|
|
848
900
|
##### `bucketAppsOAI`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.bucketAppsOAI"></a>
|
|
849
901
|
|
|
850
|
-
- *Type:* [
|
|
902
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.OriginAccessIdentity`](#aws-cdk-lib.aws_cloudfront.OriginAccessIdentity)
|
|
851
903
|
|
|
852
904
|
CloudFront Origin Access Identity for the deployed applications bucket.
|
|
853
905
|
|
|
@@ -855,7 +907,7 @@ CloudFront Origin Access Identity for the deployed applications bucket.
|
|
|
855
907
|
|
|
856
908
|
##### `bucketAppsStaging`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.bucketAppsStaging"></a>
|
|
857
909
|
|
|
858
|
-
- *Type:* [
|
|
910
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
859
911
|
|
|
860
912
|
S3 bucket for staged applications (prior to deploy).
|
|
861
913
|
|
|
@@ -863,7 +915,7 @@ S3 bucket for staged applications (prior to deploy).
|
|
|
863
915
|
|
|
864
916
|
##### `httpApi`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.httpApi"></a>
|
|
865
917
|
|
|
866
|
-
- *Type:* [`@aws-cdk/aws-apigatewayv2.HttpApi`](#@aws-cdk/aws-apigatewayv2.HttpApi)
|
|
918
|
+
- *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.HttpApi`](#@aws-cdk/aws-apigatewayv2-alpha.HttpApi)
|
|
867
919
|
|
|
868
920
|
API Gateway v2 HTTP for Router and app.
|
|
869
921
|
|
|
@@ -889,7 +941,7 @@ Optional asset name suffix.
|
|
|
889
941
|
|
|
890
942
|
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.removalPolicy"></a>
|
|
891
943
|
|
|
892
|
-
- *Type:* [
|
|
944
|
+
- *Type:* [`aws-cdk-lib.RemovalPolicy`](#aws-cdk-lib.RemovalPolicy)
|
|
893
945
|
- *Default:* per resource default
|
|
894
946
|
|
|
895
947
|
RemovalPolicy override for child resources.
|
|
@@ -968,7 +1020,7 @@ Path prefix on the root of the deployment.
|
|
|
968
1020
|
|
|
969
1021
|
##### `httpApi`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy.httpApi"></a>
|
|
970
1022
|
|
|
971
|
-
- *Type:* [`@aws-cdk/aws-apigatewayv2.HttpApi`](#@aws-cdk/aws-apigatewayv2.HttpApi)
|
|
1023
|
+
- *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.HttpApi`](#@aws-cdk/aws-apigatewayv2-alpha.HttpApi)
|
|
972
1024
|
|
|
973
1025
|
API Gateway.
|
|
974
1026
|
|
|
@@ -976,7 +1028,7 @@ API Gateway.
|
|
|
976
1028
|
|
|
977
1029
|
##### `dnAppsOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy.dnAppsOrigin"></a>
|
|
978
1030
|
|
|
979
|
-
- *Type:* [`@aws-cdk/aws-apigatewayv2.IDomainName`](#@aws-cdk/aws-apigatewayv2.IDomainName)
|
|
1031
|
+
- *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.IDomainName`](#@aws-cdk/aws-apigatewayv2-alpha.IDomainName)
|
|
980
1032
|
|
|
981
1033
|
Domain Name applied to API Gateway origin.
|
|
982
1034
|
|
|
@@ -991,7 +1043,7 @@ Domain Name applied to API Gateway origin.
|
|
|
991
1043
|
|
|
992
1044
|
##### `cloudFrontDistro`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsCF.cloudFrontDistro"></a>
|
|
993
1045
|
|
|
994
|
-
- *Type:* [
|
|
1046
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.Distribution`](#aws-cdk-lib.aws_cloudfront.Distribution)
|
|
995
1047
|
|
|
996
1048
|
---
|
|
997
1049
|
|
|
@@ -1004,7 +1056,7 @@ Domain Name applied to API Gateway origin.
|
|
|
1004
1056
|
|
|
1005
1057
|
##### `bucketApps`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketApps"></a>
|
|
1006
1058
|
|
|
1007
|
-
- *Type:* [
|
|
1059
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
1008
1060
|
|
|
1009
1061
|
S3 bucket for deployed applications.
|
|
1010
1062
|
|
|
@@ -1012,7 +1064,7 @@ S3 bucket for deployed applications.
|
|
|
1012
1064
|
|
|
1013
1065
|
##### `bucketAppsOAI`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketAppsOAI"></a>
|
|
1014
1066
|
|
|
1015
|
-
- *Type:* [
|
|
1067
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.OriginAccessIdentity`](#aws-cdk-lib.aws_cloudfront.OriginAccessIdentity)
|
|
1016
1068
|
|
|
1017
1069
|
CloudFront Origin Access Identity for the deployed applications bucket.
|
|
1018
1070
|
|
|
@@ -1020,7 +1072,7 @@ CloudFront Origin Access Identity for the deployed applications bucket.
|
|
|
1020
1072
|
|
|
1021
1073
|
##### `bucketAppsOrigin`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketAppsOrigin"></a>
|
|
1022
1074
|
|
|
1023
|
-
- *Type:* [
|
|
1075
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront_origins.S3Origin`](#aws-cdk-lib.aws_cloudfront_origins.S3Origin)
|
|
1024
1076
|
|
|
1025
1077
|
CloudFront Origin for the deployed applications bucket.
|
|
1026
1078
|
|
|
@@ -1028,7 +1080,7 @@ CloudFront Origin for the deployed applications bucket.
|
|
|
1028
1080
|
|
|
1029
1081
|
##### `bucketAppsStaging`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketAppsStaging"></a>
|
|
1030
1082
|
|
|
1031
|
-
- *Type:* [
|
|
1083
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
1032
1084
|
|
|
1033
1085
|
S3 bucket for staged applications (prior to deploy).
|
|
1034
1086
|
|
|
@@ -1036,7 +1088,7 @@ S3 bucket for staged applications (prior to deploy).
|
|
|
1036
1088
|
|
|
1037
1089
|
##### `bucketLogs`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketLogs"></a>
|
|
1038
1090
|
|
|
1039
|
-
- *Type:* [
|
|
1091
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
1040
1092
|
|
|
1041
1093
|
S3 bucket for CloudFront logs.
|
|
1042
1094
|
|
|
@@ -1051,7 +1103,7 @@ S3 bucket for CloudFront logs.
|
|
|
1051
1103
|
|
|
1052
1104
|
##### `deployerFunc`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsSvcs.deployerFunc"></a>
|
|
1053
1105
|
|
|
1054
|
-
- *Type:* [
|
|
1106
|
+
- *Type:* [`aws-cdk-lib.aws_lambda.IFunction`](#aws-cdk-lib.aws_lambda.IFunction)
|
|
1055
1107
|
|
|
1056
1108
|
Lambda function for the Deployer.
|
|
1057
1109
|
|
|
@@ -1059,7 +1111,7 @@ Lambda function for the Deployer.
|
|
|
1059
1111
|
|
|
1060
1112
|
##### `table`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsSvcs.table"></a>
|
|
1061
1113
|
|
|
1062
|
-
- *Type:* [
|
|
1114
|
+
- *Type:* [`aws-cdk-lib.aws_dynamodb.ITable`](#aws-cdk-lib.aws_dynamodb.ITable)
|
|
1063
1115
|
|
|
1064
1116
|
DynamoDB table used by Router, Deployer, and Release console app.
|
|
1065
1117
|
|
package/lib/MicroApps.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import * as
|
|
3
|
-
import * as
|
|
1
|
+
import { RemovalPolicy } from 'aws-cdk-lib';
|
|
2
|
+
import * as acm from 'aws-cdk-lib/aws-certificatemanager';
|
|
3
|
+
import * as r53 from 'aws-cdk-lib/aws-route53';
|
|
4
|
+
import { Construct } from 'constructs';
|
|
4
5
|
import { IMicroAppsAPIGwy } from './MicroAppsAPIGwy';
|
|
5
6
|
import { IMicroAppsCF } from './MicroAppsCF';
|
|
6
7
|
import { IMicroAppsS3 } from './MicroAppsS3';
|
|
@@ -19,7 +20,7 @@ export interface MicroAppsProps {
|
|
|
19
20
|
* @default - per resource default
|
|
20
21
|
* @stability stable
|
|
21
22
|
*/
|
|
22
|
-
readonly removalPolicy?:
|
|
23
|
+
readonly removalPolicy?: RemovalPolicy;
|
|
23
24
|
/**
|
|
24
25
|
* Passed to NODE_ENV of Router and Deployer Lambda functions.
|
|
25
26
|
*
|
|
@@ -165,6 +166,18 @@ export interface MicroAppsProps {
|
|
|
165
166
|
* dev/
|
|
166
167
|
*/
|
|
167
168
|
readonly rootPathPrefix?: string;
|
|
169
|
+
/**
|
|
170
|
+
* Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them.
|
|
171
|
+
*
|
|
172
|
+
* When false API routes with a period in the path will get routed to S3.
|
|
173
|
+
*
|
|
174
|
+
* When true API routes that contain /api/ in the path will get routed to API Gateway
|
|
175
|
+
* even if they have a period in the path.
|
|
176
|
+
*
|
|
177
|
+
* @default true
|
|
178
|
+
* @stability stable
|
|
179
|
+
*/
|
|
180
|
+
readonly createAPIPathRoute?: boolean;
|
|
168
181
|
}
|
|
169
182
|
/**
|
|
170
183
|
* @stability stable
|
|
@@ -192,7 +205,7 @@ export interface IMicroApps {
|
|
|
192
205
|
*
|
|
193
206
|
* @stability stable
|
|
194
207
|
*/
|
|
195
|
-
export declare class MicroApps extends
|
|
208
|
+
export declare class MicroApps extends Construct implements IMicroApps {
|
|
196
209
|
private _cf;
|
|
197
210
|
/**
|
|
198
211
|
* @stability stable
|
|
@@ -220,5 +233,5 @@ export declare class MicroApps extends cdk.Construct implements IMicroApps {
|
|
|
220
233
|
*
|
|
221
234
|
* @stability stable
|
|
222
235
|
*/
|
|
223
|
-
constructor(scope:
|
|
236
|
+
constructor(scope: Construct, id: string, props?: MicroAppsProps);
|
|
224
237
|
}
|
package/lib/MicroApps.js
CHANGED
|
@@ -3,7 +3,7 @@ var _a;
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.MicroApps = void 0;
|
|
5
5
|
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
-
const
|
|
6
|
+
const constructs_1 = require("constructs");
|
|
7
7
|
const MicroAppsAPIGwy_1 = require("./MicroAppsAPIGwy");
|
|
8
8
|
const MicroAppsCF_1 = require("./MicroAppsCF");
|
|
9
9
|
const MicroAppsS3_1 = require("./MicroAppsS3");
|
|
@@ -14,7 +14,7 @@ const ReverseDomain_1 = require("./utils/ReverseDomain");
|
|
|
14
14
|
*
|
|
15
15
|
* @stability stable
|
|
16
16
|
*/
|
|
17
|
-
class MicroApps extends
|
|
17
|
+
class MicroApps extends constructs_1.Construct {
|
|
18
18
|
/**
|
|
19
19
|
* MicroApps - Create entire stack of CloudFront, S3, API Gateway, and Lambda Functions.
|
|
20
20
|
*
|
|
@@ -27,7 +27,7 @@ class MicroApps extends cdk.Construct {
|
|
|
27
27
|
if (props === undefined) {
|
|
28
28
|
throw new Error('props must be set');
|
|
29
29
|
}
|
|
30
|
-
const { domainNameEdge, domainNameOrigin, assetNameRoot, assetNameSuffix, r53Zone, certEdge, appEnv = 'dev', certOrigin, removalPolicy, s3PolicyBypassAROAs, s3PolicyBypassPrincipalARNs, s3StrictBucketPolicy, rootPathPrefix, } = props;
|
|
30
|
+
const { domainNameEdge, domainNameOrigin, assetNameRoot, assetNameSuffix, r53Zone, certEdge, appEnv = 'dev', certOrigin, removalPolicy, s3PolicyBypassAROAs, s3PolicyBypassPrincipalARNs, s3StrictBucketPolicy, rootPathPrefix, createAPIPathRoute = true, } = props;
|
|
31
31
|
this._s3 = new MicroAppsS3_1.MicroAppsS3(this, 's3', {
|
|
32
32
|
removalPolicy,
|
|
33
33
|
bucketLogsName: domainNameEdge ? `${ReverseDomain_1.reverseDomain(domainNameEdge)}-logs` : undefined,
|
|
@@ -60,6 +60,7 @@ class MicroApps extends cdk.Construct {
|
|
|
60
60
|
bucketAppsOrigin: this._s3.bucketAppsOrigin,
|
|
61
61
|
bucketLogs: this._s3.bucketLogs,
|
|
62
62
|
rootPathPrefix,
|
|
63
|
+
createAPIPathRoute,
|
|
63
64
|
});
|
|
64
65
|
this._svcs = new MicroAppsSvcs_1.MicroAppsSvcs(this, 'svcs', {
|
|
65
66
|
httpApi: this.apigwy.httpApi,
|
|
@@ -103,5 +104,5 @@ class MicroApps extends cdk.Construct {
|
|
|
103
104
|
}
|
|
104
105
|
exports.MicroApps = MicroApps;
|
|
105
106
|
_a = JSII_RTTI_SYMBOL_1;
|
|
106
|
-
MicroApps[_a] = { fqn: "@pwrdrvr/microapps-cdk.MicroApps", version: "0.
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWljcm9BcHBzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL01pY3JvQXBwcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUVBLHFDQUFxQztBQUNyQyx1REFBc0U7QUFDdEUsK0NBQTBEO0FBQzFELCtDQUEwRDtBQUMxRCxtREFBZ0U7QUFDaEUseURBQXNEOzs7Ozs7QUFvRHRELE1BQWEsU0FBVSxTQUFRLEdBQUcsQ0FBQyxTQUFTOzs7Ozs7OztJQXNCMUMsWUFBWSxLQUFvQixFQUFFLEVBQVUsRUFBRSxLQUFzQjtRQUNsRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUN2QixNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7U0FDdEM7UUFFRCxNQUFNLEVBQ0osY0FBYyxFQUNkLGdCQUFnQixFQUNoQixhQUFhLEVBQ2IsZUFBZSxFQUNmLE9BQU8sRUFDUCxRQUFRLEVBQ1IsTUFBTSxHQUFHLEtBQUssRUFDZCxVQUFVLEVBQ1YsYUFBYSxFQUNiLG1CQUFtQixFQUNuQiwyQkFBMkIsRUFDM0Isb0JBQW9CLEVBQ3BCLGNBQWMsR0FDZixHQUFHLEtBQUssQ0FBQztRQUVWLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSx5QkFBVyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUU7WUFDckMsYUFBYTtZQUNiLGNBQWMsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLEdBQUcsNkJBQWEsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQ3BGLGNBQWMsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLEdBQUcsNkJBQWEsQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQy9FLHFCQUFxQixFQUFFLGNBQWM7Z0JBQ25DLENBQUMsQ0FBQyxHQUFHLDZCQUFhLENBQUMsY0FBYyxDQUFDLFVBQVU7Z0JBQzVDLENBQUMsQ0FBQyxTQUFTO1lBQ2IsYUFBYTtZQUNiLGVBQWU7U0FDaEIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLGlDQUFlLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRTtZQUM5QyxhQUFhO1lBQ2IsYUFBYTtZQUNiLGVBQWU7WUFDZixjQUFjO1lBQ2QsZ0JBQWdCO1lBQ2hCLE9BQU87WUFDUCxVQUFVO1lBQ1YsY0FBYztTQUNmLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSx5QkFBVyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUU7WUFDdEMsYUFBYTtZQUNiLGFBQWE7WUFDYixlQUFlO1lBQ2YsY0FBYztZQUNkLGdCQUFnQjtZQUNoQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPO1lBQzdCLE9BQU87WUFDUCxRQUFRO1lBQ1IsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0I7WUFDM0MsVUFBVSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVTtZQUMvQixjQUFjO1NBQ2YsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLDZCQUFhLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRTtZQUMzQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPO1lBQzVCLGFBQWE7WUFDYixVQUFVLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVO1lBQy9CLGFBQWEsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWE7WUFDckMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUI7WUFDN0MsYUFBYTtZQUNiLGVBQWU7WUFDZixNQUFNO1lBQ04sbUJBQW1CO1lBQ25CLDJCQUEyQjtZQUMzQixvQkFBb0I7WUFDcEIsY0FBYztTQUNmLENBQUMsQ0FBQztJQUNMLENBQUM7Ozs7SUExRkQsSUFBVyxFQUFFO1FBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ2xCLENBQUM7Ozs7SUFHRCxJQUFXLEVBQUU7UUFDWCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDbEIsQ0FBQzs7OztJQUdELElBQVcsTUFBTTtRQUNmLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDOzs7O0lBR0QsSUFBVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7O0FBbkJILDhCQTZGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFjbSBmcm9tICdAYXdzLWNkay9hd3MtY2VydGlmaWNhdGVtYW5hZ2VyJztcbmltcG9ydCAqIGFzIHI1MyBmcm9tICdAYXdzLWNkay9hd3Mtcm91dGU1Myc7XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSAnQGF3cy1jZGsvY29yZSc7XG5pbXBvcnQgeyBJTWljcm9BcHBzQVBJR3d5LCBNaWNyb0FwcHNBUElHd3kgfSBmcm9tICcuL01pY3JvQXBwc0FQSUd3eSc7XG5pbXBvcnQgeyBJTWljcm9BcHBzQ0YsIE1pY3JvQXBwc0NGIH0gZnJvbSAnLi9NaWNyb0FwcHNDRic7XG5pbXBvcnQgeyBJTWljcm9BcHBzUzMsIE1pY3JvQXBwc1MzIH0gZnJvbSAnLi9NaWNyb0FwcHNTMyc7XG5pbXBvcnQgeyBJTWljcm9BcHBzU3ZjcywgTWljcm9BcHBzU3ZjcyB9IGZyb20gJy4vTWljcm9BcHBzU3Zjcyc7XG5pbXBvcnQgeyByZXZlcnNlRG9tYWluIH0gZnJvbSAnLi91dGlscy9SZXZlcnNlRG9tYWluJztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgaW50ZXJmYWNlIE1pY3JvQXBwc1Byb3BzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcmVtb3ZhbFBvbGljeT86IGNkay5SZW1vdmFsUG9saWN5O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYXBwRW52OiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYXNzZXROYW1lUm9vdD86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYXNzZXROYW1lU3VmZml4Pzogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcjUzWm9uZT86IHI1My5JSG9zdGVkWm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBjZXJ0RWRnZT86IGFjbS5JQ2VydGlmaWNhdGU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgY2VydE9yaWdpbj86IGFjbS5JQ2VydGlmaWNhdGU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHMzU3RyaWN0QnVja2V0UG9saWN5PzogYm9vbGVhbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHMzUG9saWN5QnlwYXNzUHJpbmNpcGFsQVJOcz86IHN0cmluZ1tdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBzM1BvbGljeUJ5cGFzc0FST0FzPzogc3RyaW5nW107XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBkb21haW5OYW1lRWRnZT86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGRvbWFpbk5hbWVPcmlnaW4/OiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHJvb3RQYXRoUHJlZml4Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElNaWNyb0FwcHMge1xuICByZWFkb25seSBjZjogSU1pY3JvQXBwc0NGO1xuICByZWFkb25seSBzMzogSU1pY3JvQXBwc1MzO1xuICByZWFkb25seSBzdmNzOiBJTWljcm9BcHBzU3ZjcztcbiAgcmVhZG9ubHkgYXBpZ3d5OiBJTWljcm9BcHBzQVBJR3d5O1xufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgY2xhc3MgTWljcm9BcHBzIGV4dGVuZHMgY2RrLkNvbnN0cnVjdCBpbXBsZW1lbnRzIElNaWNyb0FwcHMge1xuICBwcml2YXRlIF9jZjogTWljcm9BcHBzQ0Y7XG4gIHB1YmxpYyBnZXQgY2YoKTogSU1pY3JvQXBwc0NGIHtcbiAgICByZXR1cm4gdGhpcy5fY2Y7XG4gIH1cblxuICBwcml2YXRlIF9zMzogTWljcm9BcHBzUzM7XG4gIHB1YmxpYyBnZXQgczMoKTogSU1pY3JvQXBwc1MzIHtcbiAgICByZXR1cm4gdGhpcy5fczM7XG4gIH1cblxuICBwcml2YXRlIF9hcGlnd3k6IE1pY3JvQXBwc0FQSUd3eTtcbiAgcHVibGljIGdldCBhcGlnd3koKTogSU1pY3JvQXBwc0FQSUd3eSB7XG4gICAgcmV0dXJuIHRoaXMuX2FwaWd3eTtcbiAgfVxuXG4gIHByaXZhdGUgX3N2Y3M6IE1pY3JvQXBwc1N2Y3M7XG4gIHB1YmxpYyBnZXQgc3ZjcygpOiBJTWljcm9BcHBzU3ZjcyB7XG4gICAgcmV0dXJuIHRoaXMuX3N2Y3M7XG4gIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBjb25zdHJ1Y3RvcihzY29wZTogY2RrLkNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM/OiBNaWNyb0FwcHNQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBpZiAocHJvcHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdwcm9wcyBtdXN0IGJlIHNldCcpO1xuICAgIH1cblxuICAgIGNvbnN0IHtcbiAgICAgIGRvbWFpbk5hbWVFZGdlLFxuICAgICAgZG9tYWluTmFtZU9yaWdpbixcbiAgICAgIGFzc2V0TmFtZVJvb3QsXG4gICAgICBhc3NldE5hbWVTdWZmaXgsXG4gICAgICByNTNab25lLFxuICAgICAgY2VydEVkZ2UsXG4gICAgICBhcHBFbnYgPSAnZGV2JyxcbiAgICAgIGNlcnRPcmlnaW4sXG4gICAgICByZW1vdmFsUG9saWN5LFxuICAgICAgczNQb2xpY3lCeXBhc3NBUk9BcyxcbiAgICAgIHMzUG9saWN5QnlwYXNzUHJpbmNpcGFsQVJOcyxcbiAgICAgIHMzU3RyaWN0QnVja2V0UG9saWN5LFxuICAgICAgcm9vdFBhdGhQcmVmaXgsXG4gICAgfSA9IHByb3BzO1xuXG4gICAgdGhpcy5fczMgPSBuZXcgTWljcm9BcHBzUzModGhpcywgJ3MzJywge1xuICAgICAgcmVtb3ZhbFBvbGljeSxcbiAgICAgIGJ1Y2tldExvZ3NOYW1lOiBkb21haW5OYW1lRWRnZSA/IGAke3JldmVyc2VEb21haW4oZG9tYWluTmFtZUVkZ2UpfS1sb2dzYCA6IHVuZGVmaW5lZCxcbiAgICAgIGJ1Y2tldEFwcHNOYW1lOiBkb21haW5OYW1lRWRnZSA/IGAke3JldmVyc2VEb21haW4oZG9tYWluTmFtZUVkZ2UpfWAgOiB1bmRlZmluZWQsXG4gICAgICBidWNrZXRBcHBzU3RhZ2luZ05hbWU6IGRvbWFpbk5hbWVFZGdlXG4gICAgICAgID8gYCR7cmV2ZXJzZURvbWFpbihkb21haW5OYW1lRWRnZSl9LXN0YWdpbmdgXG4gICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgYXNzZXROYW1lUm9vdCxcbiAgICAgIGFzc2V0TmFtZVN1ZmZpeCxcbiAgICB9KTtcbiAgICB0aGlzLl9hcGlnd3kgPSBuZXcgTWljcm9BcHBzQVBJR3d5KHRoaXMsICdhcGknLCB7XG4gICAgICByZW1vdmFsUG9saWN5LFxuICAgICAgYXNzZXROYW1lUm9vdCxcbiAgICAgIGFzc2V0TmFtZVN1ZmZpeCxcbiAgICAgIGRvbWFpbk5hbWVFZGdlLFxuICAgICAgZG9tYWluTmFtZU9yaWdpbixcbiAgICAgIHI1M1pvbmUsXG4gICAgICBjZXJ0T3JpZ2luLFxuICAgICAgcm9vdFBhdGhQcmVmaXgsXG4gICAgfSk7XG4gICAgdGhpcy5fY2YgPSBuZXcgTWljcm9BcHBzQ0YodGhpcywgJ2NmdCcsIHtcbiAgICAgIHJlbW92YWxQb2xpY3ksXG4gICAgICBhc3NldE5hbWVSb290LFxuICAgICAgYXNzZXROYW1lU3VmZml4LFxuICAgICAgZG9tYWluTmFtZUVkZ2UsXG4gICAgICBkb21haW5OYW1lT3JpZ2luLFxuICAgICAgaHR0cEFwaTogdGhpcy5fYXBpZ3d5Lmh0dHBBcGksXG4gICAgICByNTNab25lLFxuICAgICAgY2VydEVkZ2UsXG4gICAgICBidWNrZXRBcHBzT3JpZ2luOiB0aGlzLl9zMy5idWNrZXRBcHBzT3JpZ2luLFxuICAgICAgYnVja2V0TG9nczogdGhpcy5fczMuYnVja2V0TG9ncyxcbiAgICAgIHJvb3RQYXRoUHJlZml4LFxuICAgIH0pO1xuICAgIHRoaXMuX3N2Y3MgPSBuZXcgTWljcm9BcHBzU3Zjcyh0aGlzLCAnc3ZjcycsIHtcbiAgICAgIGh0dHBBcGk6IHRoaXMuYXBpZ3d5Lmh0dHBBcGksXG4gICAgICByZW1vdmFsUG9saWN5LFxuICAgICAgYnVja2V0QXBwczogdGhpcy5fczMuYnVja2V0QXBwcyxcbiAgICAgIGJ1Y2tldEFwcHNPQUk6IHRoaXMuX3MzLmJ1Y2tldEFwcHNPQUksXG4gICAgICBidWNrZXRBcHBzU3RhZ2luZzogdGhpcy5fczMuYnVja2V0QXBwc1N0YWdpbmcsXG4gICAgICBhc3NldE5hbWVSb290LFxuICAgICAgYXNzZXROYW1lU3VmZml4LFxuICAgICAgYXBwRW52LFxuICAgICAgczNQb2xpY3lCeXBhc3NBUk9BcyxcbiAgICAgIHMzUG9saWN5QnlwYXNzUHJpbmNpcGFsQVJOcyxcbiAgICAgIHMzU3RyaWN0QnVja2V0UG9saWN5LFxuICAgICAgcm9vdFBhdGhQcmVmaXgsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
107
|
+
MicroApps[_a] = { fqn: "@pwrdrvr/microapps-cdk.MicroApps", version: "0.2.1" };
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWljcm9BcHBzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL01pY3JvQXBwcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUdBLDJDQUF1QztBQUN2Qyx1REFBc0U7QUFDdEUsK0NBQTBEO0FBQzFELCtDQUEwRDtBQUMxRCxtREFBZ0U7QUFDaEUseURBQXNEOzs7Ozs7QUF1RHRELE1BQWEsU0FBVSxTQUFRLHNCQUFTOzs7Ozs7OztJQXNCdEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFzQjtRQUM5RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUN2QixNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7U0FDdEM7UUFFRCxNQUFNLEVBQ0osY0FBYyxFQUNkLGdCQUFnQixFQUNoQixhQUFhLEVBQ2IsZUFBZSxFQUNmLE9BQU8sRUFDUCxRQUFRLEVBQ1IsTUFBTSxHQUFHLEtBQUssRUFDZCxVQUFVLEVBQ1YsYUFBYSxFQUNiLG1CQUFtQixFQUNuQiwyQkFBMkIsRUFDM0Isb0JBQW9CLEVBQ3BCLGNBQWMsRUFDZCxrQkFBa0IsR0FBRyxJQUFJLEdBQzFCLEdBQUcsS0FBSyxDQUFDO1FBRVYsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLHlCQUFXLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRTtZQUNyQyxhQUFhO1lBQ2IsY0FBYyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsR0FBRyw2QkFBYSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDcEYsY0FBYyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsR0FBRyw2QkFBYSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDL0UscUJBQXFCLEVBQUUsY0FBYztnQkFDbkMsQ0FBQyxDQUFDLEdBQUcsNkJBQWEsQ0FBQyxjQUFjLENBQUMsVUFBVTtnQkFDNUMsQ0FBQyxDQUFDLFNBQVM7WUFDYixhQUFhO1lBQ2IsZUFBZTtTQUNoQixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksaUNBQWUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFO1lBQzlDLGFBQWE7WUFDYixhQUFhO1lBQ2IsZUFBZTtZQUNmLGNBQWM7WUFDZCxnQkFBZ0I7WUFDaEIsT0FBTztZQUNQLFVBQVU7WUFDVixjQUFjO1NBQ2YsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLHlCQUFXLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRTtZQUN0QyxhQUFhO1lBQ2IsYUFBYTtZQUNiLGVBQWU7WUFDZixjQUFjO1lBQ2QsZ0JBQWdCO1lBQ2hCLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU87WUFDN0IsT0FBTztZQUNQLFFBQVE7WUFDUixnQkFBZ0IsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLGdCQUFnQjtZQUMzQyxVQUFVLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVO1lBQy9CLGNBQWM7WUFDZCxrQkFBa0I7U0FDbkIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLDZCQUFhLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRTtZQUMzQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPO1lBQzVCLGFBQWE7WUFDYixVQUFVLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVO1lBQy9CLGFBQWEsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWE7WUFDckMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUI7WUFDN0MsYUFBYTtZQUNiLGVBQWU7WUFDZixNQUFNO1lBQ04sbUJBQW1CO1lBQ25CLDJCQUEyQjtZQUMzQixvQkFBb0I7WUFDcEIsY0FBYztTQUNmLENBQUMsQ0FBQztJQUNMLENBQUM7Ozs7SUE1RkQsSUFBVyxFQUFFO1FBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ2xCLENBQUM7Ozs7SUFHRCxJQUFXLEVBQUU7UUFDWCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDbEIsQ0FBQzs7OztJQUdELElBQVcsTUFBTTtRQUNmLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDOzs7O0lBR0QsSUFBVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7O0FBbkJILDhCQStGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlbW92YWxQb2xpY3kgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgKiBhcyBhY20gZnJvbSAnYXdzLWNkay1saWIvYXdzLWNlcnRpZmljYXRlbWFuYWdlcic7XG5pbXBvcnQgKiBhcyByNTMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXJvdXRlNTMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBJTWljcm9BcHBzQVBJR3d5LCBNaWNyb0FwcHNBUElHd3kgfSBmcm9tICcuL01pY3JvQXBwc0FQSUd3eSc7XG5pbXBvcnQgeyBJTWljcm9BcHBzQ0YsIE1pY3JvQXBwc0NGIH0gZnJvbSAnLi9NaWNyb0FwcHNDRic7XG5pbXBvcnQgeyBJTWljcm9BcHBzUzMsIE1pY3JvQXBwc1MzIH0gZnJvbSAnLi9NaWNyb0FwcHNTMyc7XG5pbXBvcnQgeyBJTWljcm9BcHBzU3ZjcywgTWljcm9BcHBzU3ZjcyB9IGZyb20gJy4vTWljcm9BcHBzU3Zjcyc7XG5pbXBvcnQgeyByZXZlcnNlRG9tYWluIH0gZnJvbSAnLi91dGlscy9SZXZlcnNlRG9tYWluJztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgaW50ZXJmYWNlIE1pY3JvQXBwc1Byb3BzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcmVtb3ZhbFBvbGljeT86IFJlbW92YWxQb2xpY3k7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBhcHBFbnY6IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBhc3NldE5hbWVSb290Pzogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBhc3NldE5hbWVTdWZmaXg/OiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSByNTNab25lPzogcjUzLklIb3N0ZWRab25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNlcnRFZGdlPzogYWNtLklDZXJ0aWZpY2F0ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBjZXJ0T3JpZ2luPzogYWNtLklDZXJ0aWZpY2F0ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgczNTdHJpY3RCdWNrZXRQb2xpY3k/OiBib29sZWFuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgczNQb2xpY3lCeXBhc3NQcmluY2lwYWxBUk5zPzogc3RyaW5nW107XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHMzUG9saWN5QnlwYXNzQVJPQXM/OiBzdHJpbmdbXTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGRvbWFpbk5hbWVFZGdlPzogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgZG9tYWluTmFtZU9yaWdpbj86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcm9vdFBhdGhQcmVmaXg/OiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNyZWF0ZUFQSVBhdGhSb3V0ZT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU1pY3JvQXBwcyB7XG4gIHJlYWRvbmx5IGNmOiBJTWljcm9BcHBzQ0Y7XG4gIHJlYWRvbmx5IHMzOiBJTWljcm9BcHBzUzM7XG4gIHJlYWRvbmx5IHN2Y3M6IElNaWNyb0FwcHNTdmNzO1xuICByZWFkb25seSBhcGlnd3k6IElNaWNyb0FwcHNBUElHd3k7XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBjbGFzcyBNaWNyb0FwcHMgZXh0ZW5kcyBDb25zdHJ1Y3QgaW1wbGVtZW50cyBJTWljcm9BcHBzIHtcbiAgcHJpdmF0ZSBfY2Y6IE1pY3JvQXBwc0NGO1xuICBwdWJsaWMgZ2V0IGNmKCk6IElNaWNyb0FwcHNDRiB7XG4gICAgcmV0dXJuIHRoaXMuX2NmO1xuICB9XG5cbiAgcHJpdmF0ZSBfczM6IE1pY3JvQXBwc1MzO1xuICBwdWJsaWMgZ2V0IHMzKCk6IElNaWNyb0FwcHNTMyB7XG4gICAgcmV0dXJuIHRoaXMuX3MzO1xuICB9XG5cbiAgcHJpdmF0ZSBfYXBpZ3d5OiBNaWNyb0FwcHNBUElHd3k7XG4gIHB1YmxpYyBnZXQgYXBpZ3d5KCk6IElNaWNyb0FwcHNBUElHd3kge1xuICAgIHJldHVybiB0aGlzLl9hcGlnd3k7XG4gIH1cblxuICBwcml2YXRlIF9zdmNzOiBNaWNyb0FwcHNTdmNzO1xuICBwdWJsaWMgZ2V0IHN2Y3MoKTogSU1pY3JvQXBwc1N2Y3Mge1xuICAgIHJldHVybiB0aGlzLl9zdmNzO1xuICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM/OiBNaWNyb0FwcHNQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBpZiAocHJvcHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdwcm9wcyBtdXN0IGJlIHNldCcpO1xuICAgIH1cblxuICAgIGNvbnN0IHtcbiAgICAgIGRvbWFpbk5hbWVFZGdlLFxuICAgICAgZG9tYWluTmFtZU9yaWdpbixcbiAgICAgIGFzc2V0TmFtZVJvb3QsXG4gICAgICBhc3NldE5hbWVTdWZmaXgsXG4gICAgICByNTNab25lLFxuICAgICAgY2VydEVkZ2UsXG4gICAgICBhcHBFbnYgPSAnZGV2JyxcbiAgICAgIGNlcnRPcmlnaW4sXG4gICAgICByZW1vdmFsUG9saWN5LFxuICAgICAgczNQb2xpY3lCeXBhc3NBUk9BcyxcbiAgICAgIHMzUG9saWN5QnlwYXNzUHJpbmNpcGFsQVJOcyxcbiAgICAgIHMzU3RyaWN0QnVja2V0UG9saWN5LFxuICAgICAgcm9vdFBhdGhQcmVmaXgsXG4gICAgICBjcmVhdGVBUElQYXRoUm91dGUgPSB0cnVlLFxuICAgIH0gPSBwcm9wcztcblxuICAgIHRoaXMuX3MzID0gbmV3IE1pY3JvQXBwc1MzKHRoaXMsICdzMycsIHtcbiAgICAgIHJlbW92YWxQb2xpY3ksXG4gICAgICBidWNrZXRMb2dzTmFtZTogZG9tYWluTmFtZUVkZ2UgPyBgJHtyZXZlcnNlRG9tYWluKGRvbWFpbk5hbWVFZGdlKX0tbG9nc2AgOiB1bmRlZmluZWQsXG4gICAgICBidWNrZXRBcHBzTmFtZTogZG9tYWluTmFtZUVkZ2UgPyBgJHtyZXZlcnNlRG9tYWluKGRvbWFpbk5hbWVFZGdlKX1gIDogdW5kZWZpbmVkLFxuICAgICAgYnVja2V0QXBwc1N0YWdpbmdOYW1lOiBkb21haW5OYW1lRWRnZVxuICAgICAgICA/IGAke3JldmVyc2VEb21haW4oZG9tYWluTmFtZUVkZ2UpfS1zdGFnaW5nYFxuICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgIGFzc2V0TmFtZVJvb3QsXG4gICAgICBhc3NldE5hbWVTdWZmaXgsXG4gICAgfSk7XG4gICAgdGhpcy5fYXBpZ3d5ID0gbmV3IE1pY3JvQXBwc0FQSUd3eSh0aGlzLCAnYXBpJywge1xuICAgICAgcmVtb3ZhbFBvbGljeSxcbiAgICAgIGFzc2V0TmFtZVJvb3QsXG4gICAgICBhc3NldE5hbWVTdWZmaXgsXG4gICAgICBkb21haW5OYW1lRWRnZSxcbiAgICAgIGRvbWFpbk5hbWVPcmlnaW4sXG4gICAgICByNTNab25lLFxuICAgICAgY2VydE9yaWdpbixcbiAgICAgIHJvb3RQYXRoUHJlZml4LFxuICAgIH0pO1xuICAgIHRoaXMuX2NmID0gbmV3IE1pY3JvQXBwc0NGKHRoaXMsICdjZnQnLCB7XG4gICAgICByZW1vdmFsUG9saWN5LFxuICAgICAgYXNzZXROYW1lUm9vdCxcbiAgICAgIGFzc2V0TmFtZVN1ZmZpeCxcbiAgICAgIGRvbWFpbk5hbWVFZGdlLFxuICAgICAgZG9tYWluTmFtZU9yaWdpbixcbiAgICAgIGh0dHBBcGk6IHRoaXMuX2FwaWd3eS5odHRwQXBpLFxuICAgICAgcjUzWm9uZSxcbiAgICAgIGNlcnRFZGdlLFxuICAgICAgYnVja2V0QXBwc09yaWdpbjogdGhpcy5fczMuYnVja2V0QXBwc09yaWdpbixcbiAgICAgIGJ1Y2tldExvZ3M6IHRoaXMuX3MzLmJ1Y2tldExvZ3MsXG4gICAgICByb290UGF0aFByZWZpeCxcbiAgICAgIGNyZWF0ZUFQSVBhdGhSb3V0ZSxcbiAgICB9KTtcbiAgICB0aGlzLl9zdmNzID0gbmV3IE1pY3JvQXBwc1N2Y3ModGhpcywgJ3N2Y3MnLCB7XG4gICAgICBodHRwQXBpOiB0aGlzLmFwaWd3eS5odHRwQXBpLFxuICAgICAgcmVtb3ZhbFBvbGljeSxcbiAgICAgIGJ1Y2tldEFwcHM6IHRoaXMuX3MzLmJ1Y2tldEFwcHMsXG4gICAgICBidWNrZXRBcHBzT0FJOiB0aGlzLl9zMy5idWNrZXRBcHBzT0FJLFxuICAgICAgYnVja2V0QXBwc1N0YWdpbmc6IHRoaXMuX3MzLmJ1Y2tldEFwcHNTdGFnaW5nLFxuICAgICAgYXNzZXROYW1lUm9vdCxcbiAgICAgIGFzc2V0TmFtZVN1ZmZpeCxcbiAgICAgIGFwcEVudixcbiAgICAgIHMzUG9saWN5QnlwYXNzQVJPQXMsXG4gICAgICBzM1BvbGljeUJ5cGFzc1ByaW5jaXBhbEFSTnMsXG4gICAgICBzM1N0cmljdEJ1Y2tldFBvbGljeSxcbiAgICAgIHJvb3RQYXRoUHJlZml4LFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|