@aws-solutions-constructs/core 2.77.0 → 2.78.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.
Files changed (184) hide show
  1. package/.jsii +42 -42
  2. package/lib/alb-helper.js +2 -3
  3. package/lib/apigateway-defaults.d.ts +6 -6
  4. package/lib/apigateway-defaults.js +11 -11
  5. package/lib/apigateway-helper.d.ts +2 -2
  6. package/lib/apigateway-helper.js +8 -10
  7. package/lib/cloudfront-distribution-helper.js +2 -3
  8. package/lib/cloudwatch-log-group-helper.js +2 -4
  9. package/lib/cognito-defaults.d.ts +2 -2
  10. package/lib/cognito-defaults.js +4 -4
  11. package/lib/cognito-helper.js +3 -5
  12. package/lib/dynamodb-table-defaults.d.ts +3 -3
  13. package/lib/dynamodb-table-defaults.js +6 -6
  14. package/lib/dynamodb-table-helper.js +3 -3
  15. package/lib/elasticsearch-helper.js +5 -5
  16. package/lib/eventbridge-helper.js +4 -4
  17. package/lib/events-rule-defaults.d.ts +1 -1
  18. package/lib/events-rule-defaults.js +4 -4
  19. package/lib/fargate-helper.js +2 -3
  20. package/lib/glue-database-defaults.js +3 -3
  21. package/lib/glue-job-helper.js +3 -3
  22. package/lib/glue-table-defaults.js +6 -6
  23. package/lib/iot-topic-rule-defaults.d.ts +1 -1
  24. package/lib/iot-topic-rule-defaults.js +6 -6
  25. package/lib/kendra-helper.d.ts +1 -1
  26. package/lib/kendra-helper.js +1 -1
  27. package/lib/kinesis-analytics-defaults.d.ts +2 -2
  28. package/lib/kinesis-analytics-defaults.js +4 -4
  29. package/lib/kinesis-analytics-helper.js +2 -2
  30. package/lib/kinesis-firehose-s3-defaults.d.ts +1 -1
  31. package/lib/kinesis-firehose-s3-defaults.js +7 -7
  32. package/lib/kinesis-streams-defaults.d.ts +2 -2
  33. package/lib/kinesis-streams-defaults.js +4 -4
  34. package/lib/kinesis-streams-helper.js +2 -3
  35. package/lib/kms-defaults.d.ts +2 -2
  36. package/lib/kms-defaults.js +4 -4
  37. package/lib/kms-helper.js +2 -4
  38. package/lib/lambda-event-source-mapping-defaults.d.ts +3 -3
  39. package/lib/lambda-event-source-mapping-defaults.js +16 -16
  40. package/lib/mediastore-helper.js +2 -3
  41. package/lib/opensearch-helper.js +2 -2
  42. package/lib/override-warning-service.js +9 -6
  43. package/lib/s3-bucket-helper.js +7 -1
  44. package/lib/sagemaker-helper.d.ts +5 -0
  45. package/lib/sagemaker-helper.js +10 -9
  46. package/lib/secretsmanager-defaults.d.ts +2 -2
  47. package/lib/secretsmanager-defaults.js +4 -4
  48. package/lib/secretsmanager-helper.js +2 -3
  49. package/lib/sns-defaults.d.ts +2 -2
  50. package/lib/sns-defaults.js +4 -4
  51. package/lib/sns-helper.js +2 -2
  52. package/lib/sqs-defaults.js +3 -3
  53. package/lib/sqs-helper.js +2 -2
  54. package/lib/step-function-defaults.d.ts +1 -1
  55. package/lib/step-function-defaults.js +3 -3
  56. package/lib/utils.d.ts +1 -1
  57. package/lib/utils.js +14 -12
  58. package/lib/vpc-helper.js +1 -3
  59. package/lib/waf-helper.js +2 -3
  60. package/lib/websocket-api-helper.js +1 -2
  61. package/nohoist.sh +11 -0
  62. package/package.json +5 -4
  63. package/test/apigateway-helper.test.js +3 -3
  64. package/test/cloudfront-distribution-api-gateway-helper.test.js +11 -11
  65. package/test/dynamo-table.test.js +9 -9
  66. package/test/glue-job-helper.test.js +7 -7
  67. package/test/glue-table-helper.test.js +5 -5
  68. package/test/kinesis-analytics.test.js +2 -2
  69. package/test/kinesis-streams-defaults.test.js +2 -2
  70. package/test/lambda-event-source.test.js +10 -10
  71. package/test/override-warning-service.test.js +25 -26
  72. package/test/pipes-helper.test.js +2 -2
  73. package/test/step-function-helper.test.js +5 -5
  74. package/test/utils.test.js +11 -12
  75. package/.eslintignore +0 -9
  76. package/node_modules/ansi-regex/index.d.ts +0 -37
  77. package/node_modules/ansi-regex/index.js +0 -10
  78. package/node_modules/ansi-regex/license +0 -9
  79. package/node_modules/ansi-regex/package.json +0 -55
  80. package/node_modules/ansi-regex/readme.md +0 -78
  81. package/node_modules/aproba/LICENSE +0 -14
  82. package/node_modules/aproba/README.md +0 -94
  83. package/node_modules/aproba/index.js +0 -105
  84. package/node_modules/aproba/package.json +0 -35
  85. package/node_modules/are-we-there-yet/LICENSE.md +0 -18
  86. package/node_modules/are-we-there-yet/README.md +0 -208
  87. package/node_modules/are-we-there-yet/lib/index.js +0 -4
  88. package/node_modules/are-we-there-yet/lib/tracker-base.js +0 -13
  89. package/node_modules/are-we-there-yet/lib/tracker-group.js +0 -112
  90. package/node_modules/are-we-there-yet/lib/tracker-stream.js +0 -42
  91. package/node_modules/are-we-there-yet/lib/tracker.js +0 -34
  92. package/node_modules/are-we-there-yet/package.json +0 -53
  93. package/node_modules/color-support/LICENSE +0 -15
  94. package/node_modules/color-support/README.md +0 -129
  95. package/node_modules/color-support/bin.js +0 -3
  96. package/node_modules/color-support/browser.js +0 -14
  97. package/node_modules/color-support/index.js +0 -134
  98. package/node_modules/color-support/package.json +0 -36
  99. package/node_modules/console-control-strings/LICENSE +0 -13
  100. package/node_modules/console-control-strings/README.md +0 -145
  101. package/node_modules/console-control-strings/index.js +0 -125
  102. package/node_modules/console-control-strings/package.json +0 -27
  103. package/node_modules/emoji-regex/LICENSE-MIT.txt +0 -20
  104. package/node_modules/emoji-regex/README.md +0 -73
  105. package/node_modules/emoji-regex/es2015/index.js +0 -6
  106. package/node_modules/emoji-regex/es2015/text.js +0 -6
  107. package/node_modules/emoji-regex/index.d.ts +0 -23
  108. package/node_modules/emoji-regex/index.js +0 -6
  109. package/node_modules/emoji-regex/package.json +0 -50
  110. package/node_modules/emoji-regex/text.js +0 -6
  111. package/node_modules/gauge/LICENSE.md +0 -20
  112. package/node_modules/gauge/README.md +0 -402
  113. package/node_modules/gauge/lib/base-theme.js +0 -18
  114. package/node_modules/gauge/lib/error.js +0 -24
  115. package/node_modules/gauge/lib/has-color.js +0 -4
  116. package/node_modules/gauge/lib/index.js +0 -289
  117. package/node_modules/gauge/lib/plumbing.js +0 -50
  118. package/node_modules/gauge/lib/process.js +0 -3
  119. package/node_modules/gauge/lib/progress-bar.js +0 -41
  120. package/node_modules/gauge/lib/render-template.js +0 -222
  121. package/node_modules/gauge/lib/set-immediate.js +0 -7
  122. package/node_modules/gauge/lib/set-interval.js +0 -3
  123. package/node_modules/gauge/lib/spin.js +0 -5
  124. package/node_modules/gauge/lib/template-item.js +0 -87
  125. package/node_modules/gauge/lib/theme-set.js +0 -122
  126. package/node_modules/gauge/lib/themes.js +0 -56
  127. package/node_modules/gauge/lib/wide-truncate.js +0 -31
  128. package/node_modules/gauge/package.json +0 -68
  129. package/node_modules/has-unicode/LICENSE +0 -14
  130. package/node_modules/has-unicode/README.md +0 -43
  131. package/node_modules/has-unicode/index.js +0 -16
  132. package/node_modules/has-unicode/package.json +0 -30
  133. package/node_modules/is-fullwidth-code-point/index.d.ts +0 -17
  134. package/node_modules/is-fullwidth-code-point/index.js +0 -50
  135. package/node_modules/is-fullwidth-code-point/license +0 -9
  136. package/node_modules/is-fullwidth-code-point/package.json +0 -42
  137. package/node_modules/is-fullwidth-code-point/readme.md +0 -39
  138. package/node_modules/set-blocking/LICENSE.txt +0 -14
  139. package/node_modules/set-blocking/README.md +0 -31
  140. package/node_modules/set-blocking/index.js +0 -7
  141. package/node_modules/set-blocking/package.json +0 -42
  142. package/node_modules/signal-exit/LICENSE.txt +0 -16
  143. package/node_modules/signal-exit/README.md +0 -74
  144. package/node_modules/signal-exit/dist/cjs/browser.d.ts +0 -12
  145. package/node_modules/signal-exit/dist/cjs/browser.d.ts.map +0 -1
  146. package/node_modules/signal-exit/dist/cjs/browser.js +0 -10
  147. package/node_modules/signal-exit/dist/cjs/browser.js.map +0 -1
  148. package/node_modules/signal-exit/dist/cjs/index.d.ts +0 -48
  149. package/node_modules/signal-exit/dist/cjs/index.d.ts.map +0 -1
  150. package/node_modules/signal-exit/dist/cjs/index.js +0 -279
  151. package/node_modules/signal-exit/dist/cjs/index.js.map +0 -1
  152. package/node_modules/signal-exit/dist/cjs/package.json +0 -3
  153. package/node_modules/signal-exit/dist/cjs/signals.d.ts +0 -29
  154. package/node_modules/signal-exit/dist/cjs/signals.d.ts.map +0 -1
  155. package/node_modules/signal-exit/dist/cjs/signals.js +0 -42
  156. package/node_modules/signal-exit/dist/cjs/signals.js.map +0 -1
  157. package/node_modules/signal-exit/dist/mjs/browser.d.ts +0 -12
  158. package/node_modules/signal-exit/dist/mjs/browser.d.ts.map +0 -1
  159. package/node_modules/signal-exit/dist/mjs/browser.js +0 -4
  160. package/node_modules/signal-exit/dist/mjs/browser.js.map +0 -1
  161. package/node_modules/signal-exit/dist/mjs/index.d.ts +0 -48
  162. package/node_modules/signal-exit/dist/mjs/index.d.ts.map +0 -1
  163. package/node_modules/signal-exit/dist/mjs/index.js +0 -275
  164. package/node_modules/signal-exit/dist/mjs/index.js.map +0 -1
  165. package/node_modules/signal-exit/dist/mjs/package.json +0 -3
  166. package/node_modules/signal-exit/dist/mjs/signals.d.ts +0 -29
  167. package/node_modules/signal-exit/dist/mjs/signals.d.ts.map +0 -1
  168. package/node_modules/signal-exit/dist/mjs/signals.js +0 -39
  169. package/node_modules/signal-exit/dist/mjs/signals.js.map +0 -1
  170. package/node_modules/signal-exit/package.json +0 -106
  171. package/node_modules/string-width/index.d.ts +0 -29
  172. package/node_modules/string-width/index.js +0 -47
  173. package/node_modules/string-width/license +0 -9
  174. package/node_modules/string-width/package.json +0 -56
  175. package/node_modules/string-width/readme.md +0 -50
  176. package/node_modules/strip-ansi/index.d.ts +0 -17
  177. package/node_modules/strip-ansi/index.js +0 -4
  178. package/node_modules/strip-ansi/license +0 -9
  179. package/node_modules/strip-ansi/package.json +0 -54
  180. package/node_modules/strip-ansi/readme.md +0 -46
  181. package/node_modules/wide-align/LICENSE +0 -14
  182. package/node_modules/wide-align/README.md +0 -47
  183. package/node_modules/wide-align/align.js +0 -65
  184. package/node_modules/wide-align/package.json +0 -33
package/.jsii CHANGED
@@ -3941,7 +3941,7 @@
3941
3941
  },
3942
3942
  "description": "Core CDK Construct for patterns library",
3943
3943
  "homepage": "https://github.com/awslabs/aws-solutions-constructs.git",
3944
- "jsiiVersion": "5.7.4 (build fc2a28e)",
3944
+ "jsiiVersion": "5.7.8 (build 2bc6834)",
3945
3945
  "license": "Apache-2.0",
3946
3946
  "metadata": {
3947
3947
  "jsii": {
@@ -5680,7 +5680,7 @@
5680
5680
  "kind": "interface",
5681
5681
  "locationInModule": {
5682
5682
  "filename": "lib/sagemaker-helper.ts",
5683
- "line": 328
5683
+ "line": 333
5684
5684
  },
5685
5685
  "name": "BuildSagemakerEndpointProps",
5686
5686
  "properties": [
@@ -5693,7 +5693,7 @@
5693
5693
  "immutable": true,
5694
5694
  "locationInModule": {
5695
5695
  "filename": "lib/sagemaker-helper.ts",
5696
- "line": 346
5696
+ "line": 351
5697
5697
  },
5698
5698
  "name": "endpointConfigProps",
5699
5699
  "optional": true,
@@ -5710,7 +5710,7 @@
5710
5710
  "immutable": true,
5711
5711
  "locationInModule": {
5712
5712
  "filename": "lib/sagemaker-helper.ts",
5713
- "line": 352
5713
+ "line": 357
5714
5714
  },
5715
5715
  "name": "endpointProps",
5716
5716
  "optional": true,
@@ -5727,7 +5727,7 @@
5727
5727
  "immutable": true,
5728
5728
  "locationInModule": {
5729
5729
  "filename": "lib/sagemaker-helper.ts",
5730
- "line": 334
5730
+ "line": 339
5731
5731
  },
5732
5732
  "name": "existingSagemakerEndpointObj",
5733
5733
  "optional": true,
@@ -5744,7 +5744,7 @@
5744
5744
  "immutable": true,
5745
5745
  "locationInModule": {
5746
5746
  "filename": "lib/sagemaker-helper.ts",
5747
- "line": 340
5747
+ "line": 345
5748
5748
  },
5749
5749
  "name": "modelProps",
5750
5750
  "optional": true,
@@ -5761,7 +5761,7 @@
5761
5761
  "immutable": true,
5762
5762
  "locationInModule": {
5763
5763
  "filename": "lib/sagemaker-helper.ts",
5764
- "line": 358
5764
+ "line": 363
5765
5765
  },
5766
5766
  "name": "vpc",
5767
5767
  "optional": true,
@@ -5779,7 +5779,7 @@
5779
5779
  "kind": "interface",
5780
5780
  "locationInModule": {
5781
5781
  "filename": "lib/sagemaker-helper.ts",
5782
- "line": 361
5782
+ "line": 366
5783
5783
  },
5784
5784
  "name": "BuildSagemakerEndpointResponse",
5785
5785
  "properties": [
@@ -5788,7 +5788,7 @@
5788
5788
  "immutable": true,
5789
5789
  "locationInModule": {
5790
5790
  "filename": "lib/sagemaker-helper.ts",
5791
- "line": 362
5791
+ "line": 367
5792
5792
  },
5793
5793
  "name": "endpoint",
5794
5794
  "type": {
@@ -5800,7 +5800,7 @@
5800
5800
  "immutable": true,
5801
5801
  "locationInModule": {
5802
5802
  "filename": "lib/sagemaker-helper.ts",
5803
- "line": 363
5803
+ "line": 368
5804
5804
  },
5805
5805
  "name": "endpointConfig",
5806
5806
  "optional": true,
@@ -5813,7 +5813,7 @@
5813
5813
  "immutable": true,
5814
5814
  "locationInModule": {
5815
5815
  "filename": "lib/sagemaker-helper.ts",
5816
- "line": 364
5816
+ "line": 369
5817
5817
  },
5818
5818
  "name": "model",
5819
5819
  "optional": true,
@@ -6602,7 +6602,7 @@
6602
6602
  "kind": "interface",
6603
6603
  "locationInModule": {
6604
6604
  "filename": "lib/utils.ts",
6605
- "line": 223
6605
+ "line": 225
6606
6606
  },
6607
6607
  "name": "CfnNagSuppressRule",
6608
6608
  "properties": [
@@ -6611,7 +6611,7 @@
6611
6611
  "immutable": true,
6612
6612
  "locationInModule": {
6613
6613
  "filename": "lib/utils.ts",
6614
- "line": 224
6614
+ "line": 226
6615
6615
  },
6616
6616
  "name": "id",
6617
6617
  "type": {
@@ -6623,7 +6623,7 @@
6623
6623
  "immutable": true,
6624
6624
  "locationInModule": {
6625
6625
  "filename": "lib/utils.ts",
6626
- "line": 225
6626
+ "line": 227
6627
6627
  },
6628
6628
  "name": "reason",
6629
6629
  "type": {
@@ -6756,7 +6756,7 @@
6756
6756
  "kind": "interface",
6757
6757
  "locationInModule": {
6758
6758
  "filename": "lib/cloudfront-distribution-helper.ts",
6759
- "line": 328
6759
+ "line": 326
6760
6760
  },
6761
6761
  "name": "CloudFrontProps",
6762
6762
  "properties": [
@@ -6765,7 +6765,7 @@
6765
6765
  "immutable": true,
6766
6766
  "locationInModule": {
6767
6767
  "filename": "lib/cloudfront-distribution-helper.ts",
6768
- "line": 329
6768
+ "line": 327
6769
6769
  },
6770
6770
  "name": "insertHttpSecurityHeaders",
6771
6771
  "optional": true,
@@ -6778,7 +6778,7 @@
6778
6778
  "immutable": true,
6779
6779
  "locationInModule": {
6780
6780
  "filename": "lib/cloudfront-distribution-helper.ts",
6781
- "line": 330
6781
+ "line": 328
6782
6782
  },
6783
6783
  "name": "responseHeadersPolicyProps",
6784
6784
  "optional": true,
@@ -7489,7 +7489,7 @@
7489
7489
  "kind": "interface",
7490
7490
  "locationInModule": {
7491
7491
  "filename": "lib/sagemaker-helper.ts",
7492
- "line": 389
7492
+ "line": 394
7493
7493
  },
7494
7494
  "name": "DeploySagemakerEndpointResponse",
7495
7495
  "properties": [
@@ -7498,7 +7498,7 @@
7498
7498
  "immutable": true,
7499
7499
  "locationInModule": {
7500
7500
  "filename": "lib/sagemaker-helper.ts",
7501
- "line": 390
7501
+ "line": 395
7502
7502
  },
7503
7503
  "name": "endpoint",
7504
7504
  "type": {
@@ -7510,7 +7510,7 @@
7510
7510
  "immutable": true,
7511
7511
  "locationInModule": {
7512
7512
  "filename": "lib/sagemaker-helper.ts",
7513
- "line": 391
7513
+ "line": 396
7514
7514
  },
7515
7515
  "name": "endpointConfig",
7516
7516
  "optional": true,
@@ -7523,7 +7523,7 @@
7523
7523
  "immutable": true,
7524
7524
  "locationInModule": {
7525
7525
  "filename": "lib/sagemaker-helper.ts",
7526
- "line": 392
7526
+ "line": 397
7527
7527
  },
7528
7528
  "name": "model",
7529
7529
  "optional": true,
@@ -7886,7 +7886,7 @@
7886
7886
  "kind": "interface",
7887
7887
  "locationInModule": {
7888
7888
  "filename": "lib/kinesis-streams-helper.ts",
7889
- "line": 100
7889
+ "line": 99
7890
7890
  },
7891
7891
  "name": "KinesisStreamProps",
7892
7892
  "properties": [
@@ -7895,7 +7895,7 @@
7895
7895
  "immutable": true,
7896
7896
  "locationInModule": {
7897
7897
  "filename": "lib/kinesis-streams-helper.ts",
7898
- "line": 101
7898
+ "line": 100
7899
7899
  },
7900
7900
  "name": "existingStreamObj",
7901
7901
  "optional": true,
@@ -7908,7 +7908,7 @@
7908
7908
  "immutable": true,
7909
7909
  "locationInModule": {
7910
7910
  "filename": "lib/kinesis-streams-helper.ts",
7911
- "line": 102
7911
+ "line": 101
7912
7912
  },
7913
7913
  "name": "kinesisStreamProps",
7914
7914
  "optional": true,
@@ -7966,7 +7966,7 @@
7966
7966
  "kind": "interface",
7967
7967
  "locationInModule": {
7968
7968
  "filename": "lib/mediastore-helper.ts",
7969
- "line": 44
7969
+ "line": 42
7970
7970
  },
7971
7971
  "name": "MediaStoreProps",
7972
7972
  "properties": [
@@ -7975,7 +7975,7 @@
7975
7975
  "immutable": true,
7976
7976
  "locationInModule": {
7977
7977
  "filename": "lib/mediastore-helper.ts",
7978
- "line": 45
7978
+ "line": 43
7979
7979
  },
7980
7980
  "name": "existingMediaStoreContainerObj",
7981
7981
  "optional": true,
@@ -7988,7 +7988,7 @@
7988
7988
  "immutable": true,
7989
7989
  "locationInModule": {
7990
7990
  "filename": "lib/mediastore-helper.ts",
7991
- "line": 46
7991
+ "line": 44
7992
7992
  },
7993
7993
  "name": "mediaStoreContainerProps",
7994
7994
  "optional": true,
@@ -8552,7 +8552,7 @@
8552
8552
  "kind": "interface",
8553
8553
  "locationInModule": {
8554
8554
  "filename": "lib/sagemaker-helper.ts",
8555
- "line": 560
8555
+ "line": 562
8556
8556
  },
8557
8557
  "name": "SagemakerProps",
8558
8558
  "properties": [
@@ -8561,7 +8561,7 @@
8561
8561
  "immutable": true,
8562
8562
  "locationInModule": {
8563
8563
  "filename": "lib/sagemaker-helper.ts",
8564
- "line": 562
8564
+ "line": 564
8565
8565
  },
8566
8566
  "name": "endpointProps",
8567
8567
  "optional": true,
@@ -8574,7 +8574,7 @@
8574
8574
  "immutable": true,
8575
8575
  "locationInModule": {
8576
8576
  "filename": "lib/sagemaker-helper.ts",
8577
- "line": 561
8577
+ "line": 563
8578
8578
  },
8579
8579
  "name": "existingSagemakerEndpointObj",
8580
8580
  "optional": true,
@@ -8592,7 +8592,7 @@
8592
8592
  "kind": "interface",
8593
8593
  "locationInModule": {
8594
8594
  "filename": "lib/secretsmanager-helper.ts",
8595
- "line": 50
8595
+ "line": 48
8596
8596
  },
8597
8597
  "name": "SecretsManagerProps",
8598
8598
  "properties": [
@@ -8601,7 +8601,7 @@
8601
8601
  "immutable": true,
8602
8602
  "locationInModule": {
8603
8603
  "filename": "lib/secretsmanager-helper.ts",
8604
- "line": 51
8604
+ "line": 49
8605
8605
  },
8606
8606
  "name": "existingSecretObj",
8607
8607
  "optional": true,
@@ -8614,7 +8614,7 @@
8614
8614
  "immutable": true,
8615
8615
  "locationInModule": {
8616
8616
  "filename": "lib/secretsmanager-helper.ts",
8617
- "line": 52
8617
+ "line": 50
8618
8618
  },
8619
8619
  "name": "secretProps",
8620
8620
  "optional": true,
@@ -9094,7 +9094,7 @@
9094
9094
  "kind": "interface",
9095
9095
  "locationInModule": {
9096
9096
  "filename": "lib/vpc-helper.ts",
9097
- "line": 277
9097
+ "line": 274
9098
9098
  },
9099
9099
  "name": "VpcPropsSet",
9100
9100
  "properties": [
@@ -9103,7 +9103,7 @@
9103
9103
  "immutable": true,
9104
9104
  "locationInModule": {
9105
9105
  "filename": "lib/vpc-helper.ts",
9106
- "line": 280
9106
+ "line": 277
9107
9107
  },
9108
9108
  "name": "deployVpc",
9109
9109
  "optional": true,
@@ -9116,7 +9116,7 @@
9116
9116
  "immutable": true,
9117
9117
  "locationInModule": {
9118
9118
  "filename": "lib/vpc-helper.ts",
9119
- "line": 278
9119
+ "line": 275
9120
9120
  },
9121
9121
  "name": "existingVpc",
9122
9122
  "optional": true,
@@ -9129,7 +9129,7 @@
9129
9129
  "immutable": true,
9130
9130
  "locationInModule": {
9131
9131
  "filename": "lib/vpc-helper.ts",
9132
- "line": 279
9132
+ "line": 276
9133
9133
  },
9134
9134
  "name": "vpcProps",
9135
9135
  "optional": true,
@@ -9147,7 +9147,7 @@
9147
9147
  "kind": "interface",
9148
9148
  "locationInModule": {
9149
9149
  "filename": "lib/waf-helper.ts",
9150
- "line": 54
9150
+ "line": 52
9151
9151
  },
9152
9152
  "name": "WafWebAclProps",
9153
9153
  "properties": [
@@ -9156,7 +9156,7 @@
9156
9156
  "immutable": true,
9157
9157
  "locationInModule": {
9158
9158
  "filename": "lib/waf-helper.ts",
9159
- "line": 55
9159
+ "line": 53
9160
9160
  },
9161
9161
  "name": "existingWebaclObj",
9162
9162
  "type": {
@@ -9168,7 +9168,7 @@
9168
9168
  "immutable": true,
9169
9169
  "locationInModule": {
9170
9170
  "filename": "lib/waf-helper.ts",
9171
- "line": 56
9171
+ "line": 54
9172
9172
  },
9173
9173
  "name": "webaclProps",
9174
9174
  "type": {
@@ -9179,6 +9179,6 @@
9179
9179
  "symbolId": "lib/waf-helper:WafWebAclProps"
9180
9180
  }
9181
9181
  },
9182
- "version": "2.77.0",
9183
- "fingerprint": "Tfu2AiUOdTu7SVj8PfeH7iboFEN6yfccXT5Sjfpuogc="
9182
+ "version": "2.78.1",
9183
+ "fingerprint": "87r/wOtlRONnlL30ZPZHeLJXrdXaq+svkgIgpO62BlE="
9184
9184
  }
package/lib/alb-helper.js CHANGED
@@ -55,8 +55,7 @@ function ObtainAlb(scope, id, props) {
55
55
  * @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
56
56
  */
57
57
  function AddListener(scope, id, loadBalancer, listenerProps) {
58
- let consolidatedListenerProps;
59
- consolidatedListenerProps = (0, utils_1.consolidateProps)((0, alb_defaults_1.DefaultListenerProps)(loadBalancer), listenerProps);
58
+ const consolidatedListenerProps = (0, utils_1.consolidateProps)((0, alb_defaults_1.DefaultListenerProps)(loadBalancer), listenerProps);
60
59
  // create the listener
61
60
  const listener = new elb.ApplicationListener(scope, `${id}-listener`, consolidatedListenerProps);
62
61
  loadBalancer.listeners.push(listener);
@@ -210,4 +209,4 @@ function ValidateAddListenerProps(props) {
210
209
  }
211
210
  return false;
212
211
  }
213
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxiLWhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImFsYi1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7OztHQVdHOztBQW1DSCw4QkF1QkM7QUFLRCxrQ0F3REM7QUFTRCwwQ0F3QkM7QUFLRCw0Q0F1QkM7QUFTRCw4Q0FZQztBQUtELHNDQW1FQztBQS9RRDs7O0dBR0c7QUFFSCw4REFBOEQ7QUFNOUQsdUZBQThGO0FBQzlGLHVFQUF1RTtBQUN2RSxtQ0FBeUQ7QUFDekQsaURBQXNEO0FBQ3RELHlEQUE0RDtBQUM1RCw2REFBc0Q7QUFXdEQ7Ozs7O0dBS0c7QUFDSCxTQUFnQixTQUFTLENBQ3ZCLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixLQUFxQjtJQUVyQixJQUFJLFlBQXlDLENBQUM7SUFFOUMsSUFBSSxLQUFLLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztRQUNsQyxZQUFZLEdBQUcsS0FBSyxDQUFDLHVCQUF1QixDQUFDO0lBQy9DLENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxpQkFBaUIsR0FBRyxJQUFBLHdCQUFnQixFQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxHQUFHLEVBQUUsS0FBSyxDQUFDLEdBQUcsRUFBRSxjQUFjLEVBQUUsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDN0gsWUFBWSxHQUFHLElBQUksR0FBRyxDQUFDLHVCQUF1QixDQUM1QyxLQUFLLEVBQ0wsR0FBRyxFQUFFLE1BQU0sRUFDWCxpQkFBaUIsQ0FDbEIsQ0FBQztRQUNGLElBQUksS0FBSyxDQUFDLGFBQWEsS0FBSyxTQUFTLElBQUksS0FBSyxDQUFDLGFBQWEsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUN0RSxNQUFNLDhCQUE4QixHQUFHLElBQUEsd0JBQWdCLEVBQUMsSUFBQSxtQ0FBYyxHQUFFLEVBQUUsS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7WUFDcEcsTUFBTSxhQUFh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QUFVLEdBQUcsSUFBSSxDQUFDO1lBQ2xCLGFBQWEsSUFBSSw0SUFBNEksQ0FBQztRQUNoSyxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksS0FBSyxDQUFDLHVCQUF1QixFQUFFLENBQUM7UUFDbEMsSUFBQSxvQkFBWSxFQUNWLGlHQUFpRyxDQUNsRyxDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksVUFBVSxFQUFFLENBQUM7UUFDZixNQUFNLElBQUksS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7QUFFSCxDQUFDO0FBRUQsU0FBUyx3QkFBd0IsQ0FBQyxLQUFVO0lBQzFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyx1QkFBdUI7UUFDakMsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDO1FBQ3JELENBQUMsS0FBSyxDQUFDLHVCQUF1QixDQUFDO1FBQ2pDLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogIENvcHlyaWdodCBBbWF6b24uY29tLCBJbmMuIG9yIGl0cyBhZmZpbGlhdGVzLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpLiBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4gKiAgd2l0aCB0aGUgTGljZW5zZS4gQSBjb3B5IG9mIHRoZSBMaWNlbnNlIGlzIGxvY2F0ZWQgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqICBvciBpbiB0aGUgJ2xpY2Vuc2UnIGZpbGUgYWNjb21wYW55aW5nIHRoaXMgZmlsZS4gVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICdBUyBJUycgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFU1xuICogIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zXG4gKiAgYW5kIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qXG4gKiAgVGhlIGZ1bmN0aW9ucyBmb3VuZCBoZXJlIGluIHRoZSBjb3JlIGxpYnJhcnkgYXJlIGZvciBpbnRlcm5hbCB1c2UgYW5kIGNhbiBiZSBjaGFuZ2VkXG4gKiAgb3IgcmVtb3ZlZCBvdXRzaWRlIG9mIGEgbWFqb3IgcmVsZWFzZS4gV2UgcmVjb21tZW5kIGFnYWluc3QgY2FsbGluZyB0aGVtIGRpcmVjdGx5IGZyb20gY2xpZW50IGNvZGUuXG4gKi9cblxuaW1wb3J0ICogYXMgZWxiIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2MlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCAqIGFzIGVjMiBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiO1xuaW1wb3J0ICogYXMgczMgZnJvbSBcImF3cy1jZGstbGliL2F3cy1zM1wiO1xuaW1wb3J0ICogYXMgZWNzIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWNzXCI7XG5pbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGFcIjtcbmltcG9ydCB7IEFwcGxpY2F0aW9uUHJvdG9jb2wsIExpc3RlbmVyQWN0aW9uLCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2MlwiO1xuaW1wb3J0ICogYXMgZWxidCBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVsYXN0aWNsb2FkYmFsYW5jaW5ndjItdGFyZ2V0c1wiO1xuaW1wb3J0IHsgcHJpbnRXYXJuaW5nLCBjb25zb2xpZGF0ZVByb3BzIH0gZnJvbSBcIi4vdXRpbHNcIjtcbmltcG9ydCB7IERlZmF1bHRMaXN0ZW5lclByb3BzIH0gZnJvbSBcIi4vYWxiLWRlZmF1bHRzXCI7XG5pbXBvcnQgeyBjcmVhdGVBbGJMb2dnaW5nQnVja2V0IH0gZnJvbSBcIi4vczMtYnVja2V0LWhlbHBlclwiO1xuaW1wb3J0IHsgRGVmYXVsdFMzUHJvcHMgfSBmcm9tIFwiLi9zMy1idWNrZXQtZGVmYXVsdHNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBPYnRhaW5BbGJQcm9wcyB7XG4gIHJlYWRvbmx5IHZwYzogZWMyLklWcGMsXG4gIHJlYWRvbmx5IHB1YmxpY0FwaTogYm9vbGVhbixcbiAgcmVhZG9ubHkgZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmo/OiBlbGIuQXBwbGljYXRpb25Mb2FkQmFsYW5jZXIsXG4gIHJlYWRvbmx5IGxvYWRCYWxhbmNlclByb3BzPzogZWxiLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyUHJvcHMgfCBhbnksXG4gIHJlYWRvbmx5IGxvZ0FjY2Vzc0xvZ3M/OiBib29sZWFuLFxuICByZWFkb25seSBsb2dnaW5nQnVja2V0UHJvcHM/OiBzMy5CdWNrZXRQcm9wc1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbCBUaGlzIGlzIGFuIGludGVybmFsIGNvcmUgZnVuY3Rpb24gYW5kIHNob3VsZCBub3QgYmUgY2FsbGVkIGRpcmVjdGx5IGJ5IFNvbHV0aW9ucyBDb25zdHJ1Y3RzIGNsaWVudHMuXG4gKlxuICogUmV0dXJucyB0aGUgY29ycmVjdCBBTEIgTG9hZCBCYWxhbmNlciB0byB1c2UgaW4gdGhpcyBjb25zdHJ1Y3QsIGVpdGhlciBhbiBleGlzdGluZ1xuICogb25lIHByb3ZpZGVkIGFzIGFuIGFyZ3VtZW50IG9yIGNyZWF0ZSAgbmV3IG9uZSBvdGhlcndpc2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBPYnRhaW5BbGIoXG4gIHNjb3BlOiBDb25zdHJ1Y3QsXG4gIGlkOiBzdHJpbmcsXG4gIHByb3BzOiBPYnRhaW5BbGJQcm9wc1xuKTogZWxiLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyIHtcbiAgbGV0IGxvYWRCYWxhbmNlcjogZWxiLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyO1xuXG4gIGlmIChwcm9wcy5leGlzdGluZ0xvYWRCYWxhbmNlck9iaikge1xuICAgIGxvYWRCYWxhbmNlciA9IHByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IGNvbnNvbGlkYXRlZFByb3BzID0gY29uc29saWRhdGVQcm9wcyh7fSwgcHJvcHMubG9hZEJhbGFuY2VyUHJvcHMsIHsgdnBjOiBwcm9wcy52cGMsIGludGVybmV0RmFjaW5nOiBwcm9wcy5wdWJsaWNBcGkgfSk7XG4gICAgbG9hZEJhbGFuY2VyID0gbmV3IGVsYi5BcHBsaWNhdGlvbkxvYWRCYWxhbmNlcihcbiAgICAgIHNjb3BlLFxuICAgICAgYCR7aWR9LWFsYmAsXG4gICAgICBjb25zb2xpZGF0ZWRQcm9wc1xuICAgICk7XG4gICAgaWYgKHByb3BzLmxvZ0FjY2Vzc0xvZ3MgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5sb2dBY2Nlc3NMb2dzID09PSB0cnVlKSB7XG4gICAgICBjb25zdCBjb25zb2xpZGF0ZWRMb2dnaW5nQnVja2V0UHJvcHMgPSBjb25zb2xpZGF0ZVByb3BzKERlZmF1bHRTM1Byb3BzKCksIHByb3BzLmxvZ2dpbmdCdWNrZXRQcm9wcyk7XG4gICAgICBjb25zdCBsb2dnaW5nQnVja2V0ID0gY3JlYXRlQWxiTG9nZ2luZ0J1Y2tldChzY29wZSwgaWQsIGNvbnNvbGlkYXRlZExvZ2dpbmdCdWNrZXRQcm9wcyk7XG4gICAgICBsb2FkQmFsYW5jZXIubG9nQWNjZXNzTG9ncyhsb2dnaW5nQnVja2V0KTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGxvYWRCYWxhbmNlcjtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWwgVGhpcyBpcyBhbiBpbnRlcm5hbCBjb3JlIGZ1bmN0aW9uIGFuZCBzaG91bGQgbm90IGJlIGNhbGxlZCBkaXJlY3RseSBieSBTb2x1dGlvbnMgQ29uc3RydWN0cyBjbGllbnRzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gQWRkTGlzdGVuZXIoXG4gIHNjb3BlOiBDb25zdHJ1Y3QsXG4gIGlkOiBzdHJpbmcsXG4gIGxvYWRCYWxhbmNlcjogZWxiLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyLFxuICBsaXN0ZW5lclByb3BzOiBlbGIuQXBwbGljYXRpb25MaXN0ZW5lclByb3BzIHwgYW55XG4pOiBlbGIuQXBwbGljYXRpb25MaXN0ZW5lciB7XG4gIGxldCBjb25zb2xpZGF0ZWRMaXN0ZW5lclByb3BzOiBlbGIuQXBwbGljYXRpb25MaXN0ZW5lclByb3BzO1xuXG4gIGNvbnNvbGlkYXRlZExpc3RlbmVyUHJvcHMgPSBjb25zb2xpZGF0ZVByb3BzKERlZmF1bHRMaXN0ZW5lclByb3BzKGxvYWRCYWxhbmNlciksIGxpc3RlbmVyUHJvcHMpO1xuXG4gIC8vICBjcmVhdGUgdGhlIGxpc3RlbmVyXG4gIGNvbnN0IGxpc3RlbmVyID0gbmV3IGVsYi5BcHBsaWNhdGlvbkxpc3RlbmVyKFxuICAgIHNjb3BlLFxuICAgIGAke2lkfS1saXN0ZW5lcmAsXG4gICAgY29uc29saWRhdGVkTGlzdGVuZXJQcm9wc1xuICApO1xuICBsb2FkQmFsYW5jZXIubGlzdGVuZXJzLnB1c2gobGlzdGVuZXIpO1xuXG4gIGlmIChjb25zb2xpZGF0ZWRMaXN0ZW5lclByb3BzLnByb3RvY29sID09PSBlbGIuQXBwbGljYXRpb25Qcm90b2NvbC5IVFRQKSB7XG4gICAgLy8gVGhpcyB3aWxsIHVzZSBjb3JlLnByaW50V2FybmluZyBpbiB0aGUgYWN0dWFsIGNvbnN0cnVjdFxuICAgIHByaW50V2FybmluZyhcbiAgICAgIFwiQVdTIHJlY29tbWVuZHMgZW5jcnlwdGluZyB0cmFmZmljIHRvIGFuIEFwcGxpY2F0aW9uIExvYWQgQmFsYW5jZXIgdXNpbmcgSFRUUFMuXCJcbiAgICApO1xuICAgIGlmIChsaXN0ZW5lclByb3BzLmNlcnRpZmljYXRlcz8ubGVuZ3RoID4gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSFRUUCBsaXN0ZW5lcnMgY2Fubm90IHVzZSBhIGNlcnRpZmljYXRlXCIpO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBpZiAoIWxpc3RlbmVyUHJvcHMuY2VydGlmaWNhdGVzIHx8IGxpc3RlbmVyUHJvcHMuY2VydGlmaWNhdGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQSBsaXN0ZW5lciB1c2luZyBIVFRQUyBwcm90b2NvbCByZXF1aXJlcyBhIGNlcnRpZmljYXRlXCIpO1xuICAgIH1cblxuICAgIGxpc3RlbmVyLmFkZENlcnRpZmljYXRlcyhgJHtpZH0tY2VydGAsIGxpc3RlbmVyUHJvcHMuY2VydGlmaWNhdGVzKTtcbiAgfVxuXG4gIGlmIChjb25zb2xpZGF0ZWRMaXN0ZW5lclByb3BzLnByb3RvY29sID09PSBlbGIuQXBwbGljYXRpb25Qcm90b2NvbC5IVFRQUykge1xuICAgIGNvbnN0IG9wdDogZWxiLlJlZGlyZWN0T3B0aW9ucyA9IHtcbiAgICAgIHBvcnQ6IFwiNDQzXCIsXG4gICAgICBwcm90b2NvbDogXCJIVFRQU1wiLFxuICAgIH07XG5cbiAgICAvLyBOT1NPTkFSOiAodHlwZXNjcmlwdDpTNTMzMilcbiAgICAvLyBUaGlzIGxpc3RlbmVyIGlzIGV4cGxpY2l0bHkgY3JlYXRlZCB0byByZWRpcmVjdCBub24gVExTIGNvbm5lY3Rpb25zXG4gICAgLy8gVGhlIGxhY2sgb2YgU1NML1RMUyBpcyBpbnRlbnRpb25hbFxuICAgIGNvbnN0IGh0dHBMaXN0ZW5lciA9IG5ldyBlbGIuQXBwbGljYXRpb25MaXN0ZW5lcihcbiAgICAgIHNjb3BlLFxuICAgICAgYCR7aWR9LXJlZGlyZWN0YCxcbiAgICAgIHtcbiAgICAgICAgbG9hZEJhbGFuY2VyLFxuICAgICAgICBwcm90b2NvbDogQXBwbGljYXRpb25Qcm90b2NvbC5IVFRQLCAvLyBOT1NPTkFSXG4gICAgICAgIGRlZmF1bHRBY3Rpb246IExpc3RlbmVyQWN0aW9uLnJlZGlyZWN0KG9wdCksXG4gICAgICB9XG4gICAgKTtcbiAgICBsb2FkQmFsYW5jZXIubGlzdGVuZXJzLnB1c2goaHR0cExpc3RlbmVyKTtcbiAgfVxuXG4gIHJldHVybiBsaXN0ZW5lcjtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWwgVGhpcyBpcyBhbiBpbnRlcm5hbCBjb3JlIGZ1bmN0aW9uIGFuZCBzaG91bGQgbm90IGJlIGNhbGxlZCBkaXJlY3RseSBieSBTb2x1dGlvbnMgQ29uc3RydWN0cyBjbGllbnRzLlxuICpcbiAqIENyZWF0ZXMgYSBUYXJnZXQgR3JvdXAgZm9yIExhbWJkYSBmdW5jdGlvbnMgYW5kIGFkZHMgdGhlXG4gKiBwcm92aWRlZCBmdW5jdGlvbnMgYXMgYSB0YXJnZXQgdG8gdGhhdCBncm91cC4gVGhlbiBhZGRzXG4gKiB0aGUgbmV3IFRhcmdldCBHcm91cCB0byB0aGUgcHJvdmlkZWQgTGlzdGVuZXIuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBBZGRMYW1iZGFUYXJnZXQoXG4gIHNjb3BlOiBDb25zdHJ1Y3QsXG4gIGlkOiBzdHJpbmcsXG4gIGN1cnJlbnRMaXN0ZW5lcjogZWxiLkFwcGxpY2F0aW9uTGlzdGVuZXIsXG4gIGxhbWJkYUZ1bmN0aW9uOiBsYW1iZGEuSUZ1bmN0aW9uLFxuICBydWxlUHJvcHM/OiBlbGIuQWRkUnVsZVByb3BzLFxuICB0YXJnZXRQcm9wcz86IGVsYi5BcHBsaWNhdGlvblRhcmdldEdyb3VwUHJvcHMsXG4pOiBlbGIuQXBwbGljYXRpb25UYXJnZXRHcm91cCAge1xuXG4gIC8vICBDcmVhdGUgdGhlIHRhcmdldCBhbmQgYXNzaWduIGl0IHRvIGEgbmV3IHRhcmdldCBncm91cFxuICBjb25zdCBsYW1iZGFUYXJnZXQgPSBuZXcgZWxidC5MYW1iZGFUYXJnZXQobGFtYmRhRnVuY3Rpb24pO1xuICBjb25zdCBuZXdUYXJnZXRHcm91cCA9IG5ldyBlbGIuQXBwbGljYXRpb25UYXJnZXRHcm91cChzY29wZSwgYCR7aWR9LXRnYCwge1xuICAgIHRhcmdldHM6IFtsYW1iZGFUYXJnZXRdLFxuICAgIHRhcmdldEdyb3VwTmFtZTogdGFyZ2V0UHJvcHMgPyB0YXJnZXRQcm9wcy50YXJnZXRHcm91cE5hbWUgOiB1bmRlZmluZWQsXG4gICAgaGVhbHRoQ2hlY2s6IHRhcmdldFByb3BzID8gdGFyZ2V0UHJvcHMuaGVhbHRoQ2hlY2sgOiB1bmRlZmluZWRcbiAgfSk7XG5cbiAgLy8gVGhlIGludGVyZmFjZSBBZGRSdWxlUHJvcHMgaW5jbHVkZXMgY29uZGl0aW9ucyBhbmQgcHJpb3JpdHksIGNvbWJpbmUgdGhhdFxuICAvLyB3aXRoIHRhcmdldEdyb3VwcyBhbmQgd2UgY2FuIGFzc2VtYmxlIEFkZEFwcGxpY2F0aW9uVGFyZ2V0R3JvdXBQcm9wc1xuICBjb25zdCBjb25zb2xpZGF0ZWRUYXJnZXRQcm9wcyA9IGNvbnNvbGlkYXRlUHJvcHMoe30sIHJ1bGVQcm9wcywgeyB0YXJnZXRHcm91cHM6IFtuZXdUYXJnZXRHcm91cF0gfSk7XG4gIGN1cnJlbnRMaXN0ZW5lci5hZGRUYXJnZXRHcm91cHMoYCR7c2NvcGUubm9kZS5pZH0tdGFyZ2V0c2AsIGNvbnNvbGlkYXRlZFRhcmdldFByb3BzKTtcblxuICBuZXdUYXJnZXRHcm91cC5zZXRBdHRyaWJ1dGUoJ3N0aWNraW5lc3MuZW5hYmxlZCcsIHVuZGVmaW5lZCk7XG4gIHJldHVybiBuZXdUYXJnZXRHcm91cDtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWwgVGhpcyBpcyBhbiBpbnRlcm5hbCBjb3JlIGZ1bmN0aW9uIGFuZCBzaG91bGQgbm90IGJlIGNhbGxlZCBkaXJlY3RseSBieSBTb2x1dGlvbnMgQ29uc3RydWN0cyBjbGllbnRzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gQWRkRmFyZ2F0ZVRhcmdldChcbiAgc2NvcGU6IENvbnN0cnVjdCxcbiAgaWQ6IHN0cmluZyxcbiAgY3VycmVudExpc3RlbmVyOiBlbGIuQXBwbGljYXRpb25MaXN0ZW5lcixcbiAgZmFyZ2F0ZVNlcnZpY2U6IGVjcy5GYXJnYXRlU2VydmljZSxcbiAgcnVsZVByb3BzPzogZWxiLkFkZFJ1bGVQcm9wcyxcbiAgdGFyZ2V0UHJvcHM/OiBlbGIuQXBwbGljYXRpb25UYXJnZXRHcm91cFByb3BzLFxuKTogZWxiLkFwcGxpY2F0aW9uVGFyZ2V0R3JvdXAgIHtcblxuICBpZiAodGFyZ2V0UHJvcHM/LnByb3RvY29sICE9PSBlbGIuQXBwbGljYXRpb25Qcm90b2NvbC5IVFRQUykge1xuICAgIHByaW50V2FybmluZygnQVdTIHJlY29tbWVuZHMgdXNpbmcgSFRUUFMgcHJvdG9jb2wgZm9yIFRhcmdldCBHcm91cHMgaW4gcHJvZHVjdGlvbiBhcHBsaWNhdGlvbnMnKTtcbiAgfVxuXG4gIGNvbnN0IG5ld1RhcmdldEdyb3VwID0gbmV3IGVsYi5BcHBsaWNhdGlvblRhcmdldEdyb3VwKHNjb3BlLCBgJHtpZH0tdGdgLCB0YXJnZXRQcm9wcyk7XG5cbiAgLy8gVGhlIGludGVyZmFjZSBBZGRSdWxlUHJvcHMgaW5jbHVkZXMgY29uZGl0aW9ucyBhbmQgcHJpb3JpdHksIGNvbWJpbmUgdGhhdFxuICAvLyB3aXRoIHRhcmdldEdyb3VwcyBhbmQgd2UgY2FuIGFzc2VtYmxlIGFuIEFkZEFwcGxpY2F0aW9uVGFyZ2V0R3JvdXBQcm9wcyBvYmplY3RcbiAgY29uc3QgY29uc29saWRhdGVkVGFyZ2V0UHJvcHMgPSBjb25zb2xpZGF0ZVByb3BzKHsgdGFyZ2V0R3JvdXBzOiBbbmV3VGFyZ2V0R3JvdXBdIH0sIHJ1bGVQcm9wcyk7XG5cbiAgY3VycmVudExpc3RlbmVyLmFkZFRhcmdldEdyb3VwcyhgJHtzY29wZS5ub2RlLmlkfS10YXJnZXRzYCwgY29uc29saWRhdGVkVGFyZ2V0UHJvcHMpO1xuICBuZXdUYXJnZXRHcm91cC5hZGRUYXJnZXQoZmFyZ2F0ZVNlcnZpY2UpO1xuXG4gIHJldHVybiBuZXdUYXJnZXRHcm91cDtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWwgVGhpcyBpcyBhbiBpbnRlcm5hbCBjb3JlIGZ1bmN0aW9uIGFuZCBzaG91bGQgbm90IGJlIGNhbGxlZCBkaXJlY3RseSBieSBTb2x1dGlvbnMgQ29uc3RydWN0cyBjbGllbnRzLlxuICpcbiAqIExvb2tzIGZvciB0aGUgbGlzdGVuZXIgYXNzb2NpYXRlZCB3aXRoIFRhcmdldCBHcm91cHNcbiAqIElmIHRoZXJlIGlzIGEgc2luZ2xlIGxpc3RlbmVyLCB0aGlzIHJldHVybnMgaXQgd2hldGhlciBpdCBpcyBIVFRQIG9yIEhUVFBTXG4gKiBJZiB0aGVyZSBhcmUgMiBsaXN0ZW5lcnMsIGl0IGZpbmRzIHRoZSBIVFRQUyBsaXN0ZW5lciAod2UgYXNzdW1lIHRoZSBIVFRQIGxpc3RlbmVyIHJlZGlyZWN0cyB0byBIVFRQUylcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEdldEFjdGl2ZUxpc3RlbmVyKGxpc3RlbmVyczogZWxiLkFwcGxpY2F0aW9uTGlzdGVuZXJbXSk6IGVsYi5BcHBsaWNhdGlvbkxpc3RlbmVyIHtcbiAgbGV0IGxpc3RlbmVyOiBlbGIuQXBwbGljYXRpb25MaXN0ZW5lcjtcblxuICBpZiAobGlzdGVuZXJzLmxlbmd0aCA9PT0gMCApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZXJlIGFyZSBubyBsaXN0ZW5lcnMgaW4gdGhlIEFMQmApO1xuICB9XG4gIGlmIChsaXN0ZW5lcnMubGVuZ3RoID09PSAxICkge1xuICAgIGxpc3RlbmVyID0gbGlzdGVuZXJzWzBdO1xuICB9IGVsc2Uge1xuICAgIGxpc3RlbmVyID0gbGlzdGVuZXJzLmZpbmQoaSA9PiAoaS5ub2RlLmNoaWxkcmVuWzBdIGFzIGVsYi5DZm5MaXN0ZW5lcikucHJvdG9jb2wgPT09IFwiSFRUUFNcIikgYXMgZWxiLkFwcGxpY2F0aW9uTGlzdGVuZXI7XG4gIH1cbiAgcmV0dXJuIGxpc3RlbmVyO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbCBUaGlzIGlzIGFuIGludGVybmFsIGNvcmUgZnVuY3Rpb24gYW5kIHNob3VsZCBub3QgYmUgY2FsbGVkIGRpcmVjdGx5IGJ5IFNvbHV0aW9ucyBDb25zdHJ1Y3RzIGNsaWVudHMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBDaGVja0FsYlByb3BzKHByb3BzOiBhbnkpIHtcbiAgbGV0IGVycm9yTWVzc2FnZXMgPSAnJztcbiAgbGV0IGVycm9yRm91bmQgPSBmYWxzZTtcblxuICBpZiAocHJvcHMubG9hZEJhbGFuY2VyUHJvcHMgJiYgcHJvcHMuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmopIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIEVpdGhlciBwcm92aWRlIGxvYWRCYWxhbmNlclByb3BzIG9yIGV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqLCBidXQgbm90IGJvdGguXFxuJztcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgfVxuXG4gIGlmICgocHJvcHM/LmxvZ0FsYkFjY2Vzc0xvZ3MgPT09IGZhbHNlKSAmJiAocHJvcHMuYWxiTG9nZ2luZ0J1Y2tldFByb3BzKSkge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gJ0Vycm9yIC0gSWYgbG9nQWxiQWNjZXNzTG9ncyBpcyBmYWxzZSwgc3VwcGx5aW5nIGFsYkxvZ2dpbmdCdWNrZXRQcm9wcyBpcyBpbnZhbGlkLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAocHJvcHMubGlzdGVuZXJQcm9wcz8uY2VydGlmaWNhdGVBcm5zKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSBcImNlcnRpZmljYXRlQXJucyBpcyBkZXByZWNhdGVkLiBQbGVhc2Ugc3VwcGx5IGNlcnRpZmljYXRlcyB1c2luZyBwcm9wcy5saXN0ZW5lclByb3BzLmNlcnRpZmljYXRlc1xcblwiO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKFZhbGlkYXRlQWRkTGlzdGVuZXJQcm9wcyhwcm9wcykpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9IFwiV2hlbiBhZGRpbmcgdGhlIGZpcnN0IGxpc3RlbmVyIGFuZCB0YXJnZXQgdG8gYSBsb2FkIGJhbGFuY2VyLCBsaXN0ZW5lclByb3BzIG11c3QgYmUgc3BlY2lmaWVkIGFuZCBpbmNsdWRlIGF0IGxlYXN0IGEgY2VydGlmaWNhdGUgb3IgcHJvdG9jb2w6IEhUVFBcXG5cIjtcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgfVxuXG4gIGlmIChcbiAgICBwcm9wcy5leGlzdGluZ0xvYWRCYWxhbmNlck9iaiAmJlxuICAgIHByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqLmxpc3RlbmVycy5sZW5ndGggPiAwICYmXG4gICAgcHJvcHMubGlzdGVuZXJQcm9wc1xuICApIHtcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgICBlcnJvck1lc3NhZ2VzICs9IFwiVGhpcyBsb2FkIGJhbGFuY2VyIGFscmVhZHkgaGFzIGEgbGlzdGVuZXIsIGxpc3RlbmVyUHJvcHMgbWF5IG5vdCBiZSBzcGVjaWZpZWRcXG5cIjtcbiAgfVxuXG4gIGlmIChcbiAgICBwcm9wcy5leGlzdGluZ0xvYWRCYWxhbmNlck9iaiAmJlxuICAgIHByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqLmxpc3RlbmVycy5sZW5ndGggPiAwICYmXG4gICAgIXByb3BzLnJ1bGVQcm9wc1xuICApIHtcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgICBlcnJvck1lc3NhZ2VzICs9IFwiV2hlbiBhZGRpbmcgYSBzZWNvbmQgdGFyZ2V0IHRvIGFuIGV4aXN0aW5nIGxpc3RlbmVyLCB0aGVyZSBtdXN0IGJlIHJ1bGVzIHByb3ZpZGVkXFxuXCI7XG4gIH1cblxuICAvLyBDaGVjayBjb25zdHJ1Y3Qgc3BlY2lmaWMgaW52YWxpZCBpbnB1dHNcbiAgaWYgKHByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqICYmICFwcm9wcy5leGlzdGluZ1ZwYykge1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICAgIGVycm9yTWVzc2FnZXMgKz0gXCJBbiBleGlzdGluZyBBTEIgaXMgYWxyZWFkeSBpbiBhIFZQQywgdGhhdCBWUEMgbXVzdCBiZSBwcm92aWRlZCBpbiBwcm9wcy5leGlzdGluZ1ZwYyBmb3IgdGhlIHJlc3Qgb2YgdGhlIGNvbnN0cnVjdCB0byB1c2UuXFxuXCI7XG4gIH1cblxuICBpZiAocHJvcHMubG9hZEJhbGFuY2VyUHJvcHM/LnZwYykge1xuICAgIC8vIE9ubHkgcmVhc29uIHRoaXMgc2hvdWxkIGV4aXN0IGlzIHRvIGVuYWJsZSBzcGVjaWZ5aW5nIEFMQiBuZXR3b3JrIGNvbmZpZ3VyYXRpb24uIFRoZXJlIG11c3Qgc3RpbGxcbiAgICAvLyBiZSBhIGNvbnN0cnVjdCBWUEMgYW5kICB0aGV5IG11c3QgbWF0Y2hcbiAgICBpZiAoKCFwcm9wcy5leGlzdGluZ1ZwYykgfHwgKHByb3BzLmV4aXN0aW5nVnBjLnZwY0lkICE9PSBwcm9wcy5sb2FkQmFsYW5jZXJQcm9wcz8udnBjLnZwY0lkKSkge1xuICAgICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gICAgICBlcnJvck1lc3NhZ2VzICs9ICdBbnkgZXhpc3RpbmcgVlBDIG11c3QgYmUgZGVmaW5lZCBpbiB0aGUgY29uc3RydWN0IHByb3BzIChwcm9wcy5leGlzdGluZ1ZwYykuIEEgVlBDIHNwZWNpZmllZCBpbiB0aGUgbG9hZEJhbGFuY2VyUHJvcHMgbXVzdCBiZSB0aGUgc2FtZSBWUEMnO1xuICAgIH1cbiAgfVxuXG4gIGlmIChwcm9wcy5leGlzdGluZ0xvYWRCYWxhbmNlck9iaikge1xuICAgIHByaW50V2FybmluZyhcbiAgICAgIFwiVGhlIHB1YmxpYy9wcml2YXRlIHByb3BlcnR5IG9mIGFuIGV4aXN0aW5nIEFMQiBtdXN0IG1hdGNoIHRoZSBwcm9wcy5wdWJsaWNBcGkgc2V0dGluZyBwcm92aWRlZC5cIlxuICAgICk7XG4gIH1cblxuICBpZiAoZXJyb3JGb3VuZCkge1xuICAgIHRocm93IG5ldyBFcnJvcihlcnJvck1lc3NhZ2VzKTtcbiAgfVxuXG59XG5cbmZ1bmN0aW9uIFZhbGlkYXRlQWRkTGlzdGVuZXJQcm9wcyhwcm9wczogYW55KSB7XG4gIGlmICgoKHByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqICYmXG4gICAgcHJvcHMuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmoubGlzdGVuZXJzLmxlbmd0aCA9PT0gMCkgfHxcbiAgICAhcHJvcHMuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmopICYmXG4gICFwcm9wcy5saXN0ZW5lclByb3BzKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbiAgcmV0dXJuIGZhbHNlO1xufVxuIl19
212
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxiLWhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImFsYi1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7OztHQVdHOztBQW1DSCw4QkF1QkM7QUFLRCxrQ0FzREM7QUFTRCwwQ0F3QkM7QUFLRCw0Q0F1QkM7QUFTRCw4Q0FZQztBQUtELHNDQW1FQztBQTdRRDs7O0dBR0c7QUFFSCw4REFBOEQ7QUFNOUQsdUZBQThGO0FBQzlGLHVFQUF1RTtBQUN2RSxtQ0FBeUQ7QUFDekQsaURBQXNEO0FBQ3RELHlEQUE0RDtBQUM1RCw2REFBc0Q7QUFXdEQ7Ozs7O0dBS0c7QUFDSCxTQUFnQixTQUFTLENBQ3ZCLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixLQUFxQjtJQUVyQixJQUFJLFlBQXlDLENBQUM7SUFFOUMsSUFBSSxLQUFLLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztRQUNsQyxZQUFZLEdBQUcsS0FBSyxDQUFDLHVCQUF1QixDQUFDO0lBQy9DLENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxpQkFBaUIsR0FBRyxJQUFBLHdCQUFnQixFQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxHQUFHLEVBQUUsS0FBSyxDQUFDLEdBQUcsRUFBRSxjQUFjLEVBQUUsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDN0gsWUFBWSxHQUFHLElBQUksR0FBRyxDQUFDLHVCQUF1QixDQUM1QyxLQUFLLEVBQ0wsR0FBRyxFQUFFLE1BQU0sRUFDWCxpQkFBaUIsQ0FDbEIsQ0FBQztRQUNGLElBQUksS0FBSyxDQUFDLGFBQWEsS0FBSyxTQUFTLElBQUksS0FBSyxDQUFDLGFBQWEsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUN0RSxNQUFNLDhCQUE4QixHQUFHLElBQUEsd0JBQWdCLEVBQUMsSUFBQSxtQ0FBYyxHQUFFLEVBQUUsS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7WUFDcEcsTUFBTSxhQUFh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QztZQUNsQixhQUFhLElBQUksNElBQTRJLENBQUM7UUFDaEssQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1FBQ2xDLElBQUEsb0JBQVksRUFDVixpR0FBaUcsQ0FDbEcsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQ2YsTUFBTSxJQUFJLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNqQyxDQUFDO0FBRUgsQ0FBQztBQUVELFNBQVMsd0JBQXdCLENBQUMsS0FBVTtJQUMxQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsdUJBQXVCO1FBQ2pDLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztRQUNyRCxDQUFDLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQztRQUNqQyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNyQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKS4gWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuICogIHdpdGggdGhlIExpY2Vuc2UuIEEgY29weSBvZiB0aGUgTGljZW5zZSBpcyBsb2NhdGVkIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiAgb3IgaW4gdGhlICdsaWNlbnNlJyBmaWxlIGFjY29tcGFueWluZyB0aGlzIGZpbGUuIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVNcbiAqICBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9uc1xuICogIGFuZCBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKlxuICogIFRoZSBmdW5jdGlvbnMgZm91bmQgaGVyZSBpbiB0aGUgY29yZSBsaWJyYXJ5IGFyZSBmb3IgaW50ZXJuYWwgdXNlIGFuZCBjYW4gYmUgY2hhbmdlZFxuICogIG9yIHJlbW92ZWQgb3V0c2lkZSBvZiBhIG1ham9yIHJlbGVhc2UuIFdlIHJlY29tbWVuZCBhZ2FpbnN0IGNhbGxpbmcgdGhlbSBkaXJlY3RseSBmcm9tIGNsaWVudCBjb2RlLlxuICovXG5cbmltcG9ydCAqIGFzIGVsYiBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVsYXN0aWNsb2FkYmFsYW5jaW5ndjJcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgKiBhcyBlYzIgZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcbmltcG9ydCAqIGFzIHMzIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtczNcIjtcbmltcG9ydCAqIGFzIGVjcyBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjc1wiO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbGFtYmRhXCI7XG5pbXBvcnQgeyBBcHBsaWNhdGlvblByb3RvY29sLCBMaXN0ZW5lckFjdGlvbiwgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVsYXN0aWNsb2FkYmFsYW5jaW5ndjJcIjtcbmltcG9ydCAqIGFzIGVsYnQgZnJvbSBcImF3cy1jZGstbGliL2F3cy1lbGFzdGljbG9hZGJhbGFuY2luZ3YyLXRhcmdldHNcIjtcbmltcG9ydCB7IHByaW50V2FybmluZywgY29uc29saWRhdGVQcm9wcyB9IGZyb20gXCIuL3V0aWxzXCI7XG5pbXBvcnQgeyBEZWZhdWx0TGlzdGVuZXJQcm9wcyB9IGZyb20gXCIuL2FsYi1kZWZhdWx0c1wiO1xuaW1wb3J0IHsgY3JlYXRlQWxiTG9nZ2luZ0J1Y2tldCB9IGZyb20gXCIuL3MzLWJ1Y2tldC1oZWxwZXJcIjtcbmltcG9ydCB7IERlZmF1bHRTM1Byb3BzIH0gZnJvbSBcIi4vczMtYnVja2V0LWRlZmF1bHRzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgT2J0YWluQWxiUHJvcHMge1xuICByZWFkb25seSB2cGM6IGVjMi5JVnBjLFxuICByZWFkb25seSBwdWJsaWNBcGk6IGJvb2xlYW4sXG4gIHJlYWRvbmx5IGV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqPzogZWxiLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyLFxuICByZWFkb25seSBsb2FkQmFsYW5jZXJQcm9wcz86IGVsYi5BcHBsaWNhdGlvbkxvYWRCYWxhbmNlclByb3BzIHwgYW55LFxuICByZWFkb25seSBsb2dBY2Nlc3NMb2dzPzogYm9vbGVhbixcbiAgcmVhZG9ubHkgbG9nZ2luZ0J1Y2tldFByb3BzPzogczMuQnVja2V0UHJvcHNcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWwgVGhpcyBpcyBhbiBpbnRlcm5hbCBjb3JlIGZ1bmN0aW9uIGFuZCBzaG91bGQgbm90IGJlIGNhbGxlZCBkaXJlY3RseSBieSBTb2x1dGlvbnMgQ29uc3RydWN0cyBjbGllbnRzLlxuICpcbiAqIFJldHVybnMgdGhlIGNvcnJlY3QgQUxCIExvYWQgQmFsYW5jZXIgdG8gdXNlIGluIHRoaXMgY29uc3RydWN0LCBlaXRoZXIgYW4gZXhpc3RpbmdcbiAqIG9uZSBwcm92aWRlZCBhcyBhbiBhcmd1bWVudCBvciBjcmVhdGUgIG5ldyBvbmUgb3RoZXJ3aXNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gT2J0YWluQWxiKFxuICBzY29wZTogQ29uc3RydWN0LFxuICBpZDogc3RyaW5nLFxuICBwcm9wczogT2J0YWluQWxiUHJvcHNcbik6IGVsYi5BcHBsaWNhdGlvbkxvYWRCYWxhbmNlciB7XG4gIGxldCBsb2FkQmFsYW5jZXI6IGVsYi5BcHBsaWNhdGlvbkxvYWRCYWxhbmNlcjtcblxuICBpZiAocHJvcHMuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmopIHtcbiAgICBsb2FkQmFsYW5jZXIgPSBwcm9wcy5leGlzdGluZ0xvYWRCYWxhbmNlck9iajtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBjb25zb2xpZGF0ZWRQcm9wcyA9IGNvbnNvbGlkYXRlUHJvcHMoe30sIHByb3BzLmxvYWRCYWxhbmNlclByb3BzLCB7IHZwYzogcHJvcHMudnBjLCBpbnRlcm5ldEZhY2luZzogcHJvcHMucHVibGljQXBpIH0pO1xuICAgIGxvYWRCYWxhbmNlciA9IG5ldyBlbGIuQXBwbGljYXRpb25Mb2FkQmFsYW5jZXIoXG4gICAgICBzY29wZSxcbiAgICAgIGAke2lkfS1hbGJgLFxuICAgICAgY29uc29saWRhdGVkUHJvcHNcbiAgICApO1xuICAgIGlmIChwcm9wcy5sb2dBY2Nlc3NMb2dzID09PSB1bmRlZmluZWQgfHwgcHJvcHMubG9nQWNjZXNzTG9ncyA9PT0gdHJ1ZSkge1xuICAgICAgY29uc3QgY29uc29saWRhdGVkTG9nZ2luZ0J1Y2tldFByb3BzID0gY29uc29saWRhdGVQcm9wcyhEZWZhdWx0UzNQcm9wcygpLCBwcm9wcy5sb2dnaW5nQnVja2V0UHJvcHMpO1xuICAgICAgY29uc3QgbG9nZ2luZ0J1Y2tldCA9IGNyZWF0ZUFsYkxvZ2dpbmdCdWNrZXQoc2NvcGUsIGlkLCBjb25zb2xpZGF0ZWRMb2dnaW5nQnVja2V0UHJvcHMpO1xuICAgICAgbG9hZEJhbGFuY2VyLmxvZ0FjY2Vzc0xvZ3MobG9nZ2luZ0J1Y2tldCk7XG4gICAgfVxuICB9XG4gIHJldHVybiBsb2FkQmFsYW5jZXI7XG59XG5cbi8qKlxuICogQGludGVybmFsIFRoaXMgaXMgYW4gaW50ZXJuYWwgY29yZSBmdW5jdGlvbiBhbmQgc2hvdWxkIG5vdCBiZSBjYWxsZWQgZGlyZWN0bHkgYnkgU29sdXRpb25zIENvbnN0cnVjdHMgY2xpZW50cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEFkZExpc3RlbmVyKFxuICBzY29wZTogQ29uc3RydWN0LFxuICBpZDogc3RyaW5nLFxuICBsb2FkQmFsYW5jZXI6IGVsYi5BcHBsaWNhdGlvbkxvYWRCYWxhbmNlcixcbiAgbGlzdGVuZXJQcm9wczogZWxiLkFwcGxpY2F0aW9uTGlzdGVuZXJQcm9wcyB8IGFueVxuKTogZWxiLkFwcGxpY2F0aW9uTGlzdGVuZXIge1xuICBjb25zdCBjb25zb2xpZGF0ZWRMaXN0ZW5lclByb3BzOiBlbGIuQXBwbGljYXRpb25MaXN0ZW5lclByb3BzID0gY29uc29saWRhdGVQcm9wcyhEZWZhdWx0TGlzdGVuZXJQcm9wcyhsb2FkQmFsYW5jZXIpLCBsaXN0ZW5lclByb3BzKTtcblxuICAvLyAgY3JlYXRlIHRoZSBsaXN0ZW5lclxuICBjb25zdCBsaXN0ZW5lciA9IG5ldyBlbGIuQXBwbGljYXRpb25MaXN0ZW5lcihcbiAgICBzY29wZSxcbiAgICBgJHtpZH0tbGlzdGVuZXJgLFxuICAgIGNvbnNvbGlkYXRlZExpc3RlbmVyUHJvcHNcbiAgKTtcbiAgbG9hZEJhbGFuY2VyLmxpc3RlbmVycy5wdXNoKGxpc3RlbmVyKTtcblxuICBpZiAoY29uc29saWRhdGVkTGlzdGVuZXJQcm9wcy5wcm90b2NvbCA9PT0gZWxiLkFwcGxpY2F0aW9uUHJvdG9jb2wuSFRUUCkge1xuICAgIC8vIFRoaXMgd2lsbCB1c2UgY29yZS5wcmludFdhcm5pbmcgaW4gdGhlIGFjdHVhbCBjb25zdHJ1Y3RcbiAgICBwcmludFdhcm5pbmcoXG4gICAgICBcIkFXUyByZWNvbW1lbmRzIGVuY3J5cHRpbmcgdHJhZmZpYyB0byBhbiBBcHBsaWNhdGlvbiBMb2FkIEJhbGFuY2VyIHVzaW5nIEhUVFBTLlwiXG4gICAgKTtcbiAgICBpZiAobGlzdGVuZXJQcm9wcy5jZXJ0aWZpY2F0ZXM/Lmxlbmd0aCA+IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkhUVFAgbGlzdGVuZXJzIGNhbm5vdCB1c2UgYSBjZXJ0aWZpY2F0ZVwiKTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgaWYgKCFsaXN0ZW5lclByb3BzLmNlcnRpZmljYXRlcyB8fCBsaXN0ZW5lclByb3BzLmNlcnRpZmljYXRlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkEgbGlzdGVuZXIgdXNpbmcgSFRUUFMgcHJvdG9jb2wgcmVxdWlyZXMgYSBjZXJ0aWZpY2F0ZVwiKTtcbiAgICB9XG5cbiAgICBsaXN0ZW5lci5hZGRDZXJ0aWZpY2F0ZXMoYCR7aWR9LWNlcnRgLCBsaXN0ZW5lclByb3BzLmNlcnRpZmljYXRlcyk7XG4gIH1cblxuICBpZiAoY29uc29saWRhdGVkTGlzdGVuZXJQcm9wcy5wcm90b2NvbCA9PT0gZWxiLkFwcGxpY2F0aW9uUHJvdG9jb2wuSFRUUFMpIHtcbiAgICBjb25zdCBvcHQ6IGVsYi5SZWRpcmVjdE9wdGlvbnMgPSB7XG4gICAgICBwb3J0OiBcIjQ0M1wiLFxuICAgICAgcHJvdG9jb2w6IFwiSFRUUFNcIixcbiAgICB9O1xuXG4gICAgLy8gTk9TT05BUjogKHR5cGVzY3JpcHQ6UzUzMzIpXG4gICAgLy8gVGhpcyBsaXN0ZW5lciBpcyBleHBsaWNpdGx5IGNyZWF0ZWQgdG8gcmVkaXJlY3Qgbm9uIFRMUyBjb25uZWN0aW9uc1xuICAgIC8vIFRoZSBsYWNrIG9mIFNTTC9UTFMgaXMgaW50ZW50aW9uYWxcbiAgICBjb25zdCBodHRwTGlzdGVuZXIgPSBuZXcgZWxiLkFwcGxpY2F0aW9uTGlzdGVuZXIoXG4gICAgICBzY29wZSxcbiAgICAgIGAke2lkfS1yZWRpcmVjdGAsXG4gICAgICB7XG4gICAgICAgIGxvYWRCYWxhbmNlcixcbiAgICAgICAgcHJvdG9jb2w6IEFwcGxpY2F0aW9uUHJvdG9jb2wuSFRUUCwgLy8gTk9TT05BUlxuICAgICAgICBkZWZhdWx0QWN0aW9uOiBMaXN0ZW5lckFjdGlvbi5yZWRpcmVjdChvcHQpLFxuICAgICAgfVxuICAgICk7XG4gICAgbG9hZEJhbGFuY2VyLmxpc3RlbmVycy5wdXNoKGh0dHBMaXN0ZW5lcik7XG4gIH1cblxuICByZXR1cm4gbGlzdGVuZXI7XG59XG5cbi8qKlxuICogQGludGVybmFsIFRoaXMgaXMgYW4gaW50ZXJuYWwgY29yZSBmdW5jdGlvbiBhbmQgc2hvdWxkIG5vdCBiZSBjYWxsZWQgZGlyZWN0bHkgYnkgU29sdXRpb25zIENvbnN0cnVjdHMgY2xpZW50cy5cbiAqXG4gKiBDcmVhdGVzIGEgVGFyZ2V0IEdyb3VwIGZvciBMYW1iZGEgZnVuY3Rpb25zIGFuZCBhZGRzIHRoZVxuICogcHJvdmlkZWQgZnVuY3Rpb25zIGFzIGEgdGFyZ2V0IHRvIHRoYXQgZ3JvdXAuIFRoZW4gYWRkc1xuICogdGhlIG5ldyBUYXJnZXQgR3JvdXAgdG8gdGhlIHByb3ZpZGVkIExpc3RlbmVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gQWRkTGFtYmRhVGFyZ2V0KFxuICBzY29wZTogQ29uc3RydWN0LFxuICBpZDogc3RyaW5nLFxuICBjdXJyZW50TGlzdGVuZXI6IGVsYi5BcHBsaWNhdGlvbkxpc3RlbmVyLFxuICBsYW1iZGFGdW5jdGlvbjogbGFtYmRhLklGdW5jdGlvbixcbiAgcnVsZVByb3BzPzogZWxiLkFkZFJ1bGVQcm9wcyxcbiAgdGFyZ2V0UHJvcHM/OiBlbGIuQXBwbGljYXRpb25UYXJnZXRHcm91cFByb3BzLFxuKTogZWxiLkFwcGxpY2F0aW9uVGFyZ2V0R3JvdXAgIHtcblxuICAvLyAgQ3JlYXRlIHRoZSB0YXJnZXQgYW5kIGFzc2lnbiBpdCB0byBhIG5ldyB0YXJnZXQgZ3JvdXBcbiAgY29uc3QgbGFtYmRhVGFyZ2V0ID0gbmV3IGVsYnQuTGFtYmRhVGFyZ2V0KGxhbWJkYUZ1bmN0aW9uKTtcbiAgY29uc3QgbmV3VGFyZ2V0R3JvdXAgPSBuZXcgZWxiLkFwcGxpY2F0aW9uVGFyZ2V0R3JvdXAoc2NvcGUsIGAke2lkfS10Z2AsIHtcbiAgICB0YXJnZXRzOiBbbGFtYmRhVGFyZ2V0XSxcbiAgICB0YXJnZXRHcm91cE5hbWU6IHRhcmdldFByb3BzID8gdGFyZ2V0UHJvcHMudGFyZ2V0R3JvdXBOYW1lIDogdW5kZWZpbmVkLFxuICAgIGhlYWx0aENoZWNrOiB0YXJnZXRQcm9wcyA/IHRhcmdldFByb3BzLmhlYWx0aENoZWNrIDogdW5kZWZpbmVkXG4gIH0pO1xuXG4gIC8vIFRoZSBpbnRlcmZhY2UgQWRkUnVsZVByb3BzIGluY2x1ZGVzIGNvbmRpdGlvbnMgYW5kIHByaW9yaXR5LCBjb21iaW5lIHRoYXRcbiAgLy8gd2l0aCB0YXJnZXRHcm91cHMgYW5kIHdlIGNhbiBhc3NlbWJsZSBBZGRBcHBsaWNhdGlvblRhcmdldEdyb3VwUHJvcHNcbiAgY29uc3QgY29uc29saWRhdGVkVGFyZ2V0UHJvcHMgPSBjb25zb2xpZGF0ZVByb3BzKHt9LCBydWxlUHJvcHMsIHsgdGFyZ2V0R3JvdXBzOiBbbmV3VGFyZ2V0R3JvdXBdIH0pO1xuICBjdXJyZW50TGlzdGVuZXIuYWRkVGFyZ2V0R3JvdXBzKGAke3Njb3BlLm5vZGUuaWR9LXRhcmdldHNgLCBjb25zb2xpZGF0ZWRUYXJnZXRQcm9wcyk7XG5cbiAgbmV3VGFyZ2V0R3JvdXAuc2V0QXR0cmlidXRlKCdzdGlja2luZXNzLmVuYWJsZWQnLCB1bmRlZmluZWQpO1xuICByZXR1cm4gbmV3VGFyZ2V0R3JvdXA7XG59XG5cbi8qKlxuICogQGludGVybmFsIFRoaXMgaXMgYW4gaW50ZXJuYWwgY29yZSBmdW5jdGlvbiBhbmQgc2hvdWxkIG5vdCBiZSBjYWxsZWQgZGlyZWN0bHkgYnkgU29sdXRpb25zIENvbnN0cnVjdHMgY2xpZW50cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEFkZEZhcmdhdGVUYXJnZXQoXG4gIHNjb3BlOiBDb25zdHJ1Y3QsXG4gIGlkOiBzdHJpbmcsXG4gIGN1cnJlbnRMaXN0ZW5lcjogZWxiLkFwcGxpY2F0aW9uTGlzdGVuZXIsXG4gIGZhcmdhdGVTZXJ2aWNlOiBlY3MuRmFyZ2F0ZVNlcnZpY2UsXG4gIHJ1bGVQcm9wcz86IGVsYi5BZGRSdWxlUHJvcHMsXG4gIHRhcmdldFByb3BzPzogZWxiLkFwcGxpY2F0aW9uVGFyZ2V0R3JvdXBQcm9wcyxcbik6IGVsYi5BcHBsaWNhdGlvblRhcmdldEdyb3VwICB7XG5cbiAgaWYgKHRhcmdldFByb3BzPy5wcm90b2NvbCAhPT0gZWxiLkFwcGxpY2F0aW9uUHJvdG9jb2wuSFRUUFMpIHtcbiAgICBwcmludFdhcm5pbmcoJ0FXUyByZWNvbW1lbmRzIHVzaW5nIEhUVFBTIHByb3RvY29sIGZvciBUYXJnZXQgR3JvdXBzIGluIHByb2R1Y3Rpb24gYXBwbGljYXRpb25zJyk7XG4gIH1cblxuICBjb25zdCBuZXdUYXJnZXRHcm91cCA9IG5ldyBlbGIuQXBwbGljYXRpb25UYXJnZXRHcm91cChzY29wZSwgYCR7aWR9LXRnYCwgdGFyZ2V0UHJvcHMpO1xuXG4gIC8vIFRoZSBpbnRlcmZhY2UgQWRkUnVsZVByb3BzIGluY2x1ZGVzIGNvbmRpdGlvbnMgYW5kIHByaW9yaXR5LCBjb21iaW5lIHRoYXRcbiAgLy8gd2l0aCB0YXJnZXRHcm91cHMgYW5kIHdlIGNhbiBhc3NlbWJsZSBhbiBBZGRBcHBsaWNhdGlvblRhcmdldEdyb3VwUHJvcHMgb2JqZWN0XG4gIGNvbnN0IGNvbnNvbGlkYXRlZFRhcmdldFByb3BzID0gY29uc29saWRhdGVQcm9wcyh7IHRhcmdldEdyb3VwczogW25ld1RhcmdldEdyb3VwXSB9LCBydWxlUHJvcHMpO1xuXG4gIGN1cnJlbnRMaXN0ZW5lci5hZGRUYXJnZXRHcm91cHMoYCR7c2NvcGUubm9kZS5pZH0tdGFyZ2V0c2AsIGNvbnNvbGlkYXRlZFRhcmdldFByb3BzKTtcbiAgbmV3VGFyZ2V0R3JvdXAuYWRkVGFyZ2V0KGZhcmdhdGVTZXJ2aWNlKTtcblxuICByZXR1cm4gbmV3VGFyZ2V0R3JvdXA7XG59XG5cbi8qKlxuICogQGludGVybmFsIFRoaXMgaXMgYW4gaW50ZXJuYWwgY29yZSBmdW5jdGlvbiBhbmQgc2hvdWxkIG5vdCBiZSBjYWxsZWQgZGlyZWN0bHkgYnkgU29sdXRpb25zIENvbnN0cnVjdHMgY2xpZW50cy5cbiAqXG4gKiBMb29rcyBmb3IgdGhlIGxpc3RlbmVyIGFzc29jaWF0ZWQgd2l0aCBUYXJnZXQgR3JvdXBzXG4gKiBJZiB0aGVyZSBpcyBhIHNpbmdsZSBsaXN0ZW5lciwgdGhpcyByZXR1cm5zIGl0IHdoZXRoZXIgaXQgaXMgSFRUUCBvciBIVFRQU1xuICogSWYgdGhlcmUgYXJlIDIgbGlzdGVuZXJzLCBpdCBmaW5kcyB0aGUgSFRUUFMgbGlzdGVuZXIgKHdlIGFzc3VtZSB0aGUgSFRUUCBsaXN0ZW5lciByZWRpcmVjdHMgdG8gSFRUUFMpXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBHZXRBY3RpdmVMaXN0ZW5lcihsaXN0ZW5lcnM6IGVsYi5BcHBsaWNhdGlvbkxpc3RlbmVyW10pOiBlbGIuQXBwbGljYXRpb25MaXN0ZW5lciB7XG4gIGxldCBsaXN0ZW5lcjogZWxiLkFwcGxpY2F0aW9uTGlzdGVuZXI7XG5cbiAgaWYgKGxpc3RlbmVycy5sZW5ndGggPT09IDAgKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBUaGVyZSBhcmUgbm8gbGlzdGVuZXJzIGluIHRoZSBBTEJgKTtcbiAgfVxuICBpZiAobGlzdGVuZXJzLmxlbmd0aCA9PT0gMSApIHtcbiAgICBsaXN0ZW5lciA9IGxpc3RlbmVyc1swXTtcbiAgfSBlbHNlIHtcbiAgICBsaXN0ZW5lciA9IGxpc3RlbmVycy5maW5kKGkgPT4gKGkubm9kZS5jaGlsZHJlblswXSBhcyBlbGIuQ2ZuTGlzdGVuZXIpLnByb3RvY29sID09PSBcIkhUVFBTXCIpIGFzIGVsYi5BcHBsaWNhdGlvbkxpc3RlbmVyO1xuICB9XG4gIHJldHVybiBsaXN0ZW5lcjtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWwgVGhpcyBpcyBhbiBpbnRlcm5hbCBjb3JlIGZ1bmN0aW9uIGFuZCBzaG91bGQgbm90IGJlIGNhbGxlZCBkaXJlY3RseSBieSBTb2x1dGlvbnMgQ29uc3RydWN0cyBjbGllbnRzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gQ2hlY2tBbGJQcm9wcyhwcm9wczogYW55KSB7XG4gIGxldCBlcnJvck1lc3NhZ2VzID0gJyc7XG4gIGxldCBlcnJvckZvdW5kID0gZmFsc2U7XG5cbiAgaWYgKHByb3BzLmxvYWRCYWxhbmNlclByb3BzICYmIHByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSAnRXJyb3IgLSBFaXRoZXIgcHJvdmlkZSBsb2FkQmFsYW5jZXJQcm9wcyBvciBleGlzdGluZ0xvYWRCYWxhbmNlck9iaiwgYnV0IG5vdCBib3RoLlxcbic7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAoKHByb3BzPy5sb2dBbGJBY2Nlc3NMb2dzID09PSBmYWxzZSkgJiYgKHByb3BzLmFsYkxvZ2dpbmdCdWNrZXRQcm9wcykpIHtcbiAgICBlcnJvck1lc3NhZ2VzICs9ICdFcnJvciAtIElmIGxvZ0FsYkFjY2Vzc0xvZ3MgaXMgZmFsc2UsIHN1cHBseWluZyBhbGJMb2dnaW5nQnVja2V0UHJvcHMgaXMgaW52YWxpZC5cXG4nO1xuICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKHByb3BzLmxpc3RlbmVyUHJvcHM/LmNlcnRpZmljYXRlQXJucykge1xuICAgIGVycm9yTWVzc2FnZXMgKz0gXCJjZXJ0aWZpY2F0ZUFybnMgaXMgZGVwcmVjYXRlZC4gUGxlYXNlIHN1cHBseSBjZXJ0aWZpY2F0ZXMgdXNpbmcgcHJvcHMubGlzdGVuZXJQcm9wcy5jZXJ0aWZpY2F0ZXNcXG5cIjtcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgfVxuXG4gIGlmIChWYWxpZGF0ZUFkZExpc3RlbmVyUHJvcHMocHJvcHMpKSB7XG4gICAgZXJyb3JNZXNzYWdlcyArPSBcIldoZW4gYWRkaW5nIHRoZSBmaXJzdCBsaXN0ZW5lciBhbmQgdGFyZ2V0IHRvIGEgbG9hZCBiYWxhbmNlciwgbGlzdGVuZXJQcm9wcyBtdXN0IGJlIHNwZWNpZmllZCBhbmQgaW5jbHVkZSBhdCBsZWFzdCBhIGNlcnRpZmljYXRlIG9yIHByb3RvY29sOiBIVFRQXFxuXCI7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gIH1cblxuICBpZiAoXG4gICAgcHJvcHMuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmogJiZcbiAgICBwcm9wcy5leGlzdGluZ0xvYWRCYWxhbmNlck9iai5saXN0ZW5lcnMubGVuZ3RoID4gMCAmJlxuICAgIHByb3BzLmxpc3RlbmVyUHJvcHNcbiAgKSB7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gICAgZXJyb3JNZXNzYWdlcyArPSBcIlRoaXMgbG9hZCBiYWxhbmNlciBhbHJlYWR5IGhhcyBhIGxpc3RlbmVyLCBsaXN0ZW5lclByb3BzIG1heSBub3QgYmUgc3BlY2lmaWVkXFxuXCI7XG4gIH1cblxuICBpZiAoXG4gICAgcHJvcHMuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmogJiZcbiAgICBwcm9wcy5leGlzdGluZ0xvYWRCYWxhbmNlck9iai5saXN0ZW5lcnMubGVuZ3RoID4gMCAmJlxuICAgICFwcm9wcy5ydWxlUHJvcHNcbiAgKSB7XG4gICAgZXJyb3JGb3VuZCA9IHRydWU7XG4gICAgZXJyb3JNZXNzYWdlcyArPSBcIldoZW4gYWRkaW5nIGEgc2Vjb25kIHRhcmdldCB0byBhbiBleGlzdGluZyBsaXN0ZW5lciwgdGhlcmUgbXVzdCBiZSBydWxlcyBwcm92aWRlZFxcblwiO1xuICB9XG5cbiAgLy8gQ2hlY2sgY29uc3RydWN0IHNwZWNpZmljIGludmFsaWQgaW5wdXRzXG4gIGlmIChwcm9wcy5leGlzdGluZ0xvYWRCYWxhbmNlck9iaiAmJiAhcHJvcHMuZXhpc3RpbmdWcGMpIHtcbiAgICBlcnJvckZvdW5kID0gdHJ1ZTtcbiAgICBlcnJvck1lc3NhZ2VzICs9IFwiQW4gZXhpc3RpbmcgQUxCIGlzIGFscmVhZHkgaW4gYSBWUEMsIHRoYXQgVlBDIG11c3QgYmUgcHJvdmlkZWQgaW4gcHJvcHMuZXhpc3RpbmdWcGMgZm9yIHRoZSByZXN0IG9mIHRoZSBjb25zdHJ1Y3QgdG8gdXNlLlxcblwiO1xuICB9XG5cbiAgaWYgKHByb3BzLmxvYWRCYWxhbmNlclByb3BzPy52cGMpIHtcbiAgICAvLyBPbmx5IHJlYXNvbiB0aGlzIHNob3VsZCBleGlzdCBpcyB0byBlbmFibGUgc3BlY2lmeWluZyBBTEIgbmV0d29yayBjb25maWd1cmF0aW9uLiBUaGVyZSBtdXN0IHN0aWxsXG4gICAgLy8gYmUgYSBjb25zdHJ1Y3QgVlBDIGFuZCAgdGhleSBtdXN0IG1hdGNoXG4gICAgaWYgKCghcHJvcHMuZXhpc3RpbmdWcGMpIHx8IChwcm9wcy5leGlzdGluZ1ZwYy52cGNJZCAhPT0gcHJvcHMubG9hZEJhbGFuY2VyUHJvcHM/LnZwYy52cGNJZCkpIHtcbiAgICAgIGVycm9yRm91bmQgPSB0cnVlO1xuICAgICAgZXJyb3JNZXNzYWdlcyArPSAnQW55IGV4aXN0aW5nIFZQQyBtdXN0IGJlIGRlZmluZWQgaW4gdGhlIGNvbnN0cnVjdCBwcm9wcyAocHJvcHMuZXhpc3RpbmdWcGMpLiBBIFZQQyBzcGVjaWZpZWQgaW4gdGhlIGxvYWRCYWxhbmNlclByb3BzIG11c3QgYmUgdGhlIHNhbWUgVlBDJztcbiAgICB9XG4gIH1cblxuICBpZiAocHJvcHMuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmopIHtcbiAgICBwcmludFdhcm5pbmcoXG4gICAgICBcIlRoZSBwdWJsaWMvcHJpdmF0ZSBwcm9wZXJ0eSBvZiBhbiBleGlzdGluZyBBTEIgbXVzdCBtYXRjaCB0aGUgcHJvcHMucHVibGljQXBpIHNldHRpbmcgcHJvdmlkZWQuXCJcbiAgICApO1xuICB9XG5cbiAgaWYgKGVycm9yRm91bmQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3JNZXNzYWdlcyk7XG4gIH1cblxufVxuXG5mdW5jdGlvbiBWYWxpZGF0ZUFkZExpc3RlbmVyUHJvcHMocHJvcHM6IGFueSkge1xuICBpZiAoKChwcm9wcy5leGlzdGluZ0xvYWRCYWxhbmNlck9iaiAmJlxuICAgIHByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqLmxpc3RlbmVycy5sZW5ndGggPT09IDApIHx8XG4gICAgIXByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqKSAmJlxuICAhcHJvcHMubGlzdGVuZXJQcm9wcykge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG4gIHJldHVybiBmYWxzZTtcbn1cbiJdfQ==
@@ -21,9 +21,9 @@ import { Construct } from 'constructs';
21
21
  * Provides the default set of properties for Edge/Global Lambda backed RestApi
22
22
  * @param scope - the construct to which the RestApi should be attached to.
23
23
  * @param _endpointType - endpoint type for Api Gateway e.g. Regional, Global, Private
24
- * @param _logGroup - CW Log group for Api Gateway access logging
24
+ * @param logGroup - CW Log group for Api Gateway access logging
25
25
  */
26
- export declare function DefaultGlobalLambdaRestApiProps(_existingLambdaObj: lambda.Function, _logGroup: LogGroup): api.LambdaRestApiProps;
26
+ export declare function DefaultGlobalLambdaRestApiProps(existingLambdaObj: lambda.Function, logGroup: LogGroup): api.LambdaRestApiProps;
27
27
  /**
28
28
  * @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
29
29
  *
@@ -37,16 +37,16 @@ export declare function DefaultRegionalLambdaRestApiProps(existingLambdaObj: lam
37
37
  * @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
38
38
  *
39
39
  * Provides the default set of properties for Edge/Global RestApi
40
- * @param _logGroup - CW Log group for Api Gateway access logging
40
+ * @param logGroup - CW Log group for Api Gateway access logging
41
41
  */
42
- export declare function DefaultGlobalRestApiProps(_logGroup: LogGroup): api.RestApiProps;
42
+ export declare function DefaultGlobalRestApiProps(logGroup: LogGroup): api.RestApiProps;
43
43
  /**
44
44
  * @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
45
45
  *
46
46
  * Provides the default set of properties for Regional RestApi
47
- * @param _logGroup - CW Log group for Api Gateway access logging
47
+ * @param logGroup - CW Log group for Api Gateway access logging
48
48
  */
49
- export declare function DefaultRegionalRestApiProps(_logGroup: LogGroup): api.RestApiProps;
49
+ export declare function DefaultRegionalRestApiProps(logGroup: LogGroup): api.RestApiProps;
50
50
  /**
51
51
  * @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
52
52
  *
@@ -55,12 +55,12 @@ function DefaultRestApiProps(endpointType, logGroup, includeAuth = true) {
55
55
  * Provides the default set of properties for Edge/Global Lambda backed RestApi
56
56
  * @param scope - the construct to which the RestApi should be attached to.
57
57
  * @param _endpointType - endpoint type for Api Gateway e.g. Regional, Global, Private
58
- * @param _logGroup - CW Log group for Api Gateway access logging
58
+ * @param logGroup - CW Log group for Api Gateway access logging
59
59
  */
60
- function DefaultGlobalLambdaRestApiProps(_existingLambdaObj, _logGroup) {
61
- const baseProps = DefaultRestApiProps([api.EndpointType.EDGE], _logGroup);
60
+ function DefaultGlobalLambdaRestApiProps(existingLambdaObj, logGroup) {
61
+ const baseProps = DefaultRestApiProps([api.EndpointType.EDGE], logGroup);
62
62
  const extraProps = {
63
- handler: _existingLambdaObj,
63
+ handler: existingLambdaObj,
64
64
  };
65
65
  return Object.assign(baseProps, extraProps);
66
66
  }
@@ -83,19 +83,19 @@ function DefaultRegionalLambdaRestApiProps(existingLambdaObj, logGroup, includeA
83
83
  * @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
84
84
  *
85
85
  * Provides the default set of properties for Edge/Global RestApi
86
- * @param _logGroup - CW Log group for Api Gateway access logging
86
+ * @param logGroup - CW Log group for Api Gateway access logging
87
87
  */
88
- function DefaultGlobalRestApiProps(_logGroup) {
89
- return DefaultRestApiProps([api.EndpointType.EDGE], _logGroup);
88
+ function DefaultGlobalRestApiProps(logGroup) {
89
+ return DefaultRestApiProps([api.EndpointType.EDGE], logGroup);
90
90
  }
91
91
  /**
92
92
  * @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
93
93
  *
94
94
  * Provides the default set of properties for Regional RestApi
95
- * @param _logGroup - CW Log group for Api Gateway access logging
95
+ * @param logGroup - CW Log group for Api Gateway access logging
96
96
  */
97
- function DefaultRegionalRestApiProps(_logGroup) {
98
- return DefaultRestApiProps([api.EndpointType.REGIONAL], _logGroup);
97
+ function DefaultRegionalRestApiProps(logGroup) {
98
+ return DefaultRestApiProps([api.EndpointType.REGIONAL], logGroup);
99
99
  }
100
100
  /**
101
101
  * @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
@@ -135,4 +135,4 @@ function DefaultIntegrationResponses() {
135
135
  }
136
136
  ];
137
137
  }
138
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpZ2F0ZXdheS1kZWZhdWx0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImFwaWdhdGV3YXktZGVmYXVsdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7OztHQVdHOztBQWlESCwwRUFRQztBQVVELDhFQVVDO0FBUUQsOERBRUM7QUFRRCxrRUFFQztBQVFELDBEQVlDO0FBT0Qsa0VBYUM7QUF2SUQ7OztHQUdHO0FBRUgsa0RBQWtEO0FBS2xELG1DQUFzRDtBQUV0RDs7Ozs7R0FLRztBQUNILFNBQVMsbUJBQW1CLENBQUMsWUFBZ0MsRUFBRSxRQUFrQixFQUFFLGNBQXVCLElBQUk7SUFDNUcsT0FBTztRQUNMLHFCQUFxQixFQUFFO1lBQ3JCLEtBQUssRUFBRSxZQUFZO1NBQ3BCO1FBQ0QsY0FBYyxFQUFFLEtBQUs7UUFDckIsdUNBQXVDO1FBQ3ZDLGFBQWEsRUFBRTtZQUNiLG9CQUFvQixFQUFFLElBQUksR0FBRyxDQUFDLHNCQUFzQixDQUFDLFFBQVEsQ0FBQztZQUM5RCxlQUFlLEVBQUUsR0FBRyxDQUFDLGVBQWUsQ0FBQyxzQkFBc0IsRUFBRTtZQUM3RCxZQUFZLEVBQUUsR0FBRyxDQUFDLGtCQUFrQixDQUFDLElBQUk7WUFDekMsZ0JBQWdCLEVBQUUsS0FBSztZQUN2QixjQUFjLEVBQUUsSUFBSTtTQUNyQjtRQUNELG9CQUFvQixFQUFFO1lBQ3BCLGlCQUFpQixFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUN2RTtLQUVrQixDQUFDO0FBQ3hCLENBQUM7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsU0FBZ0IsK0JBQStCLENBQUMsa0JBQW1DLEVBQUUsU0FBbUI7SUFDdEcsTUFBTSxTQUFTLEdBQXFCLG1CQUFtQixDQUFDLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUU1RixNQUFNLFVBQVUsR0FBMkI7UUFDekMsT0FBTyxFQUFFLGtCQUFrQjtLQUM1QixDQUFDO0lBRUYsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsQ0FBQztBQUM5QyxDQUFDO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILFNBQWdCLGlDQUFpQyxDQUFDLGlCQUFrQyxFQUNsRixRQUFrQixFQUNsQixjQUF1QixJQUFJO0lBQzNCLE1BQU0sU0FBUyxHQUFxQixtQkFBbUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEVBQUUsUUFBUSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBRTVHLE1BQU0sVUFBVSxHQUEyQjtRQUN6QyxPQUFPLEVBQUUsaUJBQWlCO0tBQzNCLENBQUM7SUFFRixPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQzlDLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLHlCQUF5QixDQUFDLFNBQW1CO0lBQzNELE9BQU8sbUJBQW1CLENBQUMsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ2pFLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLDJCQUEyQixDQUFDLFNBQW1CO0lBQzdELE9BQU8sbUJBQW1CLENBQUMsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ3JFLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLHVCQUF1QixDQUFDLEtBQWdCLEVBQUUsUUFBa0I7SUFDMUUsT0FBTztRQUNMLGNBQWMsRUFBRSxLQUFLO1FBQ3JCLGFBQWEsRUFBRTtZQUNiLG9CQUFvQixFQUFFLElBQUksR0FBRyxDQUFDLHNCQUFzQixDQUFDLFFBQVEsQ0FBQztZQUM5RCxlQUFlLEVBQUUsR0FBRyxDQUFDLGVBQWUsQ0FBQyxzQkFBc0IsRUFBRTtZQUM3RCxZQUFZLEVBQUUsR0FBRyxDQUFDLGtCQUFrQixDQUFDLElBQUk7WUFDekMsZ0JBQWdCLEVBQUUsS0FBSztZQUN2QixjQUFjLEVBQUUsSUFBSTtTQUNyQjtRQUNELFdBQVcsRUFBRSxJQUFBLG1DQUEyQixFQUFDLEVBQUUsRUFBRSxDQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFFLENBQUM7S0FDaEUsQ0FBQztBQUNKLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsMkJBQTJCO0lBQ3pDLE9BQU87UUFDTDtZQUNFLFVBQVUsRUFBRSxLQUFLO1NBQ2xCO1FBQ0Q7WUFDRSxVQUFVLEVBQUUsS0FBSztZQUNqQixpQkFBaUIsRUFBRTtnQkFDakIsV0FBVyxFQUFFLE9BQU87YUFDckI7WUFDRCxnQkFBZ0IsRUFBRSxLQUFLO1NBQ3hCO0tBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKS4gWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuICogIHdpdGggdGhlIExpY2Vuc2UuIEEgY29weSBvZiB0aGUgTGljZW5zZSBpcyBsb2NhdGVkIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiAgb3IgaW4gdGhlICdsaWNlbnNlJyBmaWxlIGFjY29tcGFueWluZyB0aGlzIGZpbGUuIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVNcbiAqICBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9uc1xuICogIGFuZCBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKlxuICogIFRoZSBmdW5jdGlvbnMgZm91bmQgaGVyZSBpbiB0aGUgY29yZSBsaWJyYXJ5IGFyZSBmb3IgaW50ZXJuYWwgdXNlIGFuZCBjYW4gYmUgY2hhbmdlZFxuICogIG9yIHJlbW92ZWQgb3V0c2lkZSBvZiBhIG1ham9yIHJlbGVhc2UuIFdlIHJlY29tbWVuZCBhZ2FpbnN0IGNhbGxpbmcgdGhlbSBkaXJlY3RseSBmcm9tIGNsaWVudCBjb2RlLlxuICovXG5cbmltcG9ydCAqIGFzIGFwaSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtYXBpZ2F0ZXdheSc7XG5pbXBvcnQgeyBJbnRlZ3JhdGlvblJlc3BvbnNlIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWFwaWdhdGV3YXknO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0IHsgTG9nR3JvdXAgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbG9ncyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IGdlbmVyYXRlUGh5c2ljYWxSZXN0QXBpTmFtZSB9IGZyb20gJy4vdXRpbHMnO1xuXG4vKipcbiAqIFByaXZhdGUgZnVuY3Rpb24gdG8gY29uZmlndXJlIGFuIGFwaS5SZXN0QXBpUHJvcHNcbiAqIEBwYXJhbSBzY29wZSAtIHRoZSBjb25zdHJ1Y3QgdG8gd2hpY2ggdGhlIFJlc3RBcGkgc2hvdWxkIGJlIGF0dGFjaGVkIHRvLlxuICogQHBhcmFtIGVuZHBvaW50VHlwZSAtIGVuZHBvaW50IHR5cGUgZm9yIEFwaSBHYXRld2F5IGUuZy4gUmVnaW9uYWwsIEdsb2JhbCwgUHJpdmF0ZVxuICogQHBhcmFtIGxvZ0dyb3VwIC0gQ1cgTG9nIGdyb3VwIGZvciBBcGkgR2F0ZXdheSBhY2Nlc3MgbG9nZ2luZ1xuICovXG5mdW5jdGlvbiBEZWZhdWx0UmVzdEFwaVByb3BzKGVuZHBvaW50VHlwZTogYXBpLkVuZHBvaW50VHlwZVtdLCBsb2dHcm91cDogTG9nR3JvdXAsIGluY2x1ZGVBdXRoOiBib29sZWFuID0gdHJ1ZSk6IGFwaS5SZXN0QXBpUHJvcHMge1xuICByZXR1cm4ge1xuICAgIGVuZHBvaW50Q29uZmlndXJhdGlvbjoge1xuICAgICAgdHlwZXM6IGVuZHBvaW50VHlwZVxuICAgIH0sXG4gICAgY2xvdWRXYXRjaFJvbGU6IGZhbHNlLFxuICAgIC8vIENvbmZpZ3VyZSBBUEkgR2F0ZXdheSBBY2Nlc3MgbG9nZ2luZ1xuICAgIGRlcGxveU9wdGlvbnM6IHtcbiAgICAgIGFjY2Vzc0xvZ0Rlc3RpbmF0aW9uOiBuZXcgYXBpLkxvZ0dyb3VwTG9nRGVzdGluYXRpb24obG9nR3JvdXApLFxuICAgICAgYWNjZXNzTG9nRm9ybWF0OiBhcGkuQWNjZXNzTG9nRm9ybWF0Lmpzb25XaXRoU3RhbmRhcmRGaWVsZHMoKSxcbiAgICAgIGxvZ2dpbmdMZXZlbDogYXBpLk1ldGhvZExvZ2dpbmdMZXZlbC5JTkZPLFxuICAgICAgZGF0YVRyYWNlRW5hYmxlZDogZmFsc2UsXG4gICAgICB0cmFjaW5nRW5hYmxlZDogdHJ1ZVxuICAgIH0sXG4gICAgZGVmYXVsdE1ldGhvZE9wdGlvbnM6IHtcbiAgICAgIGF1dGhvcml6YXRpb25UeXBlOiBpbmNsdWRlQXV0aCA/IGFwaS5BdXRob3JpemF0aW9uVHlwZS5JQU0gOiB1bmRlZmluZWRcbiAgICB9XG5cbiAgfSBhcyBhcGkuUmVzdEFwaVByb3BzO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbCBUaGlzIGlzIGFuIGludGVybmFsIGNvcmUgZnVuY3Rpb24gYW5kIHNob3VsZCBub3QgYmUgY2FsbGVkIGRpcmVjdGx5IGJ5IFNvbHV0aW9ucyBDb25zdHJ1Y3RzIGNsaWVudHMuXG4gKlxuICogUHJvdmlkZXMgdGhlIGRlZmF1bHQgc2V0IG9mIHByb3BlcnRpZXMgZm9yIEVkZ2UvR2xvYmFsIExhbWJkYSBiYWNrZWQgUmVzdEFwaVxuICogQHBhcmFtIHNjb3BlIC0gdGhlIGNvbnN0cnVjdCB0byB3aGljaCB0aGUgUmVzdEFwaSBzaG91bGQgYmUgYXR0YWNoZWQgdG8uXG4gKiBAcGFyYW0gX2VuZHBvaW50VHlwZSAtIGVuZHBvaW50IHR5cGUgZm9yIEFwaSBHYXRld2F5IGUuZy4gUmVnaW9uYWwsIEdsb2JhbCwgUHJpdmF0ZVxuICogQHBhcmFtIF9sb2dHcm91cCAtIENXIExvZyBncm91cCBmb3IgQXBpIEdhdGV3YXkgYWNjZXNzIGxvZ2dpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIERlZmF1bHRHbG9iYWxMYW1iZGFSZXN0QXBpUHJvcHMoX2V4aXN0aW5nTGFtYmRhT2JqOiBsYW1iZGEuRnVuY3Rpb24sIF9sb2dHcm91cDogTG9nR3JvdXApOiBhcGkuTGFtYmRhUmVzdEFwaVByb3BzIHtcbiAgY29uc3QgYmFzZVByb3BzOiBhcGkuUmVzdEFwaVByb3BzID0gRGVmYXVsdFJlc3RBcGlQcm9wcyhbYXBpLkVuZHBvaW50VHlwZS5FREdFXSwgX2xvZ0dyb3VwKTtcblxuICBjb25zdCBleHRyYVByb3BzOiBhcGkuTGFtYmRhUmVzdEFwaVByb3BzID0ge1xuICAgIGhhbmRsZXI6IF9leGlzdGluZ0xhbWJkYU9iaixcbiAgfTtcblxuICByZXR1cm4gT2JqZWN0LmFzc2lnbihiYXNlUHJvcHMsIGV4dHJhUHJvcHMpO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbCBUaGlzIGlzIGFuIGludGVybmFsIGNvcmUgZnVuY3Rpb24gYW5kIHNob3VsZCBub3QgYmUgY2FsbGVkIGRpcmVjdGx5IGJ5IFNvbHV0aW9ucyBDb25zdHJ1Y3RzIGNsaWVudHMuXG4gKlxuICogUHJvdmlkZXMgdGhlIGRlZmF1bHQgc2V0IG9mIHByb3BlcnRpZXMgZm9yIFJlZ2lvbmFsIExhbWJkYSBiYWNrZWQgUmVzdEFwaVxuICogQHBhcmFtIHNjb3BlIC0gdGhlIGNvbnN0cnVjdCB0byB3aGljaCB0aGUgUmVzdEFwaSBzaG91bGQgYmUgYXR0YWNoZWQgdG8uXG4gKiBAcGFyYW0gX2VuZHBvaW50VHlwZSAtIGVuZHBvaW50IHR5cGUgZm9yIEFwaSBHYXRld2F5IGUuZy4gUmVnaW9uYWwsIEdsb2JhbCwgUHJpdmF0ZVxuICogQHBhcmFtIGxvZ0dyb3VwIC0gQ1cgTG9nIGdyb3VwIGZvciBBcGkgR2F0ZXdheSBhY2Nlc3MgbG9nZ2luZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gRGVmYXVsdFJlZ2lvbmFsTGFtYmRhUmVzdEFwaVByb3BzKGV4aXN0aW5nTGFtYmRhT2JqOiBsYW1iZGEuRnVuY3Rpb24sXG4gIGxvZ0dyb3VwOiBMb2dHcm91cCxcbiAgaW5jbHVkZUF1dGg6IGJvb2xlYW4gPSB0cnVlKTogYXBpLkxhbWJkYVJlc3RBcGlQcm9wcyB7XG4gIGNvbnN0IGJhc2VQcm9wczogYXBpLlJlc3RBcGlQcm9wcyA9IERlZmF1bHRSZXN0QXBpUHJvcHMoW2FwaS5FbmRwb2ludFR5cGUuUkVHSU9OQUxdLCBsb2dHcm91cCwgaW5jbHVkZUF1dGgpO1xuXG4gIGNvbnN0IGV4dHJhUHJvcHM6IGFwaS5MYW1iZGFSZXN0QXBpUHJvcHMgPSB7XG4gICAgaGFuZGxlcjogZXhpc3RpbmdMYW1iZGFPYmosXG4gIH07XG5cbiAgcmV0dXJuIE9iamVjdC5hc3NpZ24oYmFzZVByb3BzLCBleHRyYVByb3BzKTtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWwgVGhpcyBpcyBhbiBpbnRlcm5hbCBjb3JlIGZ1bmN0aW9uIGFuZCBzaG91bGQgbm90IGJlIGNhbGxlZCBkaXJlY3RseSBieSBTb2x1dGlvbnMgQ29uc3RydWN0cyBjbGllbnRzLlxuICpcbiAqIFByb3ZpZGVzIHRoZSBkZWZhdWx0IHNldCBvZiBwcm9wZXJ0aWVzIGZvciBFZGdlL0dsb2JhbCBSZXN0QXBpXG4gKiBAcGFyYW0gX2xvZ0dyb3VwIC0gQ1cgTG9nIGdyb3VwIGZvciBBcGkgR2F0ZXdheSBhY2Nlc3MgbG9nZ2luZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gRGVmYXVsdEdsb2JhbFJlc3RBcGlQcm9wcyhfbG9nR3JvdXA6IExvZ0dyb3VwKSB7XG4gIHJldHVybiBEZWZhdWx0UmVzdEFwaVByb3BzKFthcGkuRW5kcG9pbnRUeXBlLkVER0VdLCBfbG9nR3JvdXApO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbCBUaGlzIGlzIGFuIGludGVybmFsIGNvcmUgZnVuY3Rpb24gYW5kIHNob3VsZCBub3QgYmUgY2FsbGVkIGRpcmVjdGx5IGJ5IFNvbHV0aW9ucyBDb25zdHJ1Y3RzIGNsaWVudHMuXG4gKlxuICogUHJvdmlkZXMgdGhlIGRlZmF1bHQgc2V0IG9mIHByb3BlcnRpZXMgZm9yIFJlZ2lvbmFsIFJlc3RBcGlcbiAqIEBwYXJhbSBfbG9nR3JvdXAgLSBDVyBMb2cgZ3JvdXAgZm9yIEFwaSBHYXRld2F5IGFjY2VzcyBsb2dnaW5nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBEZWZhdWx0UmVnaW9uYWxSZXN0QXBpUHJvcHMoX2xvZ0dyb3VwOiBMb2dHcm91cCkge1xuICByZXR1cm4gRGVmYXVsdFJlc3RBcGlQcm9wcyhbYXBpLkVuZHBvaW50VHlwZS5SRUdJT05BTF0sIF9sb2dHcm91cCk7XG59XG5cbi8qKlxuICogQGludGVybmFsIFRoaXMgaXMgYW4gaW50ZXJuYWwgY29yZSBmdW5jdGlvbiBhbmQgc2hvdWxkIG5vdCBiZSBjYWxsZWQgZGlyZWN0bHkgYnkgU29sdXRpb25zIENvbnN0cnVjdHMgY2xpZW50cy5cbiAqXG4gKiBQcm92aWRlcyB0aGUgZGVmYXVsdCBzZXQgb2YgcHJvcGVydGllcyBmb3IgU3BlY1Jlc3RBcGlcbiAqIEBwYXJhbSBsb2dHcm91cCAtIENsb3VkV2F0Y2ggTG9nIEdyb3VwIGZvciBBcGkgR2F0ZXdheSBBY2Nlc3MgTG9nZ2luZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gRGVmYXVsdFNwZWNSZXN0QXBpUHJvcHMoc2NvcGU6IENvbnN0cnVjdCwgbG9nR3JvdXA6IExvZ0dyb3VwKTogYXBpLlJlc3RBcGlCYXNlUHJvcHMge1xuICByZXR1cm4ge1xuICAgIGNsb3VkV2F0Y2hSb2xlOiBmYWxzZSxcbiAgICBkZXBsb3lPcHRpb25zOiB7XG4gICAgICBhY2Nlc3NMb2dEZXN0aW5hdGlvbjogbmV3IGFwaS5Mb2dHcm91cExvZ0Rlc3RpbmF0aW9uKGxvZ0dyb3VwKSxcbiAgICAgIGFjY2Vzc0xvZ0Zvcm1hdDogYXBpLkFjY2Vzc0xvZ0Zvcm1hdC5qc29uV2l0aFN0YW5kYXJkRmllbGRzKCksXG4gICAgICBsb2dnaW5nTGV2ZWw6IGFwaS5NZXRob2RMb2dnaW5nTGV2ZWwuSU5GTyxcbiAgICAgIGRhdGFUcmFjZUVuYWJsZWQ6IGZhbHNlLFxuICAgICAgdHJhY2luZ0VuYWJsZWQ6IHRydWVcbiAgICB9LFxuICAgIHJlc3RBcGlOYW1lOiBnZW5lcmF0ZVBoeXNpY2FsUmVzdEFwaU5hbWUoXCJcIiwgWyBzY29wZS5ub2RlLmlkIF0pLFxuICB9O1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbCBUaGlzIGlzIGFuIGludGVybmFsIGNvcmUgZnVuY3Rpb24gYW5kIHNob3VsZCBub3QgYmUgY2FsbGVkIGRpcmVjdGx5IGJ5IFNvbHV0aW9ucyBDb25zdHJ1Y3RzIGNsaWVudHMuXG4gKlxuICogQHJldHVybnMgVGhlIHNldCBvZiBkZWZhdWx0IGludGVncmF0aW9uIHJlc3BvbnNlcyBmb3Igc3RhdHVzIGNvZGVzIDIwMCBhbmQgNTAwLlxuICovXG5leHBvcnQgZnVuY3Rpb24gRGVmYXVsdEludGVncmF0aW9uUmVzcG9uc2VzKCk6IEludGVncmF0aW9uUmVzcG9uc2VbXSB7XG4gIHJldHVybiBbXG4gICAge1xuICAgICAgc3RhdHVzQ29kZTogXCIyMDBcIlxuICAgIH0sXG4gICAge1xuICAgICAgc3RhdHVzQ29kZTogXCI1MDBcIixcbiAgICAgIHJlc3BvbnNlVGVtcGxhdGVzOiB7XG4gICAgICAgIFwidGV4dC9odG1sXCI6IFwiRXJyb3JcIlxuICAgICAgfSxcbiAgICAgIHNlbGVjdGlvblBhdHRlcm46IFwiNTAwXCJcbiAgICB9XG4gIF07XG59Il19
138
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpZ2F0ZXdheS1kZWZhdWx0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImFwaWdhdGV3YXktZGVmYXVsdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7OztHQVdHOztBQWlESCwwRUFRQztBQVVELDhFQVVDO0FBUUQsOERBRUM7QUFRRCxrRUFFQztBQVFELDBEQVlDO0FBT0Qsa0VBYUM7QUF2SUQ7OztHQUdHO0FBRUgsa0RBQWtEO0FBS2xELG1DQUFzRDtBQUV0RDs7Ozs7R0FLRztBQUNILFNBQVMsbUJBQW1CLENBQUMsWUFBZ0MsRUFBRSxRQUFrQixFQUFFLGNBQXVCLElBQUk7SUFDNUcsT0FBTztRQUNMLHFCQUFxQixFQUFFO1lBQ3JCLEtBQUssRUFBRSxZQUFZO1NBQ3BCO1FBQ0QsY0FBYyxFQUFFLEtBQUs7UUFDckIsdUNBQXVDO1FBQ3ZDLGFBQWEsRUFBRTtZQUNiLG9CQUFvQixFQUFFLElBQUksR0FBRyxDQUFDLHNCQUFzQixDQUFDLFFBQVEsQ0FBQztZQUM5RCxlQUFlLEVBQUUsR0FBRyxDQUFDLGVBQWUsQ0FBQyxzQkFBc0IsRUFBRTtZQUM3RCxZQUFZLEVBQUUsR0FBRyxDQUFDLGtCQUFrQixDQUFDLElBQUk7WUFDekMsZ0JBQWdCLEVBQUUsS0FBSztZQUN2QixjQUFjLEVBQUUsSUFBSTtTQUNyQjtRQUNELG9CQUFvQixFQUFFO1lBQ3BCLGlCQUFpQixFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUN2RTtLQUVrQixDQUFDO0FBQ3hCLENBQUM7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsU0FBZ0IsK0JBQStCLENBQUMsaUJBQWtDLEVBQUUsUUFBa0I7SUFDcEcsTUFBTSxTQUFTLEdBQXFCLG1CQUFtQixDQUFDLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUUzRixNQUFNLFVBQVUsR0FBMkI7UUFDekMsT0FBTyxFQUFFLGlCQUFpQjtLQUMzQixDQUFDO0lBRUYsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsQ0FBQztBQUM5QyxDQUFDO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILFNBQWdCLGlDQUFpQyxDQUFDLGlCQUFrQyxFQUNsRixRQUFrQixFQUNsQixjQUF1QixJQUFJO0lBQzNCLE1BQU0sU0FBUyxHQUFxQixtQkFBbUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEVBQUUsUUFBUSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBRTVHLE1BQU0sVUFBVSxHQUEyQjtRQUN6QyxPQUFPLEVBQUUsaUJBQWlCO0tBQzNCLENBQUM7SUFFRixPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQzlDLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLHlCQUF5QixDQUFDLFFBQWtCO0lBQzFELE9BQU8sbUJBQW1CLENBQUMsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBQ2hFLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLDJCQUEyQixDQUFDLFFBQWtCO0lBQzVELE9BQU8sbUJBQW1CLENBQUMsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBQ3BFLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLHVCQUF1QixDQUFDLEtBQWdCLEVBQUUsUUFBa0I7SUFDMUUsT0FBTztRQUNMLGNBQWMsRUFBRSxLQUFLO1FBQ3JCLGFBQWEsRUFBRTtZQUNiLG9CQUFvQixFQUFFLElBQUksR0FBRyxDQUFDLHNCQUFzQixDQUFDLFFBQVEsQ0FBQztZQUM5RCxlQUFlLEVBQUUsR0FBRyxDQUFDLGVBQWUsQ0FBQyxzQkFBc0IsRUFBRTtZQUM3RCxZQUFZLEVBQUUsR0FBRyxDQUFDLGtCQUFrQixDQUFDLElBQUk7WUFDekMsZ0JBQWdCLEVBQUUsS0FBSztZQUN2QixjQUFjLEVBQUUsSUFBSTtTQUNyQjtRQUNELFdBQVcsRUFBRSxJQUFBLG1DQUEyQixFQUFDLEVBQUUsRUFBRSxDQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFFLENBQUM7S0FDaEUsQ0FBQztBQUNKLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsMkJBQTJCO0lBQ3pDLE9BQU87UUFDTDtZQUNFLFVBQVUsRUFBRSxLQUFLO1NBQ2xCO1FBQ0Q7WUFDRSxVQUFVLEVBQUUsS0FBSztZQUNqQixpQkFBaUIsRUFBRTtnQkFDakIsV0FBVyxFQUFFLE9BQU87YUFDckI7WUFDRCxnQkFBZ0IsRUFBRSxLQUFLO1NBQ3hCO0tBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKS4gWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuICogIHdpdGggdGhlIExpY2Vuc2UuIEEgY29weSBvZiB0aGUgTGljZW5zZSBpcyBsb2NhdGVkIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiAgb3IgaW4gdGhlICdsaWNlbnNlJyBmaWxlIGFjY29tcGFueWluZyB0aGlzIGZpbGUuIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVNcbiAqICBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9uc1xuICogIGFuZCBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKlxuICogIFRoZSBmdW5jdGlvbnMgZm91bmQgaGVyZSBpbiB0aGUgY29yZSBsaWJyYXJ5IGFyZSBmb3IgaW50ZXJuYWwgdXNlIGFuZCBjYW4gYmUgY2hhbmdlZFxuICogIG9yIHJlbW92ZWQgb3V0c2lkZSBvZiBhIG1ham9yIHJlbGVhc2UuIFdlIHJlY29tbWVuZCBhZ2FpbnN0IGNhbGxpbmcgdGhlbSBkaXJlY3RseSBmcm9tIGNsaWVudCBjb2RlLlxuICovXG5cbmltcG9ydCAqIGFzIGFwaSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtYXBpZ2F0ZXdheSc7XG5pbXBvcnQgeyBJbnRlZ3JhdGlvblJlc3BvbnNlIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWFwaWdhdGV3YXknO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0IHsgTG9nR3JvdXAgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbG9ncyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IGdlbmVyYXRlUGh5c2ljYWxSZXN0QXBpTmFtZSB9IGZyb20gJy4vdXRpbHMnO1xuXG4vKipcbiAqIFByaXZhdGUgZnVuY3Rpb24gdG8gY29uZmlndXJlIGFuIGFwaS5SZXN0QXBpUHJvcHNcbiAqIEBwYXJhbSBzY29wZSAtIHRoZSBjb25zdHJ1Y3QgdG8gd2hpY2ggdGhlIFJlc3RBcGkgc2hvdWxkIGJlIGF0dGFjaGVkIHRvLlxuICogQHBhcmFtIGVuZHBvaW50VHlwZSAtIGVuZHBvaW50IHR5cGUgZm9yIEFwaSBHYXRld2F5IGUuZy4gUmVnaW9uYWwsIEdsb2JhbCwgUHJpdmF0ZVxuICogQHBhcmFtIGxvZ0dyb3VwIC0gQ1cgTG9nIGdyb3VwIGZvciBBcGkgR2F0ZXdheSBhY2Nlc3MgbG9nZ2luZ1xuICovXG5mdW5jdGlvbiBEZWZhdWx0UmVzdEFwaVByb3BzKGVuZHBvaW50VHlwZTogYXBpLkVuZHBvaW50VHlwZVtdLCBsb2dHcm91cDogTG9nR3JvdXAsIGluY2x1ZGVBdXRoOiBib29sZWFuID0gdHJ1ZSk6IGFwaS5SZXN0QXBpUHJvcHMge1xuICByZXR1cm4ge1xuICAgIGVuZHBvaW50Q29uZmlndXJhdGlvbjoge1xuICAgICAgdHlwZXM6IGVuZHBvaW50VHlwZVxuICAgIH0sXG4gICAgY2xvdWRXYXRjaFJvbGU6IGZhbHNlLFxuICAgIC8vIENvbmZpZ3VyZSBBUEkgR2F0ZXdheSBBY2Nlc3MgbG9nZ2luZ1xuICAgIGRlcGxveU9wdGlvbnM6IHtcbiAgICAgIGFjY2Vzc0xvZ0Rlc3RpbmF0aW9uOiBuZXcgYXBpLkxvZ0dyb3VwTG9nRGVzdGluYXRpb24obG9nR3JvdXApLFxuICAgICAgYWNjZXNzTG9nRm9ybWF0OiBhcGkuQWNjZXNzTG9nRm9ybWF0Lmpzb25XaXRoU3RhbmRhcmRGaWVsZHMoKSxcbiAgICAgIGxvZ2dpbmdMZXZlbDogYXBpLk1ldGhvZExvZ2dpbmdMZXZlbC5JTkZPLFxuICAgICAgZGF0YVRyYWNlRW5hYmxlZDogZmFsc2UsXG4gICAgICB0cmFjaW5nRW5hYmxlZDogdHJ1ZVxuICAgIH0sXG4gICAgZGVmYXVsdE1ldGhvZE9wdGlvbnM6IHtcbiAgICAgIGF1dGhvcml6YXRpb25UeXBlOiBpbmNsdWRlQXV0aCA/IGFwaS5BdXRob3JpemF0aW9uVHlwZS5JQU0gOiB1bmRlZmluZWRcbiAgICB9XG5cbiAgfSBhcyBhcGkuUmVzdEFwaVByb3BzO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbCBUaGlzIGlzIGFuIGludGVybmFsIGNvcmUgZnVuY3Rpb24gYW5kIHNob3VsZCBub3QgYmUgY2FsbGVkIGRpcmVjdGx5IGJ5IFNvbHV0aW9ucyBDb25zdHJ1Y3RzIGNsaWVudHMuXG4gKlxuICogUHJvdmlkZXMgdGhlIGRlZmF1bHQgc2V0IG9mIHByb3BlcnRpZXMgZm9yIEVkZ2UvR2xvYmFsIExhbWJkYSBiYWNrZWQgUmVzdEFwaVxuICogQHBhcmFtIHNjb3BlIC0gdGhlIGNvbnN0cnVjdCB0byB3aGljaCB0aGUgUmVzdEFwaSBzaG91bGQgYmUgYXR0YWNoZWQgdG8uXG4gKiBAcGFyYW0gX2VuZHBvaW50VHlwZSAtIGVuZHBvaW50IHR5cGUgZm9yIEFwaSBHYXRld2F5IGUuZy4gUmVnaW9uYWwsIEdsb2JhbCwgUHJpdmF0ZVxuICogQHBhcmFtIGxvZ0dyb3VwIC0gQ1cgTG9nIGdyb3VwIGZvciBBcGkgR2F0ZXdheSBhY2Nlc3MgbG9nZ2luZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gRGVmYXVsdEdsb2JhbExhbWJkYVJlc3RBcGlQcm9wcyhleGlzdGluZ0xhbWJkYU9iajogbGFtYmRhLkZ1bmN0aW9uLCBsb2dHcm91cDogTG9nR3JvdXApOiBhcGkuTGFtYmRhUmVzdEFwaVByb3BzIHtcbiAgY29uc3QgYmFzZVByb3BzOiBhcGkuUmVzdEFwaVByb3BzID0gRGVmYXVsdFJlc3RBcGlQcm9wcyhbYXBpLkVuZHBvaW50VHlwZS5FREdFXSwgbG9nR3JvdXApO1xuXG4gIGNvbnN0IGV4dHJhUHJvcHM6IGFwaS5MYW1iZGFSZXN0QXBpUHJvcHMgPSB7XG4gICAgaGFuZGxlcjogZXhpc3RpbmdMYW1iZGFPYmosXG4gIH07XG5cbiAgcmV0dXJuIE9iamVjdC5hc3NpZ24oYmFzZVByb3BzLCBleHRyYVByb3BzKTtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWwgVGhpcyBpcyBhbiBpbnRlcm5hbCBjb3JlIGZ1bmN0aW9uIGFuZCBzaG91bGQgbm90IGJlIGNhbGxlZCBkaXJlY3RseSBieSBTb2x1dGlvbnMgQ29uc3RydWN0cyBjbGllbnRzLlxuICpcbiAqIFByb3ZpZGVzIHRoZSBkZWZhdWx0IHNldCBvZiBwcm9wZXJ0aWVzIGZvciBSZWdpb25hbCBMYW1iZGEgYmFja2VkIFJlc3RBcGlcbiAqIEBwYXJhbSBzY29wZSAtIHRoZSBjb25zdHJ1Y3QgdG8gd2hpY2ggdGhlIFJlc3RBcGkgc2hvdWxkIGJlIGF0dGFjaGVkIHRvLlxuICogQHBhcmFtIF9lbmRwb2ludFR5cGUgLSBlbmRwb2ludCB0eXBlIGZvciBBcGkgR2F0ZXdheSBlLmcuIFJlZ2lvbmFsLCBHbG9iYWwsIFByaXZhdGVcbiAqIEBwYXJhbSBsb2dHcm91cCAtIENXIExvZyBncm91cCBmb3IgQXBpIEdhdGV3YXkgYWNjZXNzIGxvZ2dpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIERlZmF1bHRSZWdpb25hbExhbWJkYVJlc3RBcGlQcm9wcyhleGlzdGluZ0xhbWJkYU9iajogbGFtYmRhLkZ1bmN0aW9uLFxuICBsb2dHcm91cDogTG9nR3JvdXAsXG4gIGluY2x1ZGVBdXRoOiBib29sZWFuID0gdHJ1ZSk6IGFwaS5MYW1iZGFSZXN0QXBpUHJvcHMge1xuICBjb25zdCBiYXNlUHJvcHM6IGFwaS5SZXN0QXBpUHJvcHMgPSBEZWZhdWx0UmVzdEFwaVByb3BzKFthcGkuRW5kcG9pbnRUeXBlLlJFR0lPTkFMXSwgbG9nR3JvdXAsIGluY2x1ZGVBdXRoKTtcblxuICBjb25zdCBleHRyYVByb3BzOiBhcGkuTGFtYmRhUmVzdEFwaVByb3BzID0ge1xuICAgIGhhbmRsZXI6IGV4aXN0aW5nTGFtYmRhT2JqLFxuICB9O1xuXG4gIHJldHVybiBPYmplY3QuYXNzaWduKGJhc2VQcm9wcywgZXh0cmFQcm9wcyk7XG59XG5cbi8qKlxuICogQGludGVybmFsIFRoaXMgaXMgYW4gaW50ZXJuYWwgY29yZSBmdW5jdGlvbiBhbmQgc2hvdWxkIG5vdCBiZSBjYWxsZWQgZGlyZWN0bHkgYnkgU29sdXRpb25zIENvbnN0cnVjdHMgY2xpZW50cy5cbiAqXG4gKiBQcm92aWRlcyB0aGUgZGVmYXVsdCBzZXQgb2YgcHJvcGVydGllcyBmb3IgRWRnZS9HbG9iYWwgUmVzdEFwaVxuICogQHBhcmFtIGxvZ0dyb3VwIC0gQ1cgTG9nIGdyb3VwIGZvciBBcGkgR2F0ZXdheSBhY2Nlc3MgbG9nZ2luZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gRGVmYXVsdEdsb2JhbFJlc3RBcGlQcm9wcyhsb2dHcm91cDogTG9nR3JvdXApIHtcbiAgcmV0dXJuIERlZmF1bHRSZXN0QXBpUHJvcHMoW2FwaS5FbmRwb2ludFR5cGUuRURHRV0sIGxvZ0dyb3VwKTtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWwgVGhpcyBpcyBhbiBpbnRlcm5hbCBjb3JlIGZ1bmN0aW9uIGFuZCBzaG91bGQgbm90IGJlIGNhbGxlZCBkaXJlY3RseSBieSBTb2x1dGlvbnMgQ29uc3RydWN0cyBjbGllbnRzLlxuICpcbiAqIFByb3ZpZGVzIHRoZSBkZWZhdWx0IHNldCBvZiBwcm9wZXJ0aWVzIGZvciBSZWdpb25hbCBSZXN0QXBpXG4gKiBAcGFyYW0gbG9nR3JvdXAgLSBDVyBMb2cgZ3JvdXAgZm9yIEFwaSBHYXRld2F5IGFjY2VzcyBsb2dnaW5nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBEZWZhdWx0UmVnaW9uYWxSZXN0QXBpUHJvcHMobG9nR3JvdXA6IExvZ0dyb3VwKSB7XG4gIHJldHVybiBEZWZhdWx0UmVzdEFwaVByb3BzKFthcGkuRW5kcG9pbnRUeXBlLlJFR0lPTkFMXSwgbG9nR3JvdXApO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbCBUaGlzIGlzIGFuIGludGVybmFsIGNvcmUgZnVuY3Rpb24gYW5kIHNob3VsZCBub3QgYmUgY2FsbGVkIGRpcmVjdGx5IGJ5IFNvbHV0aW9ucyBDb25zdHJ1Y3RzIGNsaWVudHMuXG4gKlxuICogUHJvdmlkZXMgdGhlIGRlZmF1bHQgc2V0IG9mIHByb3BlcnRpZXMgZm9yIFNwZWNSZXN0QXBpXG4gKiBAcGFyYW0gbG9nR3JvdXAgLSBDbG91ZFdhdGNoIExvZyBHcm91cCBmb3IgQXBpIEdhdGV3YXkgQWNjZXNzIExvZ2dpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIERlZmF1bHRTcGVjUmVzdEFwaVByb3BzKHNjb3BlOiBDb25zdHJ1Y3QsIGxvZ0dyb3VwOiBMb2dHcm91cCk6IGFwaS5SZXN0QXBpQmFzZVByb3BzIHtcbiAgcmV0dXJuIHtcbiAgICBjbG91ZFdhdGNoUm9sZTogZmFsc2UsXG4gICAgZGVwbG95T3B0aW9uczoge1xuICAgICAgYWNjZXNzTG9nRGVzdGluYXRpb246IG5ldyBhcGkuTG9nR3JvdXBMb2dEZXN0aW5hdGlvbihsb2dHcm91cCksXG4gICAgICBhY2Nlc3NMb2dGb3JtYXQ6IGFwaS5BY2Nlc3NMb2dGb3JtYXQuanNvbldpdGhTdGFuZGFyZEZpZWxkcygpLFxuICAgICAgbG9nZ2luZ0xldmVsOiBhcGkuTWV0aG9kTG9nZ2luZ0xldmVsLklORk8sXG4gICAgICBkYXRhVHJhY2VFbmFibGVkOiBmYWxzZSxcbiAgICAgIHRyYWNpbmdFbmFibGVkOiB0cnVlXG4gICAgfSxcbiAgICByZXN0QXBpTmFtZTogZ2VuZXJhdGVQaHlzaWNhbFJlc3RBcGlOYW1lKFwiXCIsIFsgc2NvcGUubm9kZS5pZCBdKSxcbiAgfTtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWwgVGhpcyBpcyBhbiBpbnRlcm5hbCBjb3JlIGZ1bmN0aW9uIGFuZCBzaG91bGQgbm90IGJlIGNhbGxlZCBkaXJlY3RseSBieSBTb2x1dGlvbnMgQ29uc3RydWN0cyBjbGllbnRzLlxuICpcbiAqIEByZXR1cm5zIFRoZSBzZXQgb2YgZGVmYXVsdCBpbnRlZ3JhdGlvbiByZXNwb25zZXMgZm9yIHN0YXR1cyBjb2RlcyAyMDAgYW5kIDUwMC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIERlZmF1bHRJbnRlZ3JhdGlvblJlc3BvbnNlcygpOiBJbnRlZ3JhdGlvblJlc3BvbnNlW10ge1xuICByZXR1cm4gW1xuICAgIHtcbiAgICAgIHN0YXR1c0NvZGU6IFwiMjAwXCJcbiAgICB9LFxuICAgIHtcbiAgICAgIHN0YXR1c0NvZGU6IFwiNTAwXCIsXG4gICAgICByZXNwb25zZVRlbXBsYXRlczoge1xuICAgICAgICBcInRleHQvaHRtbFwiOiBcIkVycm9yXCJcbiAgICAgIH0sXG4gICAgICBzZWxlY3Rpb25QYXR0ZXJuOiBcIjUwMFwiXG4gICAgfVxuICBdO1xufVxuIl19
@@ -27,10 +27,10 @@ export interface GlobalLambdaRestApiResponse {
27
27
  *
28
28
  * Builds and returns a global api.RestApi designed to be used with an AWS Lambda function.
29
29
  * @param scope - the construct to which the RestApi should be attached to.
30
- * @param _existingLambdaObj - an existing AWS Lambda function.
30
+ * @param existingLambdaObj - an existing AWS Lambda function.
31
31
  * @param apiGatewayProps - (optional) user-specified properties to override the default properties.
32
32
  */
33
- export declare function GlobalLambdaRestApi(scope: Construct, _existingLambdaObj: lambda.Function, apiGatewayProps?: apigateway.LambdaRestApiProps, logGroupProps?: logs.LogGroupProps): GlobalLambdaRestApiResponse;
33
+ export declare function GlobalLambdaRestApi(scope: Construct, existingLambdaObj: lambda.Function, apiGatewayProps?: apigateway.LambdaRestApiProps, logGroupProps?: logs.LogGroupProps): GlobalLambdaRestApiResponse;
34
34
  export interface RegionalLambdaRestApiResponse {
35
35
  readonly api: apigateway.RestApi;
36
36
  readonly role?: iam.Role;