@aws-solutions-constructs/core 2.26.0 → 2.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +67 -41
- package/lib/fargate-helper.d.ts +1 -0
- package/lib/fargate-helper.js +8 -2
- package/lib/input-validation.d.ts +2 -0
- package/lib/input-validation.js +4 -1
- package/package.json +4 -4
package/.jsii
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"npmlog": "^4.1.2"
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"aws-cdk-lib": "^2.
|
|
16
|
+
"aws-cdk-lib": "^2.50.0",
|
|
17
17
|
"constructs": "^10.0.0"
|
|
18
18
|
},
|
|
19
19
|
"dependencyClosure": {
|
|
@@ -1411,6 +1411,19 @@
|
|
|
1411
1411
|
}
|
|
1412
1412
|
}
|
|
1413
1413
|
},
|
|
1414
|
+
"aws-cdk-lib.aws_identitystore": {
|
|
1415
|
+
"targets": {
|
|
1416
|
+
"dotnet": {
|
|
1417
|
+
"namespace": "Amazon.CDK.AWS.IdentityStore"
|
|
1418
|
+
},
|
|
1419
|
+
"java": {
|
|
1420
|
+
"package": "software.amazon.awscdk.services.identitystore"
|
|
1421
|
+
},
|
|
1422
|
+
"python": {
|
|
1423
|
+
"module": "aws_cdk.aws_identitystore"
|
|
1424
|
+
}
|
|
1425
|
+
}
|
|
1426
|
+
},
|
|
1414
1427
|
"aws-cdk-lib.aws_imagebuilder": {
|
|
1415
1428
|
"targets": {
|
|
1416
1429
|
"dotnet": {
|
|
@@ -3104,7 +3117,7 @@
|
|
|
3104
3117
|
},
|
|
3105
3118
|
"description": "Core CDK Construct for patterns library",
|
|
3106
3119
|
"homepage": "https://github.com/awslabs/aws-solutions-constructs.git",
|
|
3107
|
-
"jsiiVersion": "1.
|
|
3120
|
+
"jsiiVersion": "1.70.0 (build 03c2f6f)",
|
|
3108
3121
|
"license": "Apache-2.0",
|
|
3109
3122
|
"metadata": {
|
|
3110
3123
|
"jsii": {
|
|
@@ -5084,7 +5097,7 @@
|
|
|
5084
5097
|
"kind": "interface",
|
|
5085
5098
|
"locationInModule": {
|
|
5086
5099
|
"filename": "lib/input-validation.ts",
|
|
5087
|
-
"line":
|
|
5100
|
+
"line": 29
|
|
5088
5101
|
},
|
|
5089
5102
|
"name": "VerifiedProps",
|
|
5090
5103
|
"properties": [
|
|
@@ -5093,7 +5106,7 @@
|
|
|
5093
5106
|
"immutable": true,
|
|
5094
5107
|
"locationInModule": {
|
|
5095
5108
|
"filename": "lib/input-validation.ts",
|
|
5096
|
-
"line":
|
|
5109
|
+
"line": 75
|
|
5097
5110
|
},
|
|
5098
5111
|
"name": "albLoggingBucketProps",
|
|
5099
5112
|
"optional": true,
|
|
@@ -5106,7 +5119,7 @@
|
|
|
5106
5119
|
"immutable": true,
|
|
5107
5120
|
"locationInModule": {
|
|
5108
5121
|
"filename": "lib/input-validation.ts",
|
|
5109
|
-
"line":
|
|
5122
|
+
"line": 50
|
|
5110
5123
|
},
|
|
5111
5124
|
"name": "bucketProps",
|
|
5112
5125
|
"optional": true,
|
|
@@ -5119,7 +5132,7 @@
|
|
|
5119
5132
|
"immutable": true,
|
|
5120
5133
|
"locationInModule": {
|
|
5121
5134
|
"filename": "lib/input-validation.ts",
|
|
5122
|
-
"line":
|
|
5135
|
+
"line": 43
|
|
5123
5136
|
},
|
|
5124
5137
|
"name": "deadLetterQueueProps",
|
|
5125
5138
|
"optional": true,
|
|
@@ -5132,7 +5145,7 @@
|
|
|
5132
5145
|
"immutable": true,
|
|
5133
5146
|
"locationInModule": {
|
|
5134
5147
|
"filename": "lib/input-validation.ts",
|
|
5135
|
-
"line":
|
|
5148
|
+
"line": 42
|
|
5136
5149
|
},
|
|
5137
5150
|
"name": "deployDeadLetterQueue",
|
|
5138
5151
|
"optional": true,
|
|
@@ -5145,7 +5158,7 @@
|
|
|
5145
5158
|
"immutable": true,
|
|
5146
5159
|
"locationInModule": {
|
|
5147
5160
|
"filename": "lib/input-validation.ts",
|
|
5148
|
-
"line":
|
|
5161
|
+
"line": 66
|
|
5149
5162
|
},
|
|
5150
5163
|
"name": "deployVpc",
|
|
5151
5164
|
"optional": true,
|
|
@@ -5158,7 +5171,7 @@
|
|
|
5158
5171
|
"immutable": true,
|
|
5159
5172
|
"locationInModule": {
|
|
5160
5173
|
"filename": "lib/input-validation.ts",
|
|
5161
|
-
"line":
|
|
5174
|
+
"line": 30
|
|
5162
5175
|
},
|
|
5163
5176
|
"name": "dynamoTableProps",
|
|
5164
5177
|
"optional": true,
|
|
@@ -5171,7 +5184,7 @@
|
|
|
5171
5184
|
"immutable": true,
|
|
5172
5185
|
"locationInModule": {
|
|
5173
5186
|
"filename": "lib/input-validation.ts",
|
|
5174
|
-
"line":
|
|
5187
|
+
"line": 68
|
|
5175
5188
|
},
|
|
5176
5189
|
"name": "encryptionKey",
|
|
5177
5190
|
"optional": true,
|
|
@@ -5184,7 +5197,7 @@
|
|
|
5184
5197
|
"immutable": true,
|
|
5185
5198
|
"locationInModule": {
|
|
5186
5199
|
"filename": "lib/input-validation.ts",
|
|
5187
|
-
"line":
|
|
5200
|
+
"line": 69
|
|
5188
5201
|
},
|
|
5189
5202
|
"name": "encryptionKeyProps",
|
|
5190
5203
|
"optional": true,
|
|
@@ -5197,7 +5210,7 @@
|
|
|
5197
5210
|
"immutable": true,
|
|
5198
5211
|
"locationInModule": {
|
|
5199
5212
|
"filename": "lib/input-validation.ts",
|
|
5200
|
-
"line":
|
|
5213
|
+
"line": 59
|
|
5201
5214
|
},
|
|
5202
5215
|
"name": "endpointProps",
|
|
5203
5216
|
"optional": true,
|
|
@@ -5210,7 +5223,7 @@
|
|
|
5210
5223
|
"immutable": true,
|
|
5211
5224
|
"locationInModule": {
|
|
5212
5225
|
"filename": "lib/input-validation.ts",
|
|
5213
|
-
"line":
|
|
5226
|
+
"line": 49
|
|
5214
5227
|
},
|
|
5215
5228
|
"name": "existingBucketInterface",
|
|
5216
5229
|
"optional": true,
|
|
@@ -5223,7 +5236,7 @@
|
|
|
5223
5236
|
"immutable": true,
|
|
5224
5237
|
"locationInModule": {
|
|
5225
5238
|
"filename": "lib/input-validation.ts",
|
|
5226
|
-
"line":
|
|
5239
|
+
"line": 48
|
|
5227
5240
|
},
|
|
5228
5241
|
"name": "existingBucketObj",
|
|
5229
5242
|
"optional": true,
|
|
@@ -5236,7 +5249,7 @@
|
|
|
5236
5249
|
"immutable": true,
|
|
5237
5250
|
"locationInModule": {
|
|
5238
5251
|
"filename": "lib/input-validation.ts",
|
|
5239
|
-
"line":
|
|
5252
|
+
"line": 56
|
|
5240
5253
|
},
|
|
5241
5254
|
"name": "existingGlueJob",
|
|
5242
5255
|
"optional": true,
|
|
@@ -5249,7 +5262,7 @@
|
|
|
5249
5262
|
"immutable": true,
|
|
5250
5263
|
"locationInModule": {
|
|
5251
5264
|
"filename": "lib/input-validation.ts",
|
|
5252
|
-
"line":
|
|
5265
|
+
"line": 37
|
|
5253
5266
|
},
|
|
5254
5267
|
"name": "existingLambdaObj",
|
|
5255
5268
|
"optional": true,
|
|
@@ -5262,7 +5275,7 @@
|
|
|
5262
5275
|
"immutable": true,
|
|
5263
5276
|
"locationInModule": {
|
|
5264
5277
|
"filename": "lib/input-validation.ts",
|
|
5265
|
-
"line":
|
|
5278
|
+
"line": 72
|
|
5266
5279
|
},
|
|
5267
5280
|
"name": "existingLoadBalancerObj",
|
|
5268
5281
|
"optional": true,
|
|
@@ -5275,7 +5288,7 @@
|
|
|
5275
5288
|
"immutable": true,
|
|
5276
5289
|
"locationInModule": {
|
|
5277
5290
|
"filename": "lib/input-validation.ts",
|
|
5278
|
-
"line":
|
|
5291
|
+
"line": 77
|
|
5279
5292
|
},
|
|
5280
5293
|
"name": "existingLoggingBucketObj",
|
|
5281
5294
|
"optional": true,
|
|
@@ -5288,7 +5301,7 @@
|
|
|
5288
5301
|
"immutable": true,
|
|
5289
5302
|
"locationInModule": {
|
|
5290
5303
|
"filename": "lib/input-validation.ts",
|
|
5291
|
-
"line":
|
|
5304
|
+
"line": 45
|
|
5292
5305
|
},
|
|
5293
5306
|
"name": "existingMediaStoreContainerObj",
|
|
5294
5307
|
"optional": true,
|
|
@@ -5301,7 +5314,7 @@
|
|
|
5301
5314
|
"immutable": true,
|
|
5302
5315
|
"locationInModule": {
|
|
5303
5316
|
"filename": "lib/input-validation.ts",
|
|
5304
|
-
"line":
|
|
5317
|
+
"line": 40
|
|
5305
5318
|
},
|
|
5306
5319
|
"name": "existingQueueObj",
|
|
5307
5320
|
"optional": true,
|
|
@@ -5314,7 +5327,7 @@
|
|
|
5314
5327
|
"immutable": true,
|
|
5315
5328
|
"locationInModule": {
|
|
5316
5329
|
"filename": "lib/input-validation.ts",
|
|
5317
|
-
"line":
|
|
5330
|
+
"line": 58
|
|
5318
5331
|
},
|
|
5319
5332
|
"name": "existingSagemakerEndpointObj",
|
|
5320
5333
|
"optional": true,
|
|
@@ -5327,7 +5340,7 @@
|
|
|
5327
5340
|
"immutable": true,
|
|
5328
5341
|
"locationInModule": {
|
|
5329
5342
|
"filename": "lib/input-validation.ts",
|
|
5330
|
-
"line":
|
|
5343
|
+
"line": 61
|
|
5331
5344
|
},
|
|
5332
5345
|
"name": "existingSecretObj",
|
|
5333
5346
|
"optional": true,
|
|
@@ -5340,7 +5353,7 @@
|
|
|
5340
5353
|
"immutable": true,
|
|
5341
5354
|
"locationInModule": {
|
|
5342
5355
|
"filename": "lib/input-validation.ts",
|
|
5343
|
-
"line":
|
|
5356
|
+
"line": 34
|
|
5344
5357
|
},
|
|
5345
5358
|
"name": "existingStreamObj",
|
|
5346
5359
|
"optional": true,
|
|
@@ -5353,7 +5366,7 @@
|
|
|
5353
5366
|
"immutable": true,
|
|
5354
5367
|
"locationInModule": {
|
|
5355
5368
|
"filename": "lib/input-validation.ts",
|
|
5356
|
-
"line":
|
|
5369
|
+
"line": 32
|
|
5357
5370
|
},
|
|
5358
5371
|
"name": "existingTableInterface",
|
|
5359
5372
|
"optional": true,
|
|
@@ -5366,7 +5379,7 @@
|
|
|
5366
5379
|
"immutable": true,
|
|
5367
5380
|
"locationInModule": {
|
|
5368
5381
|
"filename": "lib/input-validation.ts",
|
|
5369
|
-
"line":
|
|
5382
|
+
"line": 31
|
|
5370
5383
|
},
|
|
5371
5384
|
"name": "existingTableObj",
|
|
5372
5385
|
"optional": true,
|
|
@@ -5379,7 +5392,7 @@
|
|
|
5379
5392
|
"immutable": true,
|
|
5380
5393
|
"locationInModule": {
|
|
5381
5394
|
"filename": "lib/input-validation.ts",
|
|
5382
|
-
"line":
|
|
5395
|
+
"line": 53
|
|
5383
5396
|
},
|
|
5384
5397
|
"name": "existingTopicObj",
|
|
5385
5398
|
"optional": true,
|
|
@@ -5392,7 +5405,7 @@
|
|
|
5392
5405
|
"immutable": true,
|
|
5393
5406
|
"locationInModule": {
|
|
5394
5407
|
"filename": "lib/input-validation.ts",
|
|
5395
|
-
"line":
|
|
5408
|
+
"line": 64
|
|
5396
5409
|
},
|
|
5397
5410
|
"name": "existingVpc",
|
|
5398
5411
|
"optional": true,
|
|
@@ -5405,7 +5418,7 @@
|
|
|
5405
5418
|
"immutable": true,
|
|
5406
5419
|
"locationInModule": {
|
|
5407
5420
|
"filename": "lib/input-validation.ts",
|
|
5408
|
-
"line":
|
|
5421
|
+
"line": 55
|
|
5409
5422
|
},
|
|
5410
5423
|
"name": "glueJobProps",
|
|
5411
5424
|
"optional": true,
|
|
@@ -5418,7 +5431,7 @@
|
|
|
5418
5431
|
"immutable": true,
|
|
5419
5432
|
"locationInModule": {
|
|
5420
5433
|
"filename": "lib/input-validation.ts",
|
|
5421
|
-
"line":
|
|
5434
|
+
"line": 35
|
|
5422
5435
|
},
|
|
5423
5436
|
"name": "kinesisStreamProps",
|
|
5424
5437
|
"optional": true,
|
|
@@ -5431,7 +5444,7 @@
|
|
|
5431
5444
|
"immutable": true,
|
|
5432
5445
|
"locationInModule": {
|
|
5433
5446
|
"filename": "lib/input-validation.ts",
|
|
5434
|
-
"line":
|
|
5447
|
+
"line": 38
|
|
5435
5448
|
},
|
|
5436
5449
|
"name": "lambdaFunctionProps",
|
|
5437
5450
|
"optional": true,
|
|
@@ -5444,7 +5457,7 @@
|
|
|
5444
5457
|
"immutable": true,
|
|
5445
5458
|
"locationInModule": {
|
|
5446
5459
|
"filename": "lib/input-validation.ts",
|
|
5447
|
-
"line":
|
|
5460
|
+
"line": 71
|
|
5448
5461
|
},
|
|
5449
5462
|
"name": "loadBalancerProps",
|
|
5450
5463
|
"optional": true,
|
|
@@ -5457,7 +5470,7 @@
|
|
|
5457
5470
|
"immutable": true,
|
|
5458
5471
|
"locationInModule": {
|
|
5459
5472
|
"filename": "lib/input-validation.ts",
|
|
5460
|
-
"line":
|
|
5473
|
+
"line": 74
|
|
5461
5474
|
},
|
|
5462
5475
|
"name": "logAlbAccessLogs",
|
|
5463
5476
|
"optional": true,
|
|
@@ -5470,7 +5483,7 @@
|
|
|
5470
5483
|
"immutable": true,
|
|
5471
5484
|
"locationInModule": {
|
|
5472
5485
|
"filename": "lib/input-validation.ts",
|
|
5473
|
-
"line":
|
|
5486
|
+
"line": 78
|
|
5474
5487
|
},
|
|
5475
5488
|
"name": "loggingBucketProps",
|
|
5476
5489
|
"optional": true,
|
|
@@ -5483,7 +5496,7 @@
|
|
|
5483
5496
|
"immutable": true,
|
|
5484
5497
|
"locationInModule": {
|
|
5485
5498
|
"filename": "lib/input-validation.ts",
|
|
5486
|
-
"line":
|
|
5499
|
+
"line": 79
|
|
5487
5500
|
},
|
|
5488
5501
|
"name": "logS3AccessLogs",
|
|
5489
5502
|
"optional": true,
|
|
@@ -5496,7 +5509,7 @@
|
|
|
5496
5509
|
"immutable": true,
|
|
5497
5510
|
"locationInModule": {
|
|
5498
5511
|
"filename": "lib/input-validation.ts",
|
|
5499
|
-
"line":
|
|
5512
|
+
"line": 46
|
|
5500
5513
|
},
|
|
5501
5514
|
"name": "mediaStoreContainerProps",
|
|
5502
5515
|
"optional": true,
|
|
@@ -5509,7 +5522,20 @@
|
|
|
5509
5522
|
"immutable": true,
|
|
5510
5523
|
"locationInModule": {
|
|
5511
5524
|
"filename": "lib/input-validation.ts",
|
|
5512
|
-
"line":
|
|
5525
|
+
"line": 81
|
|
5526
|
+
},
|
|
5527
|
+
"name": "openSearchDomainProps",
|
|
5528
|
+
"optional": true,
|
|
5529
|
+
"type": {
|
|
5530
|
+
"fqn": "aws-cdk-lib.aws_opensearchservice.CfnDomainProps"
|
|
5531
|
+
}
|
|
5532
|
+
},
|
|
5533
|
+
{
|
|
5534
|
+
"abstract": true,
|
|
5535
|
+
"immutable": true,
|
|
5536
|
+
"locationInModule": {
|
|
5537
|
+
"filename": "lib/input-validation.ts",
|
|
5538
|
+
"line": 41
|
|
5513
5539
|
},
|
|
5514
5540
|
"name": "queueProps",
|
|
5515
5541
|
"optional": true,
|
|
@@ -5522,7 +5548,7 @@
|
|
|
5522
5548
|
"immutable": true,
|
|
5523
5549
|
"locationInModule": {
|
|
5524
5550
|
"filename": "lib/input-validation.ts",
|
|
5525
|
-
"line":
|
|
5551
|
+
"line": 62
|
|
5526
5552
|
},
|
|
5527
5553
|
"name": "secretProps",
|
|
5528
5554
|
"optional": true,
|
|
@@ -5535,7 +5561,7 @@
|
|
|
5535
5561
|
"immutable": true,
|
|
5536
5562
|
"locationInModule": {
|
|
5537
5563
|
"filename": "lib/input-validation.ts",
|
|
5538
|
-
"line":
|
|
5564
|
+
"line": 52
|
|
5539
5565
|
},
|
|
5540
5566
|
"name": "topicProps",
|
|
5541
5567
|
"optional": true,
|
|
@@ -5548,7 +5574,7 @@
|
|
|
5548
5574
|
"immutable": true,
|
|
5549
5575
|
"locationInModule": {
|
|
5550
5576
|
"filename": "lib/input-validation.ts",
|
|
5551
|
-
"line":
|
|
5577
|
+
"line": 65
|
|
5552
5578
|
},
|
|
5553
5579
|
"name": "vpcProps",
|
|
5554
5580
|
"optional": true,
|
|
@@ -5560,6 +5586,6 @@
|
|
|
5560
5586
|
"symbolId": "lib/input-validation:VerifiedProps"
|
|
5561
5587
|
}
|
|
5562
5588
|
},
|
|
5563
|
-
"version": "2.
|
|
5564
|
-
"fingerprint": "
|
|
5589
|
+
"version": "2.27.0",
|
|
5590
|
+
"fingerprint": "QlUcQc8b/0LKPo1MOQu4nvv9tgEkIw3O23f6tYGh/t8="
|
|
5565
5591
|
}
|
package/lib/fargate-helper.d.ts
CHANGED
|
@@ -15,3 +15,4 @@ import * as ec2 from "aws-cdk-lib/aws-ec2";
|
|
|
15
15
|
import * as ecs from "aws-cdk-lib/aws-ecs";
|
|
16
16
|
export declare function CreateFargateService(scope: Construct, id: string, constructVpc: ec2.IVpc, clientClusterProps?: ecs.ClusterProps, ecrRepositoryArn?: string, ecrImageVersion?: string, clientFargateTaskDefinitionProps?: ecs.FargateTaskDefinitionProps | any, clientContainerDefinitionProps?: ecs.ContainerDefinitionProps | any, clientFargateServiceProps?: ecs.FargateServiceProps | any): [ecs.FargateService, ecs.ContainerDefinition];
|
|
17
17
|
export declare function CheckFargateProps(props: any): void;
|
|
18
|
+
export declare function getServiceVpcSecurityGroupIds(service: ecs.FargateService): string[];
|
package/lib/fargate-helper.js
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
* and limitations under the License.
|
|
13
13
|
*/
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.CheckFargateProps = exports.CreateFargateService = void 0;
|
|
15
|
+
exports.getServiceVpcSecurityGroupIds = exports.CheckFargateProps = exports.CreateFargateService = void 0;
|
|
16
16
|
const ec2 = require("aws-cdk-lib/aws-ec2");
|
|
17
17
|
const ecs = require("aws-cdk-lib/aws-ecs");
|
|
18
18
|
const ecr = require("aws-cdk-lib/aws-ecr");
|
|
@@ -154,4 +154,10 @@ function CheckFargateProps(props) {
|
|
|
154
154
|
}
|
|
155
155
|
}
|
|
156
156
|
exports.CheckFargateProps = CheckFargateProps;
|
|
157
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFyZ2F0ZS1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJmYXJnYXRlLWhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7O0dBV0c7OztBQUdILDJDQUEyQztBQUMzQywyQ0FBMkM7QUFDM0MsMkNBQTJDO0FBQzNDLCtCQUErQjtBQUMvQiwwQkFBbUM7QUFFbkMsU0FBZ0Isb0JBQW9CLENBQ2xDLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixZQUFzQixFQUN0QixrQkFBcUMsRUFDckMsZ0JBQXlCLEVBQ3pCLGVBQXdCLEVBQ3hCLGdDQUF1RSxFQUN2RSw4QkFBbUUsRUFDbkUseUJBQXlEO0lBRXpELFFBQVEsQ0FBQyxxQkFBcUIsQ0FDNUIsS0FBSyxFQUNMLFlBQVksRUFDWixRQUFRLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUN0QyxDQUFDO0lBQ0YsUUFBUSxDQUFDLHFCQUFxQixDQUM1QixLQUFLLEVBQ0wsWUFBWSxFQUNaLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQ3RDLENBQUM7SUFDRixRQUFRLENBQUMscUJBQXFCLENBQzVCLEtBQUssRUFDTCxZQUFZLEVBQ1osUUFBUSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsQ0FDakMsQ0FBQztJQUVGLE1BQU0sZ0NBQWdDLEdBQVEsRUFBRSxDQUFDO0lBQ2pELE1BQU0sc0NBQXNDLEdBQVEsRUFBRSxDQUFDO0lBRXZELElBQUksQ0FBQyx5QkFBeUIsRUFBRSxPQUFPLEVBQUU7UUFDdkMsNEJBQTRCO1FBQzVCLHNDQUFzQyxDQUFDLE9BQU8sR0FBRyxhQUFhLENBQzVELEtBQUssRUFDTCxHQUFHLEVBQUUsVUFBVSxFQUNmLFlBQVksRUFDWixrQkFBa0IsQ0FDbkIsQ0FBQztLQUNIO0lBRUQsNkJBQTZCO0lBQzdCLElBQUksQ0FBQyw4QkFBOEIsRUFBRSxLQUFLLEVBQUU7UUFDMUMsZ0NBQWdDLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FDbEQsS0FBSyxF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TztJQUVELElBQUksVUFBVSxFQUFFO1FBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztLQUNoQztBQUNILENBQUM7QUFwRUQsOENBb0VDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiAgQ29weXJpZ2h0IDIwMjIgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKS4gWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuICogIHdpdGggdGhlIExpY2Vuc2UuIEEgY29weSBvZiB0aGUgTGljZW5zZSBpcyBsb2NhdGVkIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiAgb3IgaW4gdGhlICdsaWNlbnNlJyBmaWxlIGFjY29tcGFueWluZyB0aGlzIGZpbGUuIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVNcbiAqICBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9uc1xuICogIGFuZCBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0ICogYXMgZWMyIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWMyXCI7XG5pbXBvcnQgKiBhcyBlY3MgZnJvbSBcImF3cy1jZGstbGliL2F3cy1lY3NcIjtcbmltcG9ydCAqIGFzIGVjciBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjclwiO1xuaW1wb3J0ICogYXMgZGVmYXVsdHMgZnJvbSBcIi4uXCI7XG5pbXBvcnQgeyBvdmVycmlkZVByb3BzIH0gZnJvbSBcIi4uXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBDcmVhdGVGYXJnYXRlU2VydmljZShcbiAgc2NvcGU6IENvbnN0cnVjdCxcbiAgaWQ6IHN0cmluZyxcbiAgY29uc3RydWN0VnBjOiBlYzIuSVZwYyxcbiAgY2xpZW50Q2x1c3RlclByb3BzPzogZWNzLkNsdXN0ZXJQcm9wcyxcbiAgZWNyUmVwb3NpdG9yeUFybj86IHN0cmluZyxcbiAgZWNySW1hZ2VWZXJzaW9uPzogc3RyaW5nLFxuICBjbGllbnRGYXJnYXRlVGFza0RlZmluaXRpb25Qcm9wcz86IGVjcy5GYXJnYXRlVGFza0RlZmluaXRpb25Qcm9wcyB8IGFueSxcbiAgY2xpZW50Q29udGFpbmVyRGVmaW5pdGlvblByb3BzPzogZWNzLkNvbnRhaW5lckRlZmluaXRpb25Qcm9wcyB8IGFueSxcbiAgY2xpZW50RmFyZ2F0ZVNlcnZpY2VQcm9wcz86IGVjcy5GYXJnYXRlU2VydmljZVByb3BzIHwgYW55XG4pOiBbZWNzLkZhcmdhdGVTZXJ2aWNlLCBlY3MuQ29udGFpbmVyRGVmaW5pdGlvbl0ge1xuICBkZWZhdWx0cy5BZGRBd3NTZXJ2aWNlRW5kcG9pbnQoXG4gICAgc2NvcGUsXG4gICAgY29uc3RydWN0VnBjLFxuICAgIGRlZmF1bHRzLlNlcnZpY2VFbmRwb2ludFR5cGVzLkVDUl9BUElcbiAgKTtcbiAgZGVmYXVsdHMuQWRkQXdzU2VydmljZUVuZHBvaW50KFxuICAgIHNjb3BlLFxuICAgIGNvbnN0cnVjdFZwYyxcbiAgICBkZWZhdWx0cy5TZXJ2aWNlRW5kcG9pbnRUeXBlcy5FQ1JfREtSXG4gICk7XG4gIGRlZmF1bHRzLkFkZEF3c1NlcnZpY2VFbmRwb2ludChcbiAgICBzY29wZSxcbiAgICBjb25zdHJ1Y3RWcGMsXG4gICAgZGVmYXVsdHMuU2VydmljZUVuZHBvaW50VHlwZXMuUzNcbiAgKTtcblxuICBjb25zdCBjb25zdHJ1Y3RDb250YWluZXJEZWZpbnRpb25Qcm9wczogYW55ID0ge307XG4gIGNvbnN0IGNvbnN0cnVjdEZhcmdhdGVTZXJ2aWNlRGVmaW5pdGlvblByb3BzOiBhbnkgPSB7fTtcblxuICBpZiAoIWNsaWVudEZhcmdhdGVTZXJ2aWNlUHJvcHM/LmNsdXN0ZXIpIHtcbiAgICAvLyBDb25zdHJ1Y3QgRmFyZ2F0ZSBTZXJ2aWNlXG4gICAgY29uc3RydWN0RmFyZ2F0ZVNlcnZpY2VEZWZpbml0aW9uUHJvcHMuY2x1c3RlciA9IENyZWF0ZUNsdXN0ZXIoXG4gICAgICBzY29wZSxcbiAgICAgIGAke2lkfS1jbHVzdGVyYCxcbiAgICAgIGNvbnN0cnVjdFZwYyxcbiAgICAgIGNsaWVudENsdXN0ZXJQcm9wc1xuICAgICk7XG4gIH1cblxuICAvLyBTZXQgdXAgdGhlIEZhcmdhdGUgc2VydmljZVxuICBpZiAoIWNsaWVudENvbnRhaW5lckRlZmluaXRpb25Qcm9wcz8uaW1hZ2UpIHtcbiAgICBjb25zdHJ1Y3RDb250YWluZXJEZWZpbnRpb25Qcm9wcy5pbWFnZSA9IENyZWF0ZUltYWdlKFxuICAgICAgc2NvcGUsXG4gICAgICBpZCxcbiAgICAgIGVjclJlcG9zaXRvcnlBcm4sXG4gICAgICBlY3JJbWFnZVZlcnNpb25cbiAgICApO1xuICB9XG5cbiAgLy8gQ3JlYXRlIHRoZSBGYXJnYXRlIFNlcnZpY2VcbiAgbGV0IG5ld0NvbnRhaW5lckRlZmluaXRpb247XG4gIFtjb25zdHJ1Y3RGYXJnYXRlU2VydmljZURlZmluaXRpb25Qcm9wcy50YXNrRGVmaW5pdGlvbiwgbmV3Q29udGFpbmVyRGVmaW5pdGlvbl0gPSBDcmVhdGVUYXNrRGVmaW5pdGlvbihcbiAgICBzY29wZSxcbiAgICBpZCxcbiAgICBjbGllbnRGYXJnYXRlVGFza0RlZmluaXRpb25Qcm9wcyxcbiAgICBjbGllbnRDb250YWluZXJEZWZpbml0aW9uUHJvcHMsXG4gICAgY29uc3RydWN0Q29udGFpbmVyRGVmaW50aW9uUHJvcHNcbiAgKTtcblxuICBpZiAoIWNsaWVudEZhcmdhdGVTZXJ2aWNlUHJvcHM/LnZwY1N1Ym5ldHMpIHtcbiAgICBpZiAoY29uc3RydWN0VnBjLmlzb2xhdGVkU3VibmV0cy5sZW5ndGgpIHtcbiAgICAgIGNvbnN0cnVjdEZhcmdhdGVTZXJ2aWNlRGVmaW5pdGlvblByb3BzLnZwY1N1Ym5ldHMgPSB7XG4gICAgICAgIHN1Ym5ldHM6IGNvbnN0cnVjdFZwYy5pc29sYXRlZFN1Ym5ldHMsXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdHJ1Y3RGYXJnYXRlU2VydmljZURlZmluaXRpb25Qcm9wcy52cGNTdWJuZXRzID0ge1xuICAgICAgICBzdWJuZXRzOiBjb25zdHJ1Y3RWcGMucHJpdmF0ZVN1Ym5ldHMsXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIGxldCBkZWZhdWx0RmFyZ2F0ZVNlcnZpY2VQcm9wcztcblxuICBpZiAoIWNsaWVudEZhcmdhdGVTZXJ2aWNlUHJvcHM/LnNlY3VyaXR5R3JvdXBzKSB7XG4gICAgY29uc3Qgc2VydmljZVNlY3VyaXR5R3JvdXAgPSBuZXcgZWMyLlNlY3VyaXR5R3JvdXAoc2NvcGUsIGAke2lkfS1zZ2AsIHtcbiAgICAgIGFsbG93QWxsT3V0Ym91bmQ6IHRydWUsXG4gICAgICBkaXNhYmxlSW5saW5lUnVsZXM6IGZhbHNlLFxuICAgICAgdnBjOiBjb25zdHJ1Y3RWcGMsXG4gICAgICAvLyBXZSBhZGQgYSBkZXNjcmlwdGlvbiBoZXJlIHNvIHRoYXQgdGhpcyBTRyBjYW4gYmUgZWFzaWx5IGlkZW50aWZpZWQgaW4gdGVzdHNcbiAgICAgIGRlc2NyaXB0aW9uOiAnQ29uc3RydWN0IGNyZWF0ZWQgc2VjdXJpdHkgZ3JvdXAnXG4gICAgfSk7XG4gICAgZGVmYXVsdEZhcmdhdGVTZXJ2aWNlUHJvcHMgPSBvdmVycmlkZVByb3BzKGRlZmF1bHRzLkRlZmF1bHRGYXJnYXRlU2VydmljZVByb3BzKCksIHsgc2VjdXJpdHlHcm91cHM6IFsgc2VydmljZVNlY3VyaXR5R3JvdXAgXX0pO1xuICAgIGRlZmF1bHRzLmFkZENmblN1cHByZXNzUnVsZXMoc2VydmljZVNlY3VyaXR5R3JvdXAsIFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdXNScsXG4gICAgICAgIHJlYXNvbjogJ0VncmVzcyBvZiAwLjAuMC4wLzAgaXMgZGVmYXVsdCBhbmQgZ2VuZXJhbGx5IGNvbnNpZGVyZWQgT0snLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdXNDAnLFxuICAgICAgICByZWFzb246ICdFZ3Jlc3MgSVBQcm90b2NvbCBvZiAtMSBpcyBkZWZhdWx0IGFuZCBnZW5lcmFsbHkgY29uc2lkZXJlZCBPSycsXG4gICAgICB9XG4gICAgXSk7XG4gIH0gZWxzZSB7XG4gICAgZGVmYXVsdEZhcmdhdGVTZXJ2aWNlUHJvcHMgPSBkZWZhdWx0cy5EZWZhdWx0RmFyZ2F0ZVNlcnZpY2VQcm9wcygpO1xuICB9XG5cbiAgY29uc3QgZmFyZ2F0ZVNlcnZpY2VQcm9wcyA9IGRlZmF1bHRzLmNvbnNvbGlkYXRlUHJvcHMoXG4gICAgZGVmYXVsdEZhcmdhdGVTZXJ2aWNlUHJvcHMsXG4gICAgY2xpZW50RmFyZ2F0ZVNlcnZpY2VQcm9wcyxcbiAgICBjb25zdHJ1Y3RGYXJnYXRlU2VydmljZURlZmluaXRpb25Qcm9wc1xuICApO1xuXG4gIGNvbnN0IG5ld1NlcnZpY2UgPSBuZXcgZWNzLkZhcmdhdGVTZXJ2aWNlKFxuICAgIHNjb3BlLFxuICAgIGAke2lkfS1zZXJ2aWNlYCxcbiAgICBmYXJnYXRlU2VydmljZVByb3BzLFxuICApO1xuXG4gIHJldHVybiBbbmV3U2VydmljZSwgbmV3Q29udGFpbmVyRGVmaW5pdGlvbl07XG59XG5cbmZ1bmN0aW9uIENyZWF0ZUNsdXN0ZXIoXG4gIHNjb3BlOiBDb25zdHJ1Y3QsXG4gIGlkOiBzdHJpbmcsXG4gIGNvbnN0cnVjdFZwYzogZWMyLklWcGMsXG4gIGNsaWVudENsdXN0ZXJQcm9wcz86IGVjcy5DbHVzdGVyUHJvcHNcbik6IGVjcy5JQ2x1c3RlciB7XG4gIGNvbnN0IGNvbnN0cnVjdFByb3BzID0geyB2cGM6IGNvbnN0cnVjdFZwYyB9O1xuICByZXR1cm4gbmV3IGVjcy5DbHVzdGVyKFxuICAgIHNjb3BlLFxuICAgIGlkLFxuICAgIGRlZmF1bHRzLmNvbnNvbGlkYXRlUHJvcHMoXG4gICAgICBkZWZhdWx0cy5EZWZhdWx0Q2x1c3RlclByb3BzKCksXG4gICAgICBjbGllbnRDbHVzdGVyUHJvcHMsXG4gICAgICBjb25zdHJ1Y3RQcm9wc1xuICAgIClcbiAgKTtcbn1cblxuZnVuY3Rpb24gQ3JlYXRlSW1hZ2UoXG4gIHNjb3BlOiBDb25zdHJ1Y3QsXG4gIGlkOiBzdHJpbmcsXG4gIHJlcG9zaXRvcnlBcm4/OiBzdHJpbmcsXG4gIGltYWdlVmVyc2lvbj86IHN0cmluZ1xuKTogZWNzLkNvbnRhaW5lckltYWdlIHtcbiAgaWYgKHJlcG9zaXRvcnlBcm4pIHtcbiAgICByZXR1cm4gZWNzLkNvbnRhaW5lckltYWdlLmZyb21FY3JSZXBvc2l0b3J5KFxuICAgICAgZWNyLlJlcG9zaXRvcnkuZnJvbVJlcG9zaXRvcnlBcm4oc2NvcGUsIGAke2lkfS1jb250YWluZXJgLCByZXBvc2l0b3J5QXJuKSxcbiAgICAgIGltYWdlVmVyc2lvbiB8fCBcImxhdGVzdFwiXG4gICAgKTtcbiAgfSBlbHNlIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJOb3QgSW1wbGVtZW50ZWQgLSBpbWFnZSB3aXRob3V0IHJlcG8gbmFtZSBhbmQgdmVyc2lvblwiKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBDcmVhdGVUYXNrRGVmaW5pdGlvbihcbiAgc2NvcGU6IENvbnN0cnVjdCxcbiAgaWQ6IHN0cmluZyxcbiAgY2xpZW50RmFyZ2F0ZVRhc2tEZWZpbml0aW9uUHJvcHM/OiBlY3MuRmFyZ2F0ZVRhc2tEZWZpbml0aW9uUHJvcHMsXG4gIGNsaWVudENvbnRhaW5lckRlZmluaXRpb25Qcm9wcz86IGVjcy5Db250YWluZXJEZWZpbml0aW9uUHJvcHMsXG4gIGNvbnN0cnVjdENvbnRhaW5lckRlZmluaXRpb25Qcm9wcz86IGVjcy5Db250YWluZXJEZWZpbml0aW9uUHJvcHNcbik6IFtlY3MuRmFyZ2F0ZVRhc2tEZWZpbml0aW9uLCBlY3MuQ29udGFpbmVyRGVmaW5pdGlvbl0ge1xuICBjb25zdCB0YXNrRGVmaW5pdGlvblByb3BzID0gZGVmYXVsdHMuY29uc29saWRhdGVQcm9wcyhcbiAgICBkZWZhdWx0cy5EZWZhdWx0RmFyZ2F0ZVRhc2tEZWZpbml0aW9uUHJvcHMoKSxcbiAgICBjbGllbnRGYXJnYXRlVGFza0RlZmluaXRpb25Qcm9wc1xuICApO1xuICBjb25zdCB0YXNrRGVmaW5pdGlvbiA9IG5ldyBlY3MuRmFyZ2F0ZVRhc2tEZWZpbml0aW9uKFxuICAgIHNjb3BlLFxuICAgIGAke2lkfS10YXNrZGVmYCxcbiAgICB0YXNrRGVmaW5pdGlvblByb3BzXG4gICk7XG5cbiAgY29uc3QgZGVmYXVsdENvbnRhaW5lckRlZmluaXRpb25Qcm9wcyA9IGRlZmF1bHRzLmNvbnNvbGlkYXRlUHJvcHMoZGVmYXVsdHMuRGVmYXVsdENvbnRhaW5lckRlZmluaXRpb25Qcm9wcygpLCB7XG4gICAgY29udGFpbmVyTmFtZTogYCR7aWR9LWNvbnRhaW5lcmAsXG4gIH0pO1xuICBjb25zdCBjb250YWluZXJEZWZpbml0aW9uUHJvcHMgPSBkZWZhdWx0cy5jb25zb2xpZGF0ZVByb3BzKFxuICAgIGRlZmF1bHRDb250YWluZXJEZWZpbml0aW9uUHJvcHMsXG4gICAgY2xpZW50Q29udGFpbmVyRGVmaW5pdGlvblByb3BzLFxuICAgIGNvbnN0cnVjdENvbnRhaW5lckRlZmluaXRpb25Qcm9wcyxcbiAgKTtcbiAgY29uc3QgY29udGFpbmVyRGVmaW5pdGlvbiA9IHRhc2tEZWZpbml0aW9uLmFkZENvbnRhaW5lcihgJHtpZH0tY29udGFpbmVyYCwgY29udGFpbmVyRGVmaW5pdGlvblByb3BzKTtcbiAgcmV0dXJuIFt0YXNrRGVmaW5pdGlvbiwgY29udGFpbmVyRGVmaW5pdGlvbl07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBDaGVja0ZhcmdhdGVQcm9wcyhwcm9wczogYW55KSB7XG4gIGxldCBlcnJvck1lc3NhZ2VzID0gXCJcIjtcbiAgbGV0IGVycm9yRm91bmQgPSBmYWxzZTtcblxuICBpZiAoXG4gICAgcHJvcHMuZXhpc3RpbmdGYXJnYXRlU2VydmljZU9iamVjdCAmJlxuICAgIChwcm9wcy5leGlzdGluZ0ltYWdlT2JqZWN0IHx8XG4gICAgICBwcm9wcy5lY3JJbWFnZVZlcnNpb24gfHxcbiAgICAgIHByb3BzLmNvbnRhaW5lckRlZmluaXRpb25Qcm9wcyB8fFxuICAgICAgcHJvcHMuZmFyZ2F0ZVRhc2tEZWZpbml0aW9uUHJvcHMgfHxcbiAgICAgIHByb3BzLmVjclJlcG9zaXRvcnlBcm4gfHxcbiAgICAgIHByb3BzLmZhcmdhdGVTZXJ2aWNlUHJvcHMgfHxcbiAgICAgIHByb3BzLmNsdXN0ZXJQcm9wcylcbiAgKSB7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gICAgZXJyb3JNZXNzYWdlcyArPVxuICAgICAgXCJJZiB5b3UgcHJvdmlkZSBhbiBleGlzdGluZ0ZhcmdhdGVTZXJ2aWNlT2JqZWN0LCB5b3UgY2Fubm90IHByb3ZpZGUgYW55IHByb3BzIGRlZmluaW5nIGEgbmV3IHNlcnZpY2VcXG5cIjtcbiAgfVxuXG4gIGlmIChcbiAgICBwcm9wcy5leGlzdGluZ0ltYWdlT2JqZWN0ICYmXG4gICAgKHByb3BzLmVjckltYWdlVmVyc2lvbiB8fCBwcm9wcy5lY3JSZXBvc2l0b3J5QXJuKVxuICApIHtcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgICBlcnJvck1lc3NhZ2VzICs9XG4gICAgICBcIklmIHlvdSBwcm92aWRlIGFuIGV4aXN0aW5nSW1hZ2VPYmplY3QgdGhlbiB5b3UgY2Fubm90IHByb3ZpZGUgYW4gZWNyUmVwb3NpdG9yeUFybiBub3IgZWNySW1hZ2VWZXJzaW9uXFxuXCI7XG4gIH1cblxuICAvLyBDb25maXJtIG5vIG5ldHdvcmsgaW5mb3JtYXRpb24gaW4gVGFyZ2V0IEdyb3VwIFByb3BzXG4gIGlmIChwcm9wcy50YXJnZXRHcm91cFByb3BzPy52cGMpIHtcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgICBlcnJvck1lc3NhZ2VzICs9XG4gICAgICBcIlByb3ZpZGUgYWxsIFZQQyBpbmZvIGF0IENvbnN0cnVjdCBsZXZlbCwgbm90IHdpdGhpbiB0YXJnZXRHcm91cFByb3BzXFxuXCI7XG4gIH1cblxuICBpZiAocHJvcHMuZmFyZ2F0ZVNlcnZpY2VQcm9wcz8udGFza0RlZmluaXRpb24pIHtcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgICBlcnJvck1lc3NhZ2VzICs9XG4gICAgICBcIlRoZSBjb25zdHJ1Y3QgY2Fubm90IGFjY2VwdCBhbiBleGlzdGluZyB0YXNrIGRlZmluaXRpb24gaW4gZmFyZ2F0ZVNlcnZpY2VQcm9wc1xcblwiO1xuICB9XG5cbiAgaWYgKHByb3BzLmZhcmdhdGVTZXJ2aWNlUHJvcHM/LmNsdXN0ZXIgJiYgcHJvcHMuY2x1c3RlclByb3BzKSB7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gICAgZXJyb3JNZXNzYWdlcyArPVxuICAgICAgXCJJZiB5b3UgcHJvdmlkZSBhIGNsdXN0ZXIgaW4gZmFyZ2F0ZVNlcnZpY2VQcm9wcyB0aGVuIHlvdSBjYW5ub3QgcHJvdmlkZSBjbHVzdGVyUHJvcHNcXG5cIjtcbiAgfVxuXG4gIGlmIChwcm9wcy5jbHVzdGVyUHJvcHM/LnZwYykge1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICAgIGVycm9yTWVzc2FnZXMgKz1cbiAgICAgIFwiQWxsIHNlcnZpY2VzIGluIHRoZSBjb25zdHJ1Y3QgdXNlIHRoZSBjb25zdHJ1Y3QgVlBDLCB5b3UgY2Fubm90IHNwZWNpZnkgYSBWUEMgaW4gY2x1c3RlclByb3BzXFxuXCI7XG4gIH1cblxuICBpZiAoXG4gICAgKHByb3BzLmV4aXN0aW5nRmFyZ2F0ZVNlcnZpY2VPYmplY3QgfHxcbiAgICAgIHByb3BzLmV4aXN0aW5nQ29udGFpbmVyRGVmaW5pdGlvbk9iamVjdCkgJiZcbiAgICAoIXByb3BzLmV4aXN0aW5nRmFyZ2F0ZVNlcnZpY2VPYmplY3QgfHxcbiAgICAgICFwcm9wcy5leGlzdGluZ0NvbnRhaW5lckRlZmluaXRpb25PYmplY3QgfHxcbiAgICAgICFwcm9wcy5leGlzdGluZ1ZwYylcbiAgKSB7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gICAgZXJyb3JNZXNzYWdlcyArPVxuICAgICAgXCJJZiBhbiBleGlzdGluZyBTZXJ2aWNlIGlzIGluZGljYXRlZCBieSBzdXBwbHlpbmcgZWl0aGVyIGV4aXN0aW5nRmFyZ2F0ZVNlcnZpY2VPYmplY3Qgb3IgZXhpc3RpbmdDb250YWluZXJEZWZpbml0aW9uT2JqZWN0LCB0aGVuIGV4aXN0aW5nRmFyZ2F0ZVNlcnZpY2VPYmplY3QsIGV4aXN0aW5nQ29udGFpbmVyRGVmaW5pdGlvbk9iamVjdCwgYW5kIGV4aXN0aW5nVnBjIG11c3QgYWxsIGJlIHByb3ZpZGVkXFxuXCI7XG4gIH1cblxuICBpZiAoZXJyb3JGb3VuZCkge1xuICAgIHRocm93IG5ldyBFcnJvcihlcnJvck1lc3NhZ2VzKTtcbiAgfVxufVxuIl19
|
|
157
|
+
function getServiceVpcSecurityGroupIds(service) {
|
|
158
|
+
const securityGroupIds = [];
|
|
159
|
+
service.connections.securityGroups.forEach(element => securityGroupIds.push(element.securityGroupId));
|
|
160
|
+
return securityGroupIds;
|
|
161
|
+
}
|
|
162
|
+
exports.getServiceVpcSecurityGroupIds = getServiceVpcSecurityGroupIds;
|
|
163
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFyZ2F0ZS1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJmYXJnYXRlLWhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7O0dBV0c7OztBQUdILDJDQUEyQztBQUMzQywyQ0FBMkM7QUFDM0MsMkNBQTJDO0FBQzNDLCtCQUErQjtBQUMvQiwwQkFBbUM7QUFFbkMsU0FBZ0Isb0JBQW9CLENBQ2xDLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixZQUFzQixFQUN0QixrQkFBcUMsRUFDckMsZ0JBQXlCLEVBQ3pCLGVBQXdCLEVBQ3hCLGdDQUF1RSxFQUN2RSw4QkFBbUUsRUFDbkUseUJBQXlEO0lBRXpELFFBQVEsQ0FBQyxxQkFBcUIsQ0FDNUIsS0FBSyxFQUNMLFlBQVksRUFDWixRQUFRLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUN0QyxDQUFDO0lBQ0YsUUFBUSxDQUFDLHFCQUFxQixDQUM1QixLQUFLLEVBQ0wsWUFBWSxFQUNaLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQ3RDLENBQUM7SUFDRixRQUFRLENBQUMscUJBQXFCLENBQzVCLEtBQUssRUFDTCxZQUFZLEVBQ1osUUFBUSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsQ0FDakMsQ0FBQztJQUVGLE1BQU0sZ0NBQWdDLEdBQVEsRUFBRSxDQUFDO0lBQ2pELE1BQU0sc0NBQXNDLEdBQVEsRUFBRSxDQUFDO0lBRXZELElBQUksQ0FBQyx5QkFBeUIsRUFBRSxPQUFPLEVBQUU7UUFDdkMsNEJBQTRCO1FBQzVCLHNDQUFzQyxDQUFDLE9BQU8sR0FBRyxhQUFhLENBQzVELEtBQUssRUFDTCxHQUFHLEVBQUUsVUFBVSxFQUNmLFlBQVksRUFDWixrQkFBa0IsQ0FDbkIsQ0FBQztLQUNIO0lBRUQsNkJBQTZCO0lBQzdCLElBQUksQ0FBQyw4QkFBOEIsRUFBRSxLQUFLLEVBQUU7UUFDMUMsZ0NBQWdDLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FDbEQsS0FBSyxF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TztJQUVELElBQUksVUFBVSxFQUFFO1FBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztLQUNoQztBQUNILENBQUM7QUFwRUQsOENBb0VDO0FBRUQsU0FBZ0IsNkJBQTZCLENBQUMsT0FBMkI7SUFDdkUsTUFBTSxnQkFBZ0IsR0FBYSxFQUFFLENBQUM7SUFFdEMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO0lBRXRHLE9BQU8sZ0JBQWdCLENBQUM7QUFDMUIsQ0FBQztBQU5ELHNFQU1DIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiAgQ29weXJpZ2h0IDIwMjIgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKS4gWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuICogIHdpdGggdGhlIExpY2Vuc2UuIEEgY29weSBvZiB0aGUgTGljZW5zZSBpcyBsb2NhdGVkIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiAgb3IgaW4gdGhlICdsaWNlbnNlJyBmaWxlIGFjY29tcGFueWluZyB0aGlzIGZpbGUuIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVNcbiAqICBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9uc1xuICogIGFuZCBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0ICogYXMgZWMyIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWMyXCI7XG5pbXBvcnQgKiBhcyBlY3MgZnJvbSBcImF3cy1jZGstbGliL2F3cy1lY3NcIjtcbmltcG9ydCAqIGFzIGVjciBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjclwiO1xuaW1wb3J0ICogYXMgZGVmYXVsdHMgZnJvbSBcIi4uXCI7XG5pbXBvcnQgeyBvdmVycmlkZVByb3BzIH0gZnJvbSBcIi4uXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBDcmVhdGVGYXJnYXRlU2VydmljZShcbiAgc2NvcGU6IENvbnN0cnVjdCxcbiAgaWQ6IHN0cmluZyxcbiAgY29uc3RydWN0VnBjOiBlYzIuSVZwYyxcbiAgY2xpZW50Q2x1c3RlclByb3BzPzogZWNzLkNsdXN0ZXJQcm9wcyxcbiAgZWNyUmVwb3NpdG9yeUFybj86IHN0cmluZyxcbiAgZWNySW1hZ2VWZXJzaW9uPzogc3RyaW5nLFxuICBjbGllbnRGYXJnYXRlVGFza0RlZmluaXRpb25Qcm9wcz86IGVjcy5GYXJnYXRlVGFza0RlZmluaXRpb25Qcm9wcyB8IGFueSxcbiAgY2xpZW50Q29udGFpbmVyRGVmaW5pdGlvblByb3BzPzogZWNzLkNvbnRhaW5lckRlZmluaXRpb25Qcm9wcyB8IGFueSxcbiAgY2xpZW50RmFyZ2F0ZVNlcnZpY2VQcm9wcz86IGVjcy5GYXJnYXRlU2VydmljZVByb3BzIHwgYW55XG4pOiBbZWNzLkZhcmdhdGVTZXJ2aWNlLCBlY3MuQ29udGFpbmVyRGVmaW5pdGlvbl0ge1xuICBkZWZhdWx0cy5BZGRBd3NTZXJ2aWNlRW5kcG9pbnQoXG4gICAgc2NvcGUsXG4gICAgY29uc3RydWN0VnBjLFxuICAgIGRlZmF1bHRzLlNlcnZpY2VFbmRwb2ludFR5cGVzLkVDUl9BUElcbiAgKTtcbiAgZGVmYXVsdHMuQWRkQXdzU2VydmljZUVuZHBvaW50KFxuICAgIHNjb3BlLFxuICAgIGNvbnN0cnVjdFZwYyxcbiAgICBkZWZhdWx0cy5TZXJ2aWNlRW5kcG9pbnRUeXBlcy5FQ1JfREtSXG4gICk7XG4gIGRlZmF1bHRzLkFkZEF3c1NlcnZpY2VFbmRwb2ludChcbiAgICBzY29wZSxcbiAgICBjb25zdHJ1Y3RWcGMsXG4gICAgZGVmYXVsdHMuU2VydmljZUVuZHBvaW50VHlwZXMuUzNcbiAgKTtcblxuICBjb25zdCBjb25zdHJ1Y3RDb250YWluZXJEZWZpbnRpb25Qcm9wczogYW55ID0ge307XG4gIGNvbnN0IGNvbnN0cnVjdEZhcmdhdGVTZXJ2aWNlRGVmaW5pdGlvblByb3BzOiBhbnkgPSB7fTtcblxuICBpZiAoIWNsaWVudEZhcmdhdGVTZXJ2aWNlUHJvcHM/LmNsdXN0ZXIpIHtcbiAgICAvLyBDb25zdHJ1Y3QgRmFyZ2F0ZSBTZXJ2aWNlXG4gICAgY29uc3RydWN0RmFyZ2F0ZVNlcnZpY2VEZWZpbml0aW9uUHJvcHMuY2x1c3RlciA9IENyZWF0ZUNsdXN0ZXIoXG4gICAgICBzY29wZSxcbiAgICAgIGAke2lkfS1jbHVzdGVyYCxcbiAgICAgIGNvbnN0cnVjdFZwYyxcbiAgICAgIGNsaWVudENsdXN0ZXJQcm9wc1xuICAgICk7XG4gIH1cblxuICAvLyBTZXQgdXAgdGhlIEZhcmdhdGUgc2VydmljZVxuICBpZiAoIWNsaWVudENvbnRhaW5lckRlZmluaXRpb25Qcm9wcz8uaW1hZ2UpIHtcbiAgICBjb25zdHJ1Y3RDb250YWluZXJEZWZpbnRpb25Qcm9wcy5pbWFnZSA9IENyZWF0ZUltYWdlKFxuICAgICAgc2NvcGUsXG4gICAgICBpZCxcbiAgICAgIGVjclJlcG9zaXRvcnlBcm4sXG4gICAgICBlY3JJbWFnZVZlcnNpb25cbiAgICApO1xuICB9XG5cbiAgLy8gQ3JlYXRlIHRoZSBGYXJnYXRlIFNlcnZpY2VcbiAgbGV0IG5ld0NvbnRhaW5lckRlZmluaXRpb247XG4gIFtjb25zdHJ1Y3RGYXJnYXRlU2VydmljZURlZmluaXRpb25Qcm9wcy50YXNrRGVmaW5pdGlvbiwgbmV3Q29udGFpbmVyRGVmaW5pdGlvbl0gPSBDcmVhdGVUYXNrRGVmaW5pdGlvbihcbiAgICBzY29wZSxcbiAgICBpZCxcbiAgICBjbGllbnRGYXJnYXRlVGFza0RlZmluaXRpb25Qcm9wcyxcbiAgICBjbGllbnRDb250YWluZXJEZWZpbml0aW9uUHJvcHMsXG4gICAgY29uc3RydWN0Q29udGFpbmVyRGVmaW50aW9uUHJvcHNcbiAgKTtcblxuICBpZiAoIWNsaWVudEZhcmdhdGVTZXJ2aWNlUHJvcHM/LnZwY1N1Ym5ldHMpIHtcbiAgICBpZiAoY29uc3RydWN0VnBjLmlzb2xhdGVkU3VibmV0cy5sZW5ndGgpIHtcbiAgICAgIGNvbnN0cnVjdEZhcmdhdGVTZXJ2aWNlRGVmaW5pdGlvblByb3BzLnZwY1N1Ym5ldHMgPSB7XG4gICAgICAgIHN1Ym5ldHM6IGNvbnN0cnVjdFZwYy5pc29sYXRlZFN1Ym5ldHMsXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdHJ1Y3RGYXJnYXRlU2VydmljZURlZmluaXRpb25Qcm9wcy52cGNTdWJuZXRzID0ge1xuICAgICAgICBzdWJuZXRzOiBjb25zdHJ1Y3RWcGMucHJpdmF0ZVN1Ym5ldHMsXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIGxldCBkZWZhdWx0RmFyZ2F0ZVNlcnZpY2VQcm9wcztcblxuICBpZiAoIWNsaWVudEZhcmdhdGVTZXJ2aWNlUHJvcHM/LnNlY3VyaXR5R3JvdXBzKSB7XG4gICAgY29uc3Qgc2VydmljZVNlY3VyaXR5R3JvdXAgPSBuZXcgZWMyLlNlY3VyaXR5R3JvdXAoc2NvcGUsIGAke2lkfS1zZ2AsIHtcbiAgICAgIGFsbG93QWxsT3V0Ym91bmQ6IHRydWUsXG4gICAgICBkaXNhYmxlSW5saW5lUnVsZXM6IGZhbHNlLFxuICAgICAgdnBjOiBjb25zdHJ1Y3RWcGMsXG4gICAgICAvLyBXZSBhZGQgYSBkZXNjcmlwdGlvbiBoZXJlIHNvIHRoYXQgdGhpcyBTRyBjYW4gYmUgZWFzaWx5IGlkZW50aWZpZWQgaW4gdGVzdHNcbiAgICAgIGRlc2NyaXB0aW9uOiAnQ29uc3RydWN0IGNyZWF0ZWQgc2VjdXJpdHkgZ3JvdXAnXG4gICAgfSk7XG4gICAgZGVmYXVsdEZhcmdhdGVTZXJ2aWNlUHJvcHMgPSBvdmVycmlkZVByb3BzKGRlZmF1bHRzLkRlZmF1bHRGYXJnYXRlU2VydmljZVByb3BzKCksIHsgc2VjdXJpdHlHcm91cHM6IFsgc2VydmljZVNlY3VyaXR5R3JvdXAgXX0pO1xuICAgIGRlZmF1bHRzLmFkZENmblN1cHByZXNzUnVsZXMoc2VydmljZVNlY3VyaXR5R3JvdXAsIFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdXNScsXG4gICAgICAgIHJlYXNvbjogJ0VncmVzcyBvZiAwLjAuMC4wLzAgaXMgZGVmYXVsdCBhbmQgZ2VuZXJhbGx5IGNvbnNpZGVyZWQgT0snLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdXNDAnLFxuICAgICAgICByZWFzb246ICdFZ3Jlc3MgSVBQcm90b2NvbCBvZiAtMSBpcyBkZWZhdWx0IGFuZCBnZW5lcmFsbHkgY29uc2lkZXJlZCBPSycsXG4gICAgICB9XG4gICAgXSk7XG4gIH0gZWxzZSB7XG4gICAgZGVmYXVsdEZhcmdhdGVTZXJ2aWNlUHJvcHMgPSBkZWZhdWx0cy5EZWZhdWx0RmFyZ2F0ZVNlcnZpY2VQcm9wcygpO1xuICB9XG5cbiAgY29uc3QgZmFyZ2F0ZVNlcnZpY2VQcm9wcyA9IGRlZmF1bHRzLmNvbnNvbGlkYXRlUHJvcHMoXG4gICAgZGVmYXVsdEZhcmdhdGVTZXJ2aWNlUHJvcHMsXG4gICAgY2xpZW50RmFyZ2F0ZVNlcnZpY2VQcm9wcyxcbiAgICBjb25zdHJ1Y3RGYXJnYXRlU2VydmljZURlZmluaXRpb25Qcm9wc1xuICApO1xuXG4gIGNvbnN0IG5ld1NlcnZpY2UgPSBuZXcgZWNzLkZhcmdhdGVTZXJ2aWNlKFxuICAgIHNjb3BlLFxuICAgIGAke2lkfS1zZXJ2aWNlYCxcbiAgICBmYXJnYXRlU2VydmljZVByb3BzLFxuICApO1xuXG4gIHJldHVybiBbbmV3U2VydmljZSwgbmV3Q29udGFpbmVyRGVmaW5pdGlvbl07XG59XG5cbmZ1bmN0aW9uIENyZWF0ZUNsdXN0ZXIoXG4gIHNjb3BlOiBDb25zdHJ1Y3QsXG4gIGlkOiBzdHJpbmcsXG4gIGNvbnN0cnVjdFZwYzogZWMyLklWcGMsXG4gIGNsaWVudENsdXN0ZXJQcm9wcz86IGVjcy5DbHVzdGVyUHJvcHNcbik6IGVjcy5JQ2x1c3RlciB7XG4gIGNvbnN0IGNvbnN0cnVjdFByb3BzID0geyB2cGM6IGNvbnN0cnVjdFZwYyB9O1xuICByZXR1cm4gbmV3IGVjcy5DbHVzdGVyKFxuICAgIHNjb3BlLFxuICAgIGlkLFxuICAgIGRlZmF1bHRzLmNvbnNvbGlkYXRlUHJvcHMoXG4gICAgICBkZWZhdWx0cy5EZWZhdWx0Q2x1c3RlclByb3BzKCksXG4gICAgICBjbGllbnRDbHVzdGVyUHJvcHMsXG4gICAgICBjb25zdHJ1Y3RQcm9wc1xuICAgIClcbiAgKTtcbn1cblxuZnVuY3Rpb24gQ3JlYXRlSW1hZ2UoXG4gIHNjb3BlOiBDb25zdHJ1Y3QsXG4gIGlkOiBzdHJpbmcsXG4gIHJlcG9zaXRvcnlBcm4/OiBzdHJpbmcsXG4gIGltYWdlVmVyc2lvbj86IHN0cmluZ1xuKTogZWNzLkNvbnRhaW5lckltYWdlIHtcbiAgaWYgKHJlcG9zaXRvcnlBcm4pIHtcbiAgICByZXR1cm4gZWNzLkNvbnRhaW5lckltYWdlLmZyb21FY3JSZXBvc2l0b3J5KFxuICAgICAgZWNyLlJlcG9zaXRvcnkuZnJvbVJlcG9zaXRvcnlBcm4oc2NvcGUsIGAke2lkfS1jb250YWluZXJgLCByZXBvc2l0b3J5QXJuKSxcbiAgICAgIGltYWdlVmVyc2lvbiB8fCBcImxhdGVzdFwiXG4gICAgKTtcbiAgfSBlbHNlIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJOb3QgSW1wbGVtZW50ZWQgLSBpbWFnZSB3aXRob3V0IHJlcG8gbmFtZSBhbmQgdmVyc2lvblwiKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBDcmVhdGVUYXNrRGVmaW5pdGlvbihcbiAgc2NvcGU6IENvbnN0cnVjdCxcbiAgaWQ6IHN0cmluZyxcbiAgY2xpZW50RmFyZ2F0ZVRhc2tEZWZpbml0aW9uUHJvcHM/OiBlY3MuRmFyZ2F0ZVRhc2tEZWZpbml0aW9uUHJvcHMsXG4gIGNsaWVudENvbnRhaW5lckRlZmluaXRpb25Qcm9wcz86IGVjcy5Db250YWluZXJEZWZpbml0aW9uUHJvcHMsXG4gIGNvbnN0cnVjdENvbnRhaW5lckRlZmluaXRpb25Qcm9wcz86IGVjcy5Db250YWluZXJEZWZpbml0aW9uUHJvcHNcbik6IFtlY3MuRmFyZ2F0ZVRhc2tEZWZpbml0aW9uLCBlY3MuQ29udGFpbmVyRGVmaW5pdGlvbl0ge1xuICBjb25zdCB0YXNrRGVmaW5pdGlvblByb3BzID0gZGVmYXVsdHMuY29uc29saWRhdGVQcm9wcyhcbiAgICBkZWZhdWx0cy5EZWZhdWx0RmFyZ2F0ZVRhc2tEZWZpbml0aW9uUHJvcHMoKSxcbiAgICBjbGllbnRGYXJnYXRlVGFza0RlZmluaXRpb25Qcm9wc1xuICApO1xuICBjb25zdCB0YXNrRGVmaW5pdGlvbiA9IG5ldyBlY3MuRmFyZ2F0ZVRhc2tEZWZpbml0aW9uKFxuICAgIHNjb3BlLFxuICAgIGAke2lkfS10YXNrZGVmYCxcbiAgICB0YXNrRGVmaW5pdGlvblByb3BzXG4gICk7XG5cbiAgY29uc3QgZGVmYXVsdENvbnRhaW5lckRlZmluaXRpb25Qcm9wcyA9IGRlZmF1bHRzLmNvbnNvbGlkYXRlUHJvcHMoZGVmYXVsdHMuRGVmYXVsdENvbnRhaW5lckRlZmluaXRpb25Qcm9wcygpLCB7XG4gICAgY29udGFpbmVyTmFtZTogYCR7aWR9LWNvbnRhaW5lcmAsXG4gIH0pO1xuICBjb25zdCBjb250YWluZXJEZWZpbml0aW9uUHJvcHMgPSBkZWZhdWx0cy5jb25zb2xpZGF0ZVByb3BzKFxuICAgIGRlZmF1bHRDb250YWluZXJEZWZpbml0aW9uUHJvcHMsXG4gICAgY2xpZW50Q29udGFpbmVyRGVmaW5pdGlvblByb3BzLFxuICAgIGNvbnN0cnVjdENvbnRhaW5lckRlZmluaXRpb25Qcm9wcyxcbiAgKTtcbiAgY29uc3QgY29udGFpbmVyRGVmaW5pdGlvbiA9IHRhc2tEZWZpbml0aW9uLmFkZENvbnRhaW5lcihgJHtpZH0tY29udGFpbmVyYCwgY29udGFpbmVyRGVmaW5pdGlvblByb3BzKTtcbiAgcmV0dXJuIFt0YXNrRGVmaW5pdGlvbiwgY29udGFpbmVyRGVmaW5pdGlvbl07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBDaGVja0ZhcmdhdGVQcm9wcyhwcm9wczogYW55KSB7XG4gIGxldCBlcnJvck1lc3NhZ2VzID0gXCJcIjtcbiAgbGV0IGVycm9yRm91bmQgPSBmYWxzZTtcblxuICBpZiAoXG4gICAgcHJvcHMuZXhpc3RpbmdGYXJnYXRlU2VydmljZU9iamVjdCAmJlxuICAgIChwcm9wcy5leGlzdGluZ0ltYWdlT2JqZWN0IHx8XG4gICAgICBwcm9wcy5lY3JJbWFnZVZlcnNpb24gfHxcbiAgICAgIHByb3BzLmNvbnRhaW5lckRlZmluaXRpb25Qcm9wcyB8fFxuICAgICAgcHJvcHMuZmFyZ2F0ZVRhc2tEZWZpbml0aW9uUHJvcHMgfHxcbiAgICAgIHByb3BzLmVjclJlcG9zaXRvcnlBcm4gfHxcbiAgICAgIHByb3BzLmZhcmdhdGVTZXJ2aWNlUHJvcHMgfHxcbiAgICAgIHByb3BzLmNsdXN0ZXJQcm9wcylcbiAgKSB7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gICAgZXJyb3JNZXNzYWdlcyArPVxuICAgICAgXCJJZiB5b3UgcHJvdmlkZSBhbiBleGlzdGluZ0ZhcmdhdGVTZXJ2aWNlT2JqZWN0LCB5b3UgY2Fubm90IHByb3ZpZGUgYW55IHByb3BzIGRlZmluaW5nIGEgbmV3IHNlcnZpY2VcXG5cIjtcbiAgfVxuXG4gIGlmIChcbiAgICBwcm9wcy5leGlzdGluZ0ltYWdlT2JqZWN0ICYmXG4gICAgKHByb3BzLmVjckltYWdlVmVyc2lvbiB8fCBwcm9wcy5lY3JSZXBvc2l0b3J5QXJuKVxuICApIHtcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgICBlcnJvck1lc3NhZ2VzICs9XG4gICAgICBcIklmIHlvdSBwcm92aWRlIGFuIGV4aXN0aW5nSW1hZ2VPYmplY3QgdGhlbiB5b3UgY2Fubm90IHByb3ZpZGUgYW4gZWNyUmVwb3NpdG9yeUFybiBub3IgZWNySW1hZ2VWZXJzaW9uXFxuXCI7XG4gIH1cblxuICAvLyBDb25maXJtIG5vIG5ldHdvcmsgaW5mb3JtYXRpb24gaW4gVGFyZ2V0IEdyb3VwIFByb3BzXG4gIGlmIChwcm9wcy50YXJnZXRHcm91cFByb3BzPy52cGMpIHtcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgICBlcnJvck1lc3NhZ2VzICs9XG4gICAgICBcIlByb3ZpZGUgYWxsIFZQQyBpbmZvIGF0IENvbnN0cnVjdCBsZXZlbCwgbm90IHdpdGhpbiB0YXJnZXRHcm91cFByb3BzXFxuXCI7XG4gIH1cblxuICBpZiAocHJvcHMuZmFyZ2F0ZVNlcnZpY2VQcm9wcz8udGFza0RlZmluaXRpb24pIHtcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgICBlcnJvck1lc3NhZ2VzICs9XG4gICAgICBcIlRoZSBjb25zdHJ1Y3QgY2Fubm90IGFjY2VwdCBhbiBleGlzdGluZyB0YXNrIGRlZmluaXRpb24gaW4gZmFyZ2F0ZVNlcnZpY2VQcm9wc1xcblwiO1xuICB9XG5cbiAgaWYgKHByb3BzLmZhcmdhdGVTZXJ2aWNlUHJvcHM/LmNsdXN0ZXIgJiYgcHJvcHMuY2x1c3RlclByb3BzKSB7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gICAgZXJyb3JNZXNzYWdlcyArPVxuICAgICAgXCJJZiB5b3UgcHJvdmlkZSBhIGNsdXN0ZXIgaW4gZmFyZ2F0ZVNlcnZpY2VQcm9wcyB0aGVuIHlvdSBjYW5ub3QgcHJvdmlkZSBjbHVzdGVyUHJvcHNcXG5cIjtcbiAgfVxuXG4gIGlmIChwcm9wcy5jbHVzdGVyUHJvcHM/LnZwYykge1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICAgIGVycm9yTWVzc2FnZXMgKz1cbiAgICAgIFwiQWxsIHNlcnZpY2VzIGluIHRoZSBjb25zdHJ1Y3QgdXNlIHRoZSBjb25zdHJ1Y3QgVlBDLCB5b3UgY2Fubm90IHNwZWNpZnkgYSBWUEMgaW4gY2x1c3RlclByb3BzXFxuXCI7XG4gIH1cblxuICBpZiAoXG4gICAgKHByb3BzLmV4aXN0aW5nRmFyZ2F0ZVNlcnZpY2VPYmplY3QgfHxcbiAgICAgIHByb3BzLmV4aXN0aW5nQ29udGFpbmVyRGVmaW5pdGlvbk9iamVjdCkgJiZcbiAgICAoIXByb3BzLmV4aXN0aW5nRmFyZ2F0ZVNlcnZpY2VPYmplY3QgfHxcbiAgICAgICFwcm9wcy5leGlzdGluZ0NvbnRhaW5lckRlZmluaXRpb25PYmplY3QgfHxcbiAgICAgICFwcm9wcy5leGlzdGluZ1ZwYylcbiAgKSB7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gICAgZXJyb3JNZXNzYWdlcyArPVxuICAgICAgXCJJZiBhbiBleGlzdGluZyBTZXJ2aWNlIGlzIGluZGljYXRlZCBieSBzdXBwbHlpbmcgZWl0aGVyIGV4aXN0aW5nRmFyZ2F0ZVNlcnZpY2VPYmplY3Qgb3IgZXhpc3RpbmdDb250YWluZXJEZWZpbml0aW9uT2JqZWN0LCB0aGVuIGV4aXN0aW5nRmFyZ2F0ZVNlcnZpY2VPYmplY3QsIGV4aXN0aW5nQ29udGFpbmVyRGVmaW5pdGlvbk9iamVjdCwgYW5kIGV4aXN0aW5nVnBjIG11c3QgYWxsIGJlIHByb3ZpZGVkXFxuXCI7XG4gIH1cblxuICBpZiAoZXJyb3JGb3VuZCkge1xuICAgIHRocm93IG5ldyBFcnJvcihlcnJvck1lc3NhZ2VzKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2VydmljZVZwY1NlY3VyaXR5R3JvdXBJZHMoc2VydmljZTogZWNzLkZhcmdhdGVTZXJ2aWNlKTogc3RyaW5nW10ge1xuICBjb25zdCBzZWN1cml0eUdyb3VwSWRzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIHNlcnZpY2UuY29ubmVjdGlvbnMuc2VjdXJpdHlHcm91cHMuZm9yRWFjaChlbGVtZW50ID0+IHNlY3VyaXR5R3JvdXBJZHMucHVzaChlbGVtZW50LnNlY3VyaXR5R3JvdXBJZCkpO1xuXG4gIHJldHVybiBzZWN1cml0eUdyb3VwSWRzO1xufSJdfQ==
|
|
@@ -23,6 +23,7 @@ import * as glue from 'aws-cdk-lib/aws-glue';
|
|
|
23
23
|
import * as sagemaker from 'aws-cdk-lib/aws-sagemaker';
|
|
24
24
|
import * as secretsmanager from "aws-cdk-lib/aws-secretsmanager";
|
|
25
25
|
import * as kms from "aws-cdk-lib/aws-kms";
|
|
26
|
+
import * as opensearch from "aws-cdk-lib/aws-opensearchservice";
|
|
26
27
|
export interface VerifiedProps {
|
|
27
28
|
readonly dynamoTableProps?: dynamodb.TableProps;
|
|
28
29
|
readonly existingTableObj?: dynamodb.Table;
|
|
@@ -60,6 +61,7 @@ export interface VerifiedProps {
|
|
|
60
61
|
readonly existingLoggingBucketObj?: s3.IBucket;
|
|
61
62
|
readonly loggingBucketProps?: s3.BucketProps;
|
|
62
63
|
readonly logS3AccessLogs?: boolean;
|
|
64
|
+
readonly openSearchDomainProps?: opensearch.CfnDomainProps;
|
|
63
65
|
}
|
|
64
66
|
export declare function CheckProps(propsObject: VerifiedProps | any): void;
|
|
65
67
|
export declare function CheckListValues(allowedPermissions: string[], submittedValues: string[], valueType: string): void;
|
package/lib/input-validation.js
CHANGED
|
@@ -112,6 +112,9 @@ function CheckProps(propsObject) {
|
|
|
112
112
|
errorMessages += 'Error - If existingBucketObj is provided, supplying loggingBucketProps or logS3AccessLogs is an error.\n';
|
|
113
113
|
errorFound = true;
|
|
114
114
|
}
|
|
115
|
+
if (propsObject.openSearchDomainProps?.vpcOptions) {
|
|
116
|
+
throw new Error("Error - Define VPC using construct parameters not the OpenSearch Service props");
|
|
117
|
+
}
|
|
115
118
|
if (errorFound) {
|
|
116
119
|
throw new Error(errorMessages);
|
|
117
120
|
}
|
|
@@ -125,4 +128,4 @@ function CheckListValues(allowedPermissions, submittedValues, valueType) {
|
|
|
125
128
|
});
|
|
126
129
|
}
|
|
127
130
|
exports.CheckListValues = CheckListValues;
|
|
128
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImlucHV0LXZhbGlkYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7OztHQVdHOzs7QUFxRUgsU0FBZ0IsVUFBVSxDQUFDLFdBQWdDO0lBQ3pELElBQUksYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUN2QixJQUFJLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFFdkIsSUFBSSxXQUFXLENBQUMsaUJBQWlCLElBQUksV0FBVyxDQUFDLHVCQUF1QixFQUFFO1FBQ3hFLGFBQWEsSUFBSSxzRkFBc0YsQ0FBQztRQUN4RyxVQUFVLEdBQUcsSUFBSSxDQUFDO0tBQ25CO0lBRUQsSUFBSSxXQUFXLENBQUMsZ0JBQWdCLElBQUksV0FBVyxDQUFDLGdCQUFnQixFQUFFO1FBQ2hFLGFBQWEsSUFBSSw4RUFBOEUsQ0FBQztRQUNoRyxVQUFVLEdBQUcsSUFBSSxDQUFDO0tBQ25CO0lBRUQsSUFBSSxXQUFXLENBQUMsZ0JBQWdCLElBQUksV0FBVyxDQUFDLHNCQUFzQixFQUFFO1FBQ3RFLGFBQWEsSUFBSSxvRkFBb0YsQ0FBQztRQUN0RyxVQUFVLEdBQUcsSUFBSSxDQUFDO0tBQ25CO0lBRUQsSUFBSSxXQUFXLENBQUMsaUJBQWlCLElBQUssV0FBVyxDQUFDLGtCQUFrQixFQUFFO1FBQ3BFLGFBQWEsSUFBSSxpRkFBaUYsQ0FBQztRQUNuRyxVQUFVLEdBQUcsSUFBSSxDQUFDO0tBQ25CO0lBRUQsSUFBSSxXQUFXLENBQUMsaUJBQWlCLElBQUksV0FBVyxDQUFDLG1CQUFtQixFQUFFO1FBQ3BFLGFBQWEsSUFBSSxrRkFBa0YsQ0FBQztRQUNwRyxVQUFVLEdBQUcsSUFBSSxDQUFDO0tBQ25CO0lBRUQsSUFBSSxXQUFXLENBQUMsZ0JBQWdCLElBQUksV0FBVyxDQUFDLFVBQVUsRUFBRTtRQUMxRCxhQUFhLElBQUksd0VBQXdFLENBQUM7UUFDMUYsVUFBVSxHQUFHLElBQUks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RixhQUFhLElBQUkscUZBQXFGLENBQUM7UUFDdkcsVUFBVSxHQUFHLElBQUksQ0FBQztLQUNuQjtJQUVELElBQUksV0FBVyxDQUFDLHdCQUF3QixJQUFJLFdBQVcsQ0FBQyxrQkFBa0IsRUFBRTtRQUMxRSxhQUFhLElBQUksd0ZBQXdGLENBQUM7UUFDMUcsVUFBVSxHQUFHLElBQUksQ0FBQztLQUNuQjtJQUVELElBQUksQ0FBQyxXQUFXLEVBQUUsZUFBZSxLQUFLLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGtCQUFrQixJQUFJLFdBQVcsQ0FBQyx3QkFBd0IsQ0FBQyxFQUFFO1FBQ3hILGFBQWEsSUFBSSw2R0FBNkcsQ0FBQztRQUMvSCxVQUFVLEdBQUcsSUFBSSxDQUFDO0tBQ25CO0lBRUQsSUFBSSxXQUFXLENBQUMsaUJBQWlCLElBQUksQ0FBQyxXQUFXLENBQUMsa0JBQWtCLElBQUksV0FBVyxDQUFDLGVBQWUsQ0FBQyxFQUFFO1FBQ3BHLGFBQWEsSUFBSSwwR0FBMEcsQ0FBQztRQUM1SCxVQUFVLEdBQUcsSUFBSSxDQUFDO0tBQ25CO0lBRUQsSUFBSSxVQUFVLEVBQUU7UUFDZCxNQUFNLElBQUksS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0tBQ2hDO0FBQ0gsQ0FBQztBQS9IRCxnQ0ErSEM7QUFFRCxTQUFnQixlQUFlLENBQUMsa0JBQTRCLEVBQUUsZUFBeUIsRUFBRSxTQUFpQjtJQUN4RyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsY0FBYyxFQUFFLEVBQUU7UUFDekMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsRUFBRTtZQUNoRCxNQUFNLEtBQUssQ0FBQyxXQUFXLFNBQVMsZ0JBQWdCLGNBQWMsRUFBRSxDQUFFLENBQUM7U0FDcEU7SUFDSCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFORCwwQ0FNQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogIENvcHlyaWdodCAyMDIyIEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIikuIFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcbiAqICB3aXRoIHRoZSBMaWNlbnNlLiBBIGNvcHkgb2YgdGhlIExpY2Vuc2UgaXMgbG9jYXRlZCBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogIG9yIGluIHRoZSAnbGljZW5zZScgZmlsZSBhY2NvbXBhbnlpbmcgdGhpcyBmaWxlLiBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgb24gYW4gJ0FTIElTJyBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTXG4gKiAgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnNcbiAqICBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0ICogYXMgZHluYW1vZGIgZnJvbSAnYXdzLWNkay1saWIvYXdzLWR5bmFtb2RiJztcbmltcG9ydCAqIGFzIGtpbmVzaXMgZnJvbSAnYXdzLWNkay1saWIvYXdzLWtpbmVzaXMnO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0ICogYXMgc3FzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1zcXMnO1xuaW1wb3J0ICogYXMgbWVkaWFzdG9yZSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbWVkaWFzdG9yZSc7XG5pbXBvcnQgKiBhcyBzMyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMnO1xuaW1wb3J0ICogYXMgZWMyIGZyb20gJ2F3cy1jZGstbGliL2F3cy1lYzInO1xuaW1wb3J0ICogYXMgZWxiIGZyb20gJ2F3cy1jZGstbGliL2F3cy1lbGFzdGljbG9hZGJhbGFuY2luZ3YyJztcbmltcG9ydCAqIGFzIHNucyBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtc25zJztcbmltcG9ydCAqIGFzIGdsdWUgZnJvbSAnYXdzLWNkay1saWIvYXdzLWdsdWUnO1xuaW1wb3J0ICogYXMgc2FnZW1ha2VyIGZyb20gJ2F3cy1jZGstbGliL2F3cy1zYWdlbWFrZXInO1xuaW1wb3J0ICogYXMgc2VjcmV0c21hbmFnZXIgZnJvbSBcImF3cy1jZGstbGliL2F3cy1zZWNyZXRzbWFuYWdlclwiO1xuaW1wb3J0ICogYXMga21zIGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mta21zXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmVyaWZpZWRQcm9wcyB7XG4gIHJlYWRvbmx5IGR5bmFtb1RhYmxlUHJvcHM/OiBkeW5hbW9kYi5UYWJsZVByb3BzLFxuICByZWFkb25seSBleGlzdGluZ1RhYmxlT2JqPzogZHluYW1vZGIuVGFibGUsXG4gIHJlYWRvbmx5IGV4aXN0aW5nVGFibGVJbnRlcmZhY2U/OiBkeW5hbW9kYi5JVGFibGUsXG5cbiAgcmVhZG9ubHkgZXhpc3RpbmdTdHJlYW1PYmo/OiBraW5lc2lzLlN0cmVhbTtcbiAgcmVhZG9ubHkga2luZXNpc1N0cmVhbVByb3BzPzoga2luZXNpcy5TdHJlYW1Qcm9wcyxcblxuICByZWFkb25seSBleGlzdGluZ0xhbWJkYU9iaj86IGxhbWJkYS5GdW5jdGlvbixcbiAgcmVhZG9ubHkgbGFtYmRhRnVuY3Rpb25Qcm9wcz86IGxhbWJkYS5GdW5jdGlvblByb3BzLFxuXG4gIHJlYWRvbmx5IGV4aXN0aW5nUXVldWVPYmo/OiBzcXMuUXVldWUsXG4gIHJlYWRvbmx5IHF1ZXVlUHJvcHM/OiBzcXMuUXVldWVQcm9wcyxcbiAgcmVhZG9ubHkgZGVwbG95RGVhZExldHRlclF1ZXVlPzogYm9vbGVhbixcbiAgcmVhZG9ubHkgZGVhZExldHRlclF1ZXVlUHJvcHM/OiBzcXMuUXVldWVQcm9wcyxcblxuICByZWFkb25seSBleGlzdGluZ01lZGlhU3RvcmVDb250YWluZXJPYmo/OiBtZWRpYXN0b3JlLkNmbkNvbnRhaW5lcjtcbiAgcmVhZG9ubHkgbWVkaWFTdG9yZUNvbnRhaW5lclByb3BzPzogbWVkaWFzdG9yZS5DZm5Db250YWluZXJQcm9wcztcblxuICByZWFkb25seSBleGlzdGluZ0J1Y2tldE9iaj86IHMzLkJ1Y2tldCxcbiAgcmVhZG9ubHkgZXhpc3RpbmdCdWNrZXRJbnRlcmZhY2U/OiBzMy5JQnVja2V0LFxuICByZWFkb25seSBidWNrZXRQcm9wcz86IHMzLkJ1Y2tldFByb3BzLFxuXG4gIHJlYWRvbmx5IHRvcGljUHJvcHM/OiBzbnMuVG9waWNQcm9wcyxcbiAgcmVhZG9ubHkgZXhpc3RpbmdUb3BpY09iaj86IHNucy5Ub3BpYyxcblxuICByZWFkb25seSBnbHVlSm9iUHJvcHM/OiBnbHVlLkNmbkpvYlByb3BzLFxuICByZWFkb25seSBleGlzdGluZ0dsdWVKb2I/OiBnbHVlLkNmbkpvYixcblxuICByZWFkb25seSBleGlzdGluZ1NhZ2VtYWtlckVuZHBvaW50T2JqPzogc2FnZW1ha2VyLkNmbkVuZHBvaW50LFxuICByZWFkb25seSBlbmRwb2ludFByb3BzPzogc2FnZW1ha2VyLkNmbkVuZHBvaW50UHJvcHMsXG5cbiAgcmVhZG9ubHkgZXhpc3RpbmdTZWNyZXRPYmo/OiBzZWNyZXRzbWFuYWdlci5TZWNyZXQ7XG4gIHJlYWRvbmx5IHNlY3JldFByb3BzPzogc2VjcmV0c21hbmFnZXIuU2VjcmV0UHJvcHM7XG5cbiAgcmVhZG9ubHkgZXhpc3RpbmdWcGM/OiBlYzIuSVZwYztcbiAgcmVhZG9ubHkgdnBjUHJvcHM/OiBlYzIuVnBjUHJvcHM7XG4gIHJlYWRvbmx5IGRlcGxveVZwYz86IGJvb2xlYW47XG5cbiAgcmVhZG9ubHkgZW5jcnlwdGlvbktleT86IGttcy5LZXksXG4gIHJlYWRvbmx5IGVuY3J5cHRpb25LZXlQcm9wcz86IGttcy5LZXlQcm9wc1xuXG4gIHJlYWRvbmx5IGxvYWRCYWxhbmNlclByb3BzPzogZWxiLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyUHJvcHM7XG4gIHJlYWRvbmx5IGV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqPzogZWxiLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyO1xuXG4gIHJlYWRvbmx5IGxvZ0FsYkFjY2Vzc0xvZ3M/OiBib29sZWFuO1xuICByZWFkb25seSBhbGJMb2dnaW5nQnVja2V0UHJvcHM/OiBzMy5CdWNrZXRQcm9wcztcblxuICByZWFkb25seSBleGlzdGluZ0xvZ2dpbmdCdWNrZXRPYmo/OiBzMy5JQnVja2V0O1xuICByZWFkb25seSBsb2dnaW5nQnVja2V0UHJvcHM/OiBzMy5CdWNrZXRQcm9wcztcbiAgcmVhZG9ubHkgbG9nUzNBY2Nlc3NMb2dzPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIENoZWNrUHJvcHMocHJvcHNPYmplY3Q6IFZlcmlmaWVkUHJvcHMgfCBhbnkpIHtcbiAgbGV0IGVycm9yTWVzc2FnZXMgPSAnJztcbiAgbGV0IGVycm9yRm91bmQgPSBmYWxzZTtcblxuICBpZiAocHJvcHNPYmplY3QubG9hZEJhbGFuY2VyUHJvcHMgJiYgcHJvcHNPYmplY3QuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmopIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIEVpdGhlciBwcm92aWRlIGxvYWRCYWxhbmNlclByb3BzIG9yIGV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqLCBidXQgbm90IGJvdGguXFxuJztcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgfVxuXG4gIGlmIChwcm9wc09iamVjdC5keW5hbW9UYWJsZVByb3BzICYmIHByb3BzT2JqZWN0LmV4aXN0aW5nVGFibGVPYmopIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIEVpdGhlciBwcm92aWRlIGV4aXN0aW5nVGFibGVPYmogb3IgZHluYW1vVGFibGVQcm9wcywgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAocHJvcHNPYmplY3QuZHluYW1vVGFibGVQcm9wcyAmJiBwcm9wc09iamVjdC5leGlzdGluZ1RhYmxlSW50ZXJmYWNlKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSAnRXJyb3IgLSBFaXRoZXIgcHJvdmlkZSBleGlzdGluZ1RhYmxlSW50ZXJmYWNlIG9yIGR5bmFtb1RhYmxlUHJvcHMsIGJ1dCBub3QgYm90aC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKHByb3BzT2JqZWN0LmV4aXN0aW5nU3RyZWFtT2JqICAmJiBwcm9wc09iamVjdC5raW5lc2lzU3RyZWFtUHJvcHMpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIEVpdGhlciBwcm92aWRlIGV4aXN0aW5nU3RyZWFtT2JqIG9yIGtpbmVzaXNTdHJlYW1Qcm9wcywgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAocHJvcHNPYmplY3QuZXhpc3RpbmdMYW1iZGFPYmogJiYgcHJvcHNPYmplY3QubGFtYmRhRnVuY3Rpb25Qcm9wcykge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gJ0Vycm9yIC0gRWl0aGVyIHByb3ZpZGUgbGFtYmRhRnVuY3Rpb25Qcm9wcyBvciBleGlzdGluZ0xhbWJkYU9iaiwgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAocHJvcHNPYmplY3QuZXhpc3RpbmdRdWV1ZU9iaiAmJiBwcm9wc09iamVjdC5xdWV1ZVByb3BzKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSAnRXJyb3IgLSBFaXRoZXIgcHJvdmlkZSBxdWV1ZVByb3BzIG9yIGV4aXN0aW5nUXVldWVPYmosIGJ1dCBub3QgYm90aC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKChwcm9wc09iamVjdD8uZGVwbG95RGVhZExldHRlclF1ZXVlID09PSBmYWxzZSkgJiYgcHJvcHNPYmplY3QuZGVhZExldHRlclF1ZXVlUHJvcHMpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIElmIGRlcGxveURlYWRMZXR0ZXJRdWV1ZSBpcyBmYWxzZSB0aGVuIGRlYWRMZXR0ZXJRdWV1ZVByb3BzIGNhbm5vdCBiZSBzcGVjaWZpZWQuXFxuJztcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgfVxuXG4gIGNvbnN0IGlzUXVldWVGaWZvOiBib29sZWFuID0gcHJvcHNPYmplY3Q/LnF1ZXVlUHJvcHM/LmZpZm87XG4gIGNvbnN0IGlzRGVhZExldHRlclF1ZXVlRmlmbzogYm9vbGVhbiA9IHByb3BzT2JqZWN0Py5kZWFkTGV0dGVyUXVldWVQcm9wcz8uZmlmbztcbiAgY29uc3QgZGVwbG95RGVhZExldHRlclF1ZXVlOiBib29sZWFuID0gcHJvcHNPYmplY3QuZGVwbG95RGVhZExldHRlclF1ZXVlIHx8IHByb3BzT2JqZWN0LmRlcGxveURlYWRMZXR0ZXJRdWV1ZSA9PT0gdW5kZWZpbmVkO1xuXG4gIGlmIChkZXBsb3lEZWFkTGV0dGVyUXVldWUgJiYgKGlzUXVldWVGaWZvICE9PSBpc0RlYWRMZXR0ZXJRdWV1ZUZpZm8pKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSAnRXJyb3IgLSBJZiB5b3Ugc3BlY2lmeSBhIGZpZm86IHRydWUgaW4gZWl0aGVyIHF1ZXVlUHJvcHMgb3IgZGVhZExldHRlclF1ZXVlUHJvcHMsIHlvdSBtdXN0IGFsc28gc2V0IGZpZm86IHRydWUgaW4gdGhlIG90aGVyIHByb3BzIG9iamVjdC4gXFxcbiAgICBGaWZvIG11c3QgbWF0Y2ggZm9yIHRoZSBRdWV1ZSBhbmQgdGhlIERlYWQgTGV0dGVyIFF1ZXVlLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAocHJvcHNPYmplY3QuZXhpc3RpbmdNZWRpYVN0b3JlQ29udGFpbmVyT2JqICYmIHByb3BzT2JqZWN0Lm1lZGlhU3RvcmVDb250YWluZXJQcm9wcykge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gJ0Vycm9yIC0gRWl0aGVyIHByb3ZpZGUgbWVkaWFTdG9yZUNvbnRhaW5lclByb3BzIG9yIGV4aXN0aW5nTWVkaWFTdG9yZUNvbnRhaW5lck9iaiwgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAocHJvcHNPYmplY3QuZXhpc3RpbmdCdWNrZXRPYmogJiYgcHJvcHNPYmplY3QuYnVja2V0UHJvcHMpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIEVpdGhlciBwcm92aWRlIGJ1Y2tldFByb3BzIG9yIGV4aXN0aW5nQnVja2V0T2JqLCBidXQgbm90IGJvdGguXFxuJztcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgfVxuXG4gIGlmIChwcm9wc09iamVjdC5leGlzdGluZ0J1Y2tldEludGVyZmFjZSAmJiBwcm9wc09iamVjdC5idWNrZXRQcm9wcykge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gJ0Vycm9yIC0gRWl0aGVyIHByb3ZpZGUgYnVja2V0UHJvcHMgb3IgZXhpc3RpbmdCdWNrZXRJbnRlcmZhY2UsIGJ1dCBub3QgYm90aC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKChwcm9wc09iamVjdC50b3BpY1Byb3BzKSAmJiBwcm9wc09iamVjdC5leGlzdGluZ1RvcGljT2JqKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSAnRXJyb3IgLSBFaXRoZXIgcHJvdmlkZSB0b3BpY1Byb3BzIG9yIGV4aXN0aW5nVG9waWNPYmosIGJ1dCBub3QgYm90aC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKHByb3BzT2JqZWN0LmdsdWVKb2JQcm9wcyAmJiBwcm9wc09iamVjdC5leGlzdGluZ0dsdWVKb2IpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIEVpdGhlciBwcm92aWRlIGdsdWVKb2JQcm9wcyBvciBleGlzdGluZ0dsdWVKb2IsIGJ1dCBub3QgYm90aC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKHByb3BzT2JqZWN0LmV4aXN0aW5nU2FnZW1ha2VyRW5kcG9pbnRPYmogJiYgcHJvcHNPYmplY3QuZW5kcG9pbnRQcm9wcykge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gJ0Vycm9yIC0gRWl0aGVyIHByb3ZpZGUgZW5kcG9pbnRQcm9wcyBvciBleGlzdGluZ1NhZ2VtYWtlckVuZHBvaW50T2JqLCBidXQgbm90IGJvdGguXFxuJztcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgfVxuXG4gIGlmIChwcm9wc09iamVjdC5leGlzdGluZ1NlY3JldE9iaiAmJiBwcm9wc09iamVjdC5zZWNyZXRQcm9wcykge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gJ0Vycm9yIC0gRWl0aGVyIHByb3ZpZGUgc2VjcmV0UHJvcHMgb3IgZXhpc3RpbmdTZWNyZXRPYmosIGJ1dCBub3QgYm90aC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKChwcm9wc09iamVjdC5kZXBsb3lWcGMgfHwgcHJvcHNPYmplY3QudnBjUHJvcHMpICYmIHByb3BzT2JqZWN0LmV4aXN0aW5nVnBjKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSAnRXJyb3IgLSBFaXRoZXIgcHJvdmlkZSBhbiBleGlzdGluZ1ZwYyBvciBzb21lIGNvbWJpbmF0aW9uIG9mIGRlcGxveVZwYyBhbmQgdnBjUHJvcHMsIGJ1dCBub3QgYm90aC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKHByb3BzT2JqZWN0LmVuY3J5cHRpb25LZXkgJiYgcHJvcHNPYmplY3QuZW5jcnlwdGlvbktleVByb3BzKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSAnRXJyb3IgLSBFaXRoZXIgcHJvdmlkZSBlbmNyeXB0aW9uS2V5IG9yIGVuY3J5cHRpb25LZXlQcm9wcywgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAocHJvcHNPYmplY3QuZXhpc3RpbmdFdmVudEJ1c0ludGVyZmFjZSAmJiBwcm9wc09iamVjdC5ldmVudEJ1c1Byb3BzKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSAnRXJyb3IgLSBFaXRoZXIgcHJvdmlkZSBleGlzdGluZ0V2ZW50QnVzSW50ZXJmYWNlIG9yIGV2ZW50QnVzUHJvcHMsIGJ1dCBub3QgYm90aC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKHByb3BzT2JqZWN0LmV4aXN0aW5nV2ViYWNsT2JqICYmIHByb3BzT2JqZWN0LndlYmFjbFByb3BzKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSAnRXJyb3IgLSBFaXRoZXIgcHJvdmlkZSBleGlzdGluZ1dlYmFjbE9iaiBvciB3ZWJhY2xQcm9wcywgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAoKHByb3BzT2JqZWN0Py5sb2dBbGJBY2Nlc3NMb2dzID09PSBmYWxzZSkgJiYgKHByb3BzT2JqZWN0LmFsYkxvZ2dpbmdCdWNrZXRQcm9wcykpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIElmIGxvZ0FsYkFjY2Vzc0xvZ3MgaXMgZmFsc2UsIHN1cHBseWluZyBhbGJMb2dnaW5nQnVja2V0UHJvcHMgaXMgaW52YWxpZC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKHByb3BzT2JqZWN0LmV4aXN0aW5nTG9nZ2luZ0J1Y2tldE9iaiAmJiBwcm9wc09iamVjdC5sb2dnaW5nQnVja2V0UHJvcHMpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIEVpdGhlciBwcm92aWRlIGV4aXN0aW5nTG9nZ2luZ0J1Y2tldE9iaiBvciBsb2dnaW5nQnVja2V0UHJvcHMsIGJ1dCBub3QgYm90aC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKChwcm9wc09iamVjdD8ubG9nUzNBY2Nlc3NMb2dzID09PSBmYWxzZSkgJiYgKHByb3BzT2JqZWN0LmxvZ2dpbmdCdWNrZXRQcm9wcyB8fCBwcm9wc09iamVjdC5leGlzdGluZ0xvZ2dpbmdCdWNrZXRPYmopKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSAnRXJyb3IgLSBJZiBsb2dTM0FjY2Vzc0xvZ3MgaXMgZmFsc2UsIHN1cHBseWluZyBsb2dnaW5nQnVja2V0UHJvcHMgb3IgZXhpc3RpbmdMb2dnaW5nQnVja2V0T2JqIGlzIGludmFsaWQuXFxuJztcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgfVxuXG4gIGlmIChwcm9wc09iamVjdC5leGlzdGluZ0J1Y2tldE9iaiAmJiAocHJvcHNPYmplY3QubG9nZ2luZ0J1Y2tldFByb3BzIHx8IHByb3BzT2JqZWN0LmxvZ1MzQWNjZXNzTG9ncykpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIElmIGV4aXN0aW5nQnVja2V0T2JqIGlzIHByb3ZpZGVkLCBzdXBwbHlpbmcgbG9nZ2luZ0J1Y2tldFByb3BzIG9yIGxvZ1MzQWNjZXNzTG9ncyBpcyBhbiBlcnJvci5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKGVycm9yRm91bmQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3JNZXNzYWdlcyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIENoZWNrTGlzdFZhbHVlcyhhbGxvd2VkUGVybWlzc2lvbnM6IHN0cmluZ1tdLCBzdWJtaXR0ZWRWYWx1ZXM6IHN0cmluZ1tdLCB2YWx1ZVR5cGU6IHN0cmluZykge1xuICBzdWJtaXR0ZWRWYWx1ZXMuZm9yRWFjaCgoc3VibWl0dGVkVmFsdWUpID0+IHtcbiAgICBpZiAoIWFsbG93ZWRQZXJtaXNzaW9ucy5pbmNsdWRlcyhzdWJtaXR0ZWRWYWx1ZSkpIHtcbiAgICAgIHRocm93IEVycm9yKGBJbnZhbGlkICR7dmFsdWVUeXBlfSBzdWJtaXR0ZWQgLSAke3N1Ym1pdHRlZFZhbHVlfWAgKTtcbiAgICB9XG4gIH0pO1xufVxuIl19
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImlucHV0LXZhbGlkYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7OztHQVdHOzs7QUF3RUgsU0FBZ0IsVUFBVSxDQUFDLFdBQWdDO0lBQ3pELElBQUksYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUN2QixJQUFJLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFFdkIsSUFBSSxXQUFXLENBQUMsaUJBQWlCLElBQUksV0FBVyxDQUFDLHVCQUF1QixFQUFFO1FBQ3hFLGFBQWEsSUFBSSxzRkFBc0YsQ0FBQztRQUN4RyxVQUFVLEdBQUcsSUFBSSxDQUFDO0tBQ25CO0lBRUQsSUFBSSxXQUFXLENBQUMsZ0JBQWdCLElBQUksV0FBVyxDQUFDLGdCQUFnQixFQUFFO1FBQ2hFLGFBQWEsSUFBSSw4RUFBOEUsQ0FBQztRQUNoRyxVQUFVLEdBQUcsSUFBSSxDQUFDO0tBQ25CO0lBRUQsSUFBSSxXQUFXLENBQUMsZ0JBQWdCLElBQUksV0FBVyxDQUFDLHNCQUFzQixFQUFFO1FBQ3RFLGFBQWEsSUFBSSxvRkFBb0YsQ0FBQztRQUN0RyxVQUFVLEdBQUcsSUFBSSxDQUFDO0tBQ25CO0lBRUQsSUFBSSxXQUFXLENBQUMsaUJBQWlCLElBQUssV0FBVyxDQUFDLGtCQUFrQixFQUFFO1FBQ3BFLGFBQWEsSUFBSSxpRkFBaUYsQ0FBQztRQUNuRyxVQUFVLEdBQUcsSUFBSSxDQUFDO0tBQ25CO0lBRUQsSUFBSSxXQUFXLENBQUMsaUJBQWlCLElBQUksV0FBVyxDQUFDLG1CQUFtQixFQUFFO1FBQ3BFLGFBQWEsSUFBSSxrRkFBa0YsQ0FBQztRQUNwRyxVQUFVLEdBQUcsSUFBSSxDQUFDO0tBQ25CO0lBRUQsSUFBSSxXQUFXLENBQUMsZ0JBQWdCLElBQUksV0FBVyxDQUFDLFVBQVUsRUFBRTtRQUMxRCxhQUFhLElBQUksd0VBQXdFLENBQUM7UUFDMUYsVUFBVSxHQUFHLElBQUks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O0FBTkQsMENBTUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICBDb3B5cmlnaHQgMjAyMiBBbWF6b24uY29tLCBJbmMuIG9yIGl0cyBhZmZpbGlhdGVzLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpLiBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4gKiAgd2l0aCB0aGUgTGljZW5zZS4gQSBjb3B5IG9mIHRoZSBMaWNlbnNlIGlzIGxvY2F0ZWQgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqICBvciBpbiB0aGUgJ2xpY2Vuc2UnIGZpbGUgYWNjb21wYW55aW5nIHRoaXMgZmlsZS4gVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICdBUyBJUycgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFU1xuICogIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zXG4gKiAgYW5kIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCAqIGFzIGR5bmFtb2RiIGZyb20gJ2F3cy1jZGstbGliL2F3cy1keW5hbW9kYic7XG5pbXBvcnQgKiBhcyBraW5lc2lzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1raW5lc2lzJztcbmltcG9ydCAqIGFzIGxhbWJkYSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcbmltcG9ydCAqIGFzIHNxcyBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtc3FzJztcbmltcG9ydCAqIGFzIG1lZGlhc3RvcmUgZnJvbSAnYXdzLWNkay1saWIvYXdzLW1lZGlhc3RvcmUnO1xuaW1wb3J0ICogYXMgczMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzJztcbmltcG9ydCAqIGFzIGVjMiBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZWMyJztcbmltcG9ydCAqIGFzIGVsYiBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2Mic7XG5pbXBvcnQgKiBhcyBzbnMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXNucyc7XG5pbXBvcnQgKiBhcyBnbHVlIGZyb20gJ2F3cy1jZGstbGliL2F3cy1nbHVlJztcbmltcG9ydCAqIGFzIHNhZ2VtYWtlciBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtc2FnZW1ha2VyJztcbmltcG9ydCAqIGFzIHNlY3JldHNtYW5hZ2VyIGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtc2VjcmV0c21hbmFnZXJcIjtcbmltcG9ydCAqIGFzIGttcyBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWttc1wiO1xuaW1wb3J0ICogYXMgb3BlbnNlYXJjaCBmcm9tIFwiYXdzLWNkay1saWIvYXdzLW9wZW5zZWFyY2hzZXJ2aWNlXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmVyaWZpZWRQcm9wcyB7XG4gIHJlYWRvbmx5IGR5bmFtb1RhYmxlUHJvcHM/OiBkeW5hbW9kYi5UYWJsZVByb3BzLFxuICByZWFkb25seSBleGlzdGluZ1RhYmxlT2JqPzogZHluYW1vZGIuVGFibGUsXG4gIHJlYWRvbmx5IGV4aXN0aW5nVGFibGVJbnRlcmZhY2U/OiBkeW5hbW9kYi5JVGFibGUsXG5cbiAgcmVhZG9ubHkgZXhpc3RpbmdTdHJlYW1PYmo/OiBraW5lc2lzLlN0cmVhbTtcbiAgcmVhZG9ubHkga2luZXNpc1N0cmVhbVByb3BzPzoga2luZXNpcy5TdHJlYW1Qcm9wcyxcblxuICByZWFkb25seSBleGlzdGluZ0xhbWJkYU9iaj86IGxhbWJkYS5GdW5jdGlvbixcbiAgcmVhZG9ubHkgbGFtYmRhRnVuY3Rpb25Qcm9wcz86IGxhbWJkYS5GdW5jdGlvblByb3BzLFxuXG4gIHJlYWRvbmx5IGV4aXN0aW5nUXVldWVPYmo/OiBzcXMuUXVldWUsXG4gIHJlYWRvbmx5IHF1ZXVlUHJvcHM/OiBzcXMuUXVldWVQcm9wcyxcbiAgcmVhZG9ubHkgZGVwbG95RGVhZExldHRlclF1ZXVlPzogYm9vbGVhbixcbiAgcmVhZG9ubHkgZGVhZExldHRlclF1ZXVlUHJvcHM/OiBzcXMuUXVldWVQcm9wcyxcblxuICByZWFkb25seSBleGlzdGluZ01lZGlhU3RvcmVDb250YWluZXJPYmo/OiBtZWRpYXN0b3JlLkNmbkNvbnRhaW5lcjtcbiAgcmVhZG9ubHkgbWVkaWFTdG9yZUNvbnRhaW5lclByb3BzPzogbWVkaWFzdG9yZS5DZm5Db250YWluZXJQcm9wcztcblxuICByZWFkb25seSBleGlzdGluZ0J1Y2tldE9iaj86IHMzLkJ1Y2tldCxcbiAgcmVhZG9ubHkgZXhpc3RpbmdCdWNrZXRJbnRlcmZhY2U/OiBzMy5JQnVja2V0LFxuICByZWFkb25seSBidWNrZXRQcm9wcz86IHMzLkJ1Y2tldFByb3BzLFxuXG4gIHJlYWRvbmx5IHRvcGljUHJvcHM/OiBzbnMuVG9waWNQcm9wcyxcbiAgcmVhZG9ubHkgZXhpc3RpbmdUb3BpY09iaj86IHNucy5Ub3BpYyxcblxuICByZWFkb25seSBnbHVlSm9iUHJvcHM/OiBnbHVlLkNmbkpvYlByb3BzLFxuICByZWFkb25seSBleGlzdGluZ0dsdWVKb2I/OiBnbHVlLkNmbkpvYixcblxuICByZWFkb25seSBleGlzdGluZ1NhZ2VtYWtlckVuZHBvaW50T2JqPzogc2FnZW1ha2VyLkNmbkVuZHBvaW50LFxuICByZWFkb25seSBlbmRwb2ludFByb3BzPzogc2FnZW1ha2VyLkNmbkVuZHBvaW50UHJvcHMsXG5cbiAgcmVhZG9ubHkgZXhpc3RpbmdTZWNyZXRPYmo/OiBzZWNyZXRzbWFuYWdlci5TZWNyZXQ7XG4gIHJlYWRvbmx5IHNlY3JldFByb3BzPzogc2VjcmV0c21hbmFnZXIuU2VjcmV0UHJvcHM7XG5cbiAgcmVhZG9ubHkgZXhpc3RpbmdWcGM/OiBlYzIuSVZwYztcbiAgcmVhZG9ubHkgdnBjUHJvcHM/OiBlYzIuVnBjUHJvcHM7XG4gIHJlYWRvbmx5IGRlcGxveVZwYz86IGJvb2xlYW47XG5cbiAgcmVhZG9ubHkgZW5jcnlwdGlvbktleT86IGttcy5LZXksXG4gIHJlYWRvbmx5IGVuY3J5cHRpb25LZXlQcm9wcz86IGttcy5LZXlQcm9wc1xuXG4gIHJlYWRvbmx5IGxvYWRCYWxhbmNlclByb3BzPzogZWxiLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyUHJvcHM7XG4gIHJlYWRvbmx5IGV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqPzogZWxiLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyO1xuXG4gIHJlYWRvbmx5IGxvZ0FsYkFjY2Vzc0xvZ3M/OiBib29sZWFuO1xuICByZWFkb25seSBhbGJMb2dnaW5nQnVja2V0UHJvcHM/OiBzMy5CdWNrZXRQcm9wcztcblxuICByZWFkb25seSBleGlzdGluZ0xvZ2dpbmdCdWNrZXRPYmo/OiBzMy5JQnVja2V0O1xuICByZWFkb25seSBsb2dnaW5nQnVja2V0UHJvcHM/OiBzMy5CdWNrZXRQcm9wcztcbiAgcmVhZG9ubHkgbG9nUzNBY2Nlc3NMb2dzPzogYm9vbGVhbjtcblxuICByZWFkb25seSBvcGVuU2VhcmNoRG9tYWluUHJvcHM/OiBvcGVuc2VhcmNoLkNmbkRvbWFpblByb3BzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gQ2hlY2tQcm9wcyhwcm9wc09iamVjdDogVmVyaWZpZWRQcm9wcyB8IGFueSkge1xuICBsZXQgZXJyb3JNZXNzYWdlcyA9ICcnO1xuICBsZXQgZXJyb3JGb3VuZCA9IGZhbHNlO1xuXG4gIGlmIChwcm9wc09iamVjdC5sb2FkQmFsYW5jZXJQcm9wcyAmJiBwcm9wc09iamVjdC5leGlzdGluZ0xvYWRCYWxhbmNlck9iaikge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gJ0Vycm9yIC0gRWl0aGVyIHByb3ZpZGUgbG9hZEJhbGFuY2VyUHJvcHMgb3IgZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmosIGJ1dCBub3QgYm90aC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKHByb3BzT2JqZWN0LmR5bmFtb1RhYmxlUHJvcHMgJiYgcHJvcHNPYmplY3QuZXhpc3RpbmdUYWJsZU9iaikge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gJ0Vycm9yIC0gRWl0aGVyIHByb3ZpZGUgZXhpc3RpbmdUYWJsZU9iaiBvciBkeW5hbW9UYWJsZVByb3BzLCBidXQgbm90IGJvdGguXFxuJztcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgfVxuXG4gIGlmIChwcm9wc09iamVjdC5keW5hbW9UYWJsZVByb3BzICYmIHByb3BzT2JqZWN0LmV4aXN0aW5nVGFibGVJbnRlcmZhY2UpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIEVpdGhlciBwcm92aWRlIGV4aXN0aW5nVGFibGVJbnRlcmZhY2Ugb3IgZHluYW1vVGFibGVQcm9wcywgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAocHJvcHNPYmplY3QuZXhpc3RpbmdTdHJlYW1PYmogICYmIHByb3BzT2JqZWN0LmtpbmVzaXNTdHJlYW1Qcm9wcykge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gJ0Vycm9yIC0gRWl0aGVyIHByb3ZpZGUgZXhpc3RpbmdTdHJlYW1PYmogb3Iga2luZXNpc1N0cmVhbVByb3BzLCBidXQgbm90IGJvdGguXFxuJztcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgfVxuXG4gIGlmIChwcm9wc09iamVjdC5leGlzdGluZ0xhbWJkYU9iaiAmJiBwcm9wc09iamVjdC5sYW1iZGFGdW5jdGlvblByb3BzKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSAnRXJyb3IgLSBFaXRoZXIgcHJvdmlkZSBsYW1iZGFGdW5jdGlvblByb3BzIG9yIGV4aXN0aW5nTGFtYmRhT2JqLCBidXQgbm90IGJvdGguXFxuJztcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgfVxuXG4gIGlmIChwcm9wc09iamVjdC5leGlzdGluZ1F1ZXVlT2JqICYmIHByb3BzT2JqZWN0LnF1ZXVlUHJvcHMpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIEVpdGhlciBwcm92aWRlIHF1ZXVlUHJvcHMgb3IgZXhpc3RpbmdRdWV1ZU9iaiwgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAoKHByb3BzT2JqZWN0Py5kZXBsb3lEZWFkTGV0dGVyUXVldWUgPT09IGZhbHNlKSAmJiBwcm9wc09iamVjdC5kZWFkTGV0dGVyUXVldWVQcm9wcykge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gJ0Vycm9yIC0gSWYgZGVwbG95RGVhZExldHRlclF1ZXVlIGlzIGZhbHNlIHRoZW4gZGVhZExldHRlclF1ZXVlUHJvcHMgY2Fubm90IGJlIHNwZWNpZmllZC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgY29uc3QgaXNRdWV1ZUZpZm86IGJvb2xlYW4gPSBwcm9wc09iamVjdD8ucXVldWVQcm9wcz8uZmlmbztcbiAgY29uc3QgaXNEZWFkTGV0dGVyUXVldWVGaWZvOiBib29sZWFuID0gcHJvcHNPYmplY3Q/LmRlYWRMZXR0ZXJRdWV1ZVByb3BzPy5maWZvO1xuICBjb25zdCBkZXBsb3lEZWFkTGV0dGVyUXVldWU6IGJvb2xlYW4gPSBwcm9wc09iamVjdC5kZXBsb3lEZWFkTGV0dGVyUXVldWUgfHwgcHJvcHNPYmplY3QuZGVwbG95RGVhZExldHRlclF1ZXVlID09PSB1bmRlZmluZWQ7XG5cbiAgaWYgKGRlcGxveURlYWRMZXR0ZXJRdWV1ZSAmJiAoaXNRdWV1ZUZpZm8gIT09IGlzRGVhZExldHRlclF1ZXVlRmlmbykpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIElmIHlvdSBzcGVjaWZ5IGEgZmlmbzogdHJ1ZSBpbiBlaXRoZXIgcXVldWVQcm9wcyBvciBkZWFkTGV0dGVyUXVldWVQcm9wcywgeW91IG11c3QgYWxzbyBzZXQgZmlmbzogdHJ1ZSBpbiB0aGUgb3RoZXIgcHJvcHMgb2JqZWN0LiBcXFxuICAgIEZpZm8gbXVzdCBtYXRjaCBmb3IgdGhlIFF1ZXVlIGFuZCB0aGUgRGVhZCBMZXR0ZXIgUXVldWUuXFxuJztcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgfVxuXG4gIGlmIChwcm9wc09iamVjdC5leGlzdGluZ01lZGlhU3RvcmVDb250YWluZXJPYmogJiYgcHJvcHNPYmplY3QubWVkaWFTdG9yZUNvbnRhaW5lclByb3BzKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSAnRXJyb3IgLSBFaXRoZXIgcHJvdmlkZSBtZWRpYVN0b3JlQ29udGFpbmVyUHJvcHMgb3IgZXhpc3RpbmdNZWRpYVN0b3JlQ29udGFpbmVyT2JqLCBidXQgbm90IGJvdGguXFxuJztcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgfVxuXG4gIGlmIChwcm9wc09iamVjdC5leGlzdGluZ0J1Y2tldE9iaiAmJiBwcm9wc09iamVjdC5idWNrZXRQcm9wcykge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gJ0Vycm9yIC0gRWl0aGVyIHByb3ZpZGUgYnVja2V0UHJvcHMgb3IgZXhpc3RpbmdCdWNrZXRPYmosIGJ1dCBub3QgYm90aC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKHByb3BzT2JqZWN0LmV4aXN0aW5nQnVja2V0SW50ZXJmYWNlICYmIHByb3BzT2JqZWN0LmJ1Y2tldFByb3BzKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSAnRXJyb3IgLSBFaXRoZXIgcHJvdmlkZSBidWNrZXRQcm9wcyBvciBleGlzdGluZ0J1Y2tldEludGVyZmFjZSwgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAoKHByb3BzT2JqZWN0LnRvcGljUHJvcHMpICYmIHByb3BzT2JqZWN0LmV4aXN0aW5nVG9waWNPYmopIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIEVpdGhlciBwcm92aWRlIHRvcGljUHJvcHMgb3IgZXhpc3RpbmdUb3BpY09iaiwgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAocHJvcHNPYmplY3QuZ2x1ZUpvYlByb3BzICYmIHByb3BzT2JqZWN0LmV4aXN0aW5nR2x1ZUpvYikge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gJ0Vycm9yIC0gRWl0aGVyIHByb3ZpZGUgZ2x1ZUpvYlByb3BzIG9yIGV4aXN0aW5nR2x1ZUpvYiwgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAocHJvcHNPYmplY3QuZXhpc3RpbmdTYWdlbWFrZXJFbmRwb2ludE9iaiAmJiBwcm9wc09iamVjdC5lbmRwb2ludFByb3BzKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSAnRXJyb3IgLSBFaXRoZXIgcHJvdmlkZSBlbmRwb2ludFByb3BzIG9yIGV4aXN0aW5nU2FnZW1ha2VyRW5kcG9pbnRPYmosIGJ1dCBub3QgYm90aC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKHByb3BzT2JqZWN0LmV4aXN0aW5nU2VjcmV0T2JqICYmIHByb3BzT2JqZWN0LnNlY3JldFByb3BzKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSAnRXJyb3IgLSBFaXRoZXIgcHJvdmlkZSBzZWNyZXRQcm9wcyBvciBleGlzdGluZ1NlY3JldE9iaiwgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAoKHByb3BzT2JqZWN0LmRlcGxveVZwYyB8fCBwcm9wc09iamVjdC52cGNQcm9wcykgJiYgcHJvcHNPYmplY3QuZXhpc3RpbmdWcGMpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIEVpdGhlciBwcm92aWRlIGFuIGV4aXN0aW5nVnBjIG9yIHNvbWUgY29tYmluYXRpb24gb2YgZGVwbG95VnBjIGFuZCB2cGNQcm9wcywgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAocHJvcHNPYmplY3QuZW5jcnlwdGlvbktleSAmJiBwcm9wc09iamVjdC5lbmNyeXB0aW9uS2V5UHJvcHMpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIEVpdGhlciBwcm92aWRlIGVuY3J5cHRpb25LZXkgb3IgZW5jcnlwdGlvbktleVByb3BzLCBidXQgbm90IGJvdGguXFxuJztcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgfVxuXG4gIGlmIChwcm9wc09iamVjdC5leGlzdGluZ0V2ZW50QnVzSW50ZXJmYWNlICYmIHByb3BzT2JqZWN0LmV2ZW50QnVzUHJvcHMpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIEVpdGhlciBwcm92aWRlIGV4aXN0aW5nRXZlbnRCdXNJbnRlcmZhY2Ugb3IgZXZlbnRCdXNQcm9wcywgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAocHJvcHNPYmplY3QuZXhpc3RpbmdXZWJhY2xPYmogJiYgcHJvcHNPYmplY3Qud2ViYWNsUHJvcHMpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIEVpdGhlciBwcm92aWRlIGV4aXN0aW5nV2ViYWNsT2JqIG9yIHdlYmFjbFByb3BzLCBidXQgbm90IGJvdGguXFxuJztcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgfVxuXG4gIGlmICgocHJvcHNPYmplY3Q/LmxvZ0FsYkFjY2Vzc0xvZ3MgPT09IGZhbHNlKSAmJiAocHJvcHNPYmplY3QuYWxiTG9nZ2luZ0J1Y2tldFByb3BzKSkge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gJ0Vycm9yIC0gSWYgbG9nQWxiQWNjZXNzTG9ncyBpcyBmYWxzZSwgc3VwcGx5aW5nIGFsYkxvZ2dpbmdCdWNrZXRQcm9wcyBpcyBpbnZhbGlkLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAocHJvcHNPYmplY3QuZXhpc3RpbmdMb2dnaW5nQnVja2V0T2JqICYmIHByb3BzT2JqZWN0LmxvZ2dpbmdCdWNrZXRQcm9wcykge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gJ0Vycm9yIC0gRWl0aGVyIHByb3ZpZGUgZXhpc3RpbmdMb2dnaW5nQnVja2V0T2JqIG9yIGxvZ2dpbmdCdWNrZXRQcm9wcywgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAoKHByb3BzT2JqZWN0Py5sb2dTM0FjY2Vzc0xvZ3MgPT09IGZhbHNlKSAmJiAocHJvcHNPYmplY3QubG9nZ2luZ0J1Y2tldFByb3BzIHx8IHByb3BzT2JqZWN0LmV4aXN0aW5nTG9nZ2luZ0J1Y2tldE9iaikpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIElmIGxvZ1MzQWNjZXNzTG9ncyBpcyBmYWxzZSwgc3VwcGx5aW5nIGxvZ2dpbmdCdWNrZXRQcm9wcyBvciBleGlzdGluZ0xvZ2dpbmdCdWNrZXRPYmogaXMgaW52YWxpZC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKHByb3BzT2JqZWN0LmV4aXN0aW5nQnVja2V0T2JqICYmIChwcm9wc09iamVjdC5sb2dnaW5nQnVja2V0UHJvcHMgfHwgcHJvcHNPYmplY3QubG9nUzNBY2Nlc3NMb2dzKSkge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gJ0Vycm9yIC0gSWYgZXhpc3RpbmdCdWNrZXRPYmogaXMgcHJvdmlkZWQsIHN1cHBseWluZyBsb2dnaW5nQnVja2V0UHJvcHMgb3IgbG9nUzNBY2Nlc3NMb2dzIGlzIGFuIGVycm9yLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAocHJvcHNPYmplY3Qub3BlblNlYXJjaERvbWFpblByb3BzPy52cGNPcHRpb25zKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwiRXJyb3IgLSBEZWZpbmUgVlBDIHVzaW5nIGNvbnN0cnVjdCBwYXJhbWV0ZXJzIG5vdCB0aGUgT3BlblNlYXJjaCBTZXJ2aWNlIHByb3BzXCIpO1xuICB9XG5cbiAgaWYgKGVycm9yRm91bmQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3JNZXNzYWdlcyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIENoZWNrTGlzdFZhbHVlcyhhbGxvd2VkUGVybWlzc2lvbnM6IHN0cmluZ1tdLCBzdWJtaXR0ZWRWYWx1ZXM6IHN0cmluZ1tdLCB2YWx1ZVR5cGU6IHN0cmluZykge1xuICBzdWJtaXR0ZWRWYWx1ZXMuZm9yRWFjaCgoc3VibWl0dGVkVmFsdWUpID0+IHtcbiAgICBpZiAoIWFsbG93ZWRQZXJtaXNzaW9ucy5pbmNsdWRlcyhzdWJtaXR0ZWRWYWx1ZSkpIHtcbiAgICAgIHRocm93IEVycm9yKGBJbnZhbGlkICR7dmFsdWVUeXBlfSBzdWJtaXR0ZWQgLSAke3N1Ym1pdHRlZFZhbHVlfWAgKTtcbiAgICB9XG4gIH0pO1xufVxuIl19
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-solutions-constructs/core",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.27.0",
|
|
4
4
|
"description": "Core CDK Construct for patterns library",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.ts",
|
|
@@ -59,11 +59,11 @@
|
|
|
59
59
|
"devDependencies": {
|
|
60
60
|
"@types/deep-diff": "^1.0.0",
|
|
61
61
|
"@types/npmlog": "^4.1.2",
|
|
62
|
-
"@aws-cdk/assert": "2.
|
|
62
|
+
"@aws-cdk/assert": "2.50.0",
|
|
63
63
|
"@types/prettier": "2.6.0",
|
|
64
64
|
"@types/jest": "^27.4.0",
|
|
65
65
|
"@types/node": "^10.3.0",
|
|
66
|
-
"aws-cdk-lib": "2.
|
|
66
|
+
"aws-cdk-lib": "2.50.0",
|
|
67
67
|
"constructs": "^10.0.0"
|
|
68
68
|
},
|
|
69
69
|
"jest": {
|
|
@@ -86,7 +86,7 @@
|
|
|
86
86
|
"deep-diff"
|
|
87
87
|
],
|
|
88
88
|
"peerDependencies": {
|
|
89
|
-
"aws-cdk-lib": "^2.
|
|
89
|
+
"aws-cdk-lib": "^2.50.0",
|
|
90
90
|
"constructs": "^10.0.0"
|
|
91
91
|
}
|
|
92
92
|
}
|