@aws-solutions-constructs/aws-apigateway-sagemakerendpoint 1.123.0 → 1.127.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 +52 -27
- package/README.md +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +2 -2
- package/package.json +14 -14
- package/test/integ.apigateway-sagemakerendpoint-overwrite.expected.json +34 -0
- package/test/integ.no-overwrite.expected.json +34 -0
package/.jsii
CHANGED
|
@@ -8,11 +8,11 @@
|
|
|
8
8
|
"url": "https://aws.amazon.com"
|
|
9
9
|
},
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@aws-cdk/aws-apigateway": "1.
|
|
12
|
-
"@aws-cdk/aws-iam": "1.
|
|
13
|
-
"@aws-cdk/aws-logs": "1.
|
|
14
|
-
"@aws-cdk/core": "1.
|
|
15
|
-
"@aws-solutions-constructs/core": "1.
|
|
11
|
+
"@aws-cdk/aws-apigateway": "1.127.0",
|
|
12
|
+
"@aws-cdk/aws-iam": "1.127.0",
|
|
13
|
+
"@aws-cdk/aws-logs": "1.127.0",
|
|
14
|
+
"@aws-cdk/core": "1.127.0",
|
|
15
|
+
"@aws-solutions-constructs/core": "1.127.0",
|
|
16
16
|
"constructs": "^3.2.0"
|
|
17
17
|
},
|
|
18
18
|
"dependencyClosure": {
|
|
@@ -180,12 +180,7 @@
|
|
|
180
180
|
},
|
|
181
181
|
"@aws-cdk/aws-cloudfront": {
|
|
182
182
|
"submodules": {
|
|
183
|
-
"@aws-cdk/aws-cloudfront.experimental": {
|
|
184
|
-
"locationInModule": {
|
|
185
|
-
"filename": "lib/index.ts",
|
|
186
|
-
"line": 12
|
|
187
|
-
}
|
|
188
|
-
}
|
|
183
|
+
"@aws-cdk/aws-cloudfront.experimental": {}
|
|
189
184
|
},
|
|
190
185
|
"targets": {
|
|
191
186
|
"dotnet": {
|
|
@@ -510,6 +505,33 @@
|
|
|
510
505
|
}
|
|
511
506
|
}
|
|
512
507
|
},
|
|
508
|
+
"@aws-cdk/aws-elasticloadbalancingv2-targets": {
|
|
509
|
+
"targets": {
|
|
510
|
+
"dotnet": {
|
|
511
|
+
"iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
|
|
512
|
+
"namespace": "Amazon.CDK.AWS.ElasticLoadBalancingV2.Targets",
|
|
513
|
+
"packageId": "Amazon.CDK.AWS.ElasticLoadBalancingV2.Targets"
|
|
514
|
+
},
|
|
515
|
+
"java": {
|
|
516
|
+
"maven": {
|
|
517
|
+
"artifactId": "elasticloadbalancingv2-targets",
|
|
518
|
+
"groupId": "software.amazon.awscdk"
|
|
519
|
+
},
|
|
520
|
+
"package": "software.amazon.awscdk.services.elasticloadbalancingv2.targets"
|
|
521
|
+
},
|
|
522
|
+
"js": {
|
|
523
|
+
"npm": "@aws-cdk/aws-elasticloadbalancingv2-targets"
|
|
524
|
+
},
|
|
525
|
+
"python": {
|
|
526
|
+
"classifiers": [
|
|
527
|
+
"Framework :: AWS CDK",
|
|
528
|
+
"Framework :: AWS CDK :: 1"
|
|
529
|
+
],
|
|
530
|
+
"distName": "aws-cdk.aws-elasticloadbalancingv2-targets",
|
|
531
|
+
"module": "aws_cdk.aws_elasticloadbalancingv2_targets"
|
|
532
|
+
}
|
|
533
|
+
}
|
|
534
|
+
},
|
|
513
535
|
"@aws-cdk/aws-elasticsearch": {
|
|
514
536
|
"targets": {
|
|
515
537
|
"dotnet": {
|
|
@@ -1426,7 +1448,7 @@
|
|
|
1426
1448
|
},
|
|
1427
1449
|
"description": "CDK Constructs for AWS API Gateway and Amazon SageMaker Endpoint integration.",
|
|
1428
1450
|
"homepage": "https://github.com/awslabs/aws-solutions-constructs.git",
|
|
1429
|
-
"jsiiVersion": "1.
|
|
1451
|
+
"jsiiVersion": "1.46.0 (build cd08c55)",
|
|
1430
1452
|
"keywords": [
|
|
1431
1453
|
"aws",
|
|
1432
1454
|
"cdk",
|
|
@@ -1445,7 +1467,7 @@
|
|
|
1445
1467
|
},
|
|
1446
1468
|
"name": "@aws-solutions-constructs/aws-apigateway-sagemakerendpoint",
|
|
1447
1469
|
"readme": {
|
|
1448
|
-
"markdown": "# aws-apigateway-sagemakerendpoint module\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n\n\n> All classes are under active development and subject to non-backward compatible changes or removal in any\n> future version. These are not subject to the [Semantic Versioning](https://semver.org/) model.\n> This means that while you may use them, you may need to update your source code when upgrading to a newer version of this package.\n\n---\n<!--END STABILITY BANNER-->\n\n| **Reference Documentation**:| <span style=\"font-weight: normal\">https://docs.aws.amazon.com/solutions/latest/constructs/</span>|\n|:-------------|:-------------|\n<div style=\"height:8px\"></div>\n\n| **Language** | **Package** |\n|:-------------|-----------------|\n| Python|`aws_solutions_constructs.aws_apigateway_sagemakerendpoint`|\n| Typescript|`@aws-solutions-constructs/aws-apigateway-sagemakerendpoint`|\n| Java|`software.amazon.awsconstructs.services.apigatewaysagemakerendpoint`|\n\n## Overview\n\nThis AWS Solutions Construct implements an Amazon API Gateway connected to an Amazon SageMaker endpoint pattern.\n\nHere is a minimal deployable pattern definition in Typescript:\n\n``` javascript\nimport { ApiGatewayToSageMakerEndpoint, ApiGatewayToSageMakerEndpointProps } from '@aws-solutions-constructs/aws-apigateway-sagemakerendpoint';\n\n// Below is an example VTL (Velocity Template Language) mapping template for mapping the Api GET request to the Sagemaker POST request\nconst requestTemplate =\n`{\n \"instances\": [\n#set( $user_id = $input.params(\"user_id\") )\n#set( $items = $input.params(\"items\") )\n#foreach( $item in $items.split(\",\") )\n {\"in0\": [$user_id], \"in1\": [$item]}#if( $foreach.hasNext ),#end\n $esc.newline\n#end\n ]\n}`;\n\n// Replace 'my-endpoint' with your Sagemaker Inference Endpoint\nnew ApiGatewayToSageMakerEndpoint(this, 'test-apigw-sagemakerendpoint', {\n endpointName: 'my-endpoint',\n resourcePath: '{user_id}',\n requestMappingTemplate: requestTemplate\n});\n```\n\n## Initializer\n\n``` text\nnew ApiGatewayToSageMakerEndpoint(scope: Construct, id: string, props: ApiGatewayToSageMakerEndpointProps);\n```\n\n_Parameters_\n\n* scope [`Construct`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html)\n* id `string`\n* props [`ApiGatewayToSageMakerEndpointProps`](#pattern-construct-props)\n\n## Pattern Construct Props\n\n| **Name** | **Type** | **Description** |\n|:-------------|:----------------|-----------------|\n|apiGatewayProps?|[`api.RestApiProps`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApiProps.html)|Optional user-provided props to override the default props for the API Gateway.|\n|apiGatewayExecutionRole?|[`iam.Role`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)|IAM Role used by API Gateway to invoke the SageMaker endpoint. If not specified, a default role is created with access to `endpointName`.|\n|endpointName|`string`|Name of the deployed SageMaker inference endpoint.|\n|resourceName?|`string`|Optional resource name where the GET method will be available.|\n|resourcePath|`string`|Resource path for the GET method. The variable defined here can be referenced in `requestMappingTemplate`.|\n|requestMappingTemplate|`string`|Mapping template to convert GET requests received on the REST API to POST requests expected by the SageMaker endpoint.|\n|responseMappingTemplate?|`string`|Optional mapping template to convert responses received from the SageMaker endpoint.|\n|logGroupProps?|[`logs.LogGroupProps`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)|User provided props to override the default props for for the CloudWatchLogs LogGroup.|\n\n## Pattern Properties\n\n| **Name** | **Type** | **Description** |\n|:-------------|:----------------|-----------------|\n|apiGateway|[`api.RestApi`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html)|Returns an instance of the API Gateway REST API created by the pattern.|\n|apiGatewayRole|[`iam.Role`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)|Returns an instance of the iam.Role created by the construct for API Gateway.|\n|apiGatewayCloudWatchRole
|
|
1470
|
+
"markdown": "# aws-apigateway-sagemakerendpoint module\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n\n\n> All classes are under active development and subject to non-backward compatible changes or removal in any\n> future version. These are not subject to the [Semantic Versioning](https://semver.org/) model.\n> This means that while you may use them, you may need to update your source code when upgrading to a newer version of this package.\n\n---\n<!--END STABILITY BANNER-->\n\n| **Reference Documentation**:| <span style=\"font-weight: normal\">https://docs.aws.amazon.com/solutions/latest/constructs/</span>|\n|:-------------|:-------------|\n<div style=\"height:8px\"></div>\n\n| **Language** | **Package** |\n|:-------------|-----------------|\n| Python|`aws_solutions_constructs.aws_apigateway_sagemakerendpoint`|\n| Typescript|`@aws-solutions-constructs/aws-apigateway-sagemakerendpoint`|\n| Java|`software.amazon.awsconstructs.services.apigatewaysagemakerendpoint`|\n\n## Overview\n\nThis AWS Solutions Construct implements an Amazon API Gateway connected to an Amazon SageMaker endpoint pattern.\n\nHere is a minimal deployable pattern definition in Typescript:\n\n``` javascript\nimport { ApiGatewayToSageMakerEndpoint, ApiGatewayToSageMakerEndpointProps } from '@aws-solutions-constructs/aws-apigateway-sagemakerendpoint';\n\n// Below is an example VTL (Velocity Template Language) mapping template for mapping the Api GET request to the Sagemaker POST request\nconst requestTemplate =\n`{\n \"instances\": [\n#set( $user_id = $input.params(\"user_id\") )\n#set( $items = $input.params(\"items\") )\n#foreach( $item in $items.split(\",\") )\n {\"in0\": [$user_id], \"in1\": [$item]}#if( $foreach.hasNext ),#end\n $esc.newline\n#end\n ]\n}`;\n\n// Replace 'my-endpoint' with your Sagemaker Inference Endpoint\nnew ApiGatewayToSageMakerEndpoint(this, 'test-apigw-sagemakerendpoint', {\n endpointName: 'my-endpoint',\n resourcePath: '{user_id}',\n requestMappingTemplate: requestTemplate\n});\n```\n\n## Initializer\n\n``` text\nnew ApiGatewayToSageMakerEndpoint(scope: Construct, id: string, props: ApiGatewayToSageMakerEndpointProps);\n```\n\n_Parameters_\n\n* scope [`Construct`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html)\n* id `string`\n* props [`ApiGatewayToSageMakerEndpointProps`](#pattern-construct-props)\n\n## Pattern Construct Props\n\n| **Name** | **Type** | **Description** |\n|:-------------|:----------------|-----------------|\n|apiGatewayProps?|[`api.RestApiProps`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApiProps.html)|Optional user-provided props to override the default props for the API Gateway.|\n|apiGatewayExecutionRole?|[`iam.Role`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)|IAM Role used by API Gateway to invoke the SageMaker endpoint. If not specified, a default role is created with access to `endpointName`.|\n|endpointName|`string`|Name of the deployed SageMaker inference endpoint.|\n|resourceName?|`string`|Optional resource name where the GET method will be available.|\n|resourcePath|`string`|Resource path for the GET method. The variable defined here can be referenced in `requestMappingTemplate`.|\n|requestMappingTemplate|`string`|Mapping template to convert GET requests received on the REST API to POST requests expected by the SageMaker endpoint.|\n|responseMappingTemplate?|`string`|Optional mapping template to convert responses received from the SageMaker endpoint.|\n|logGroupProps?|[`logs.LogGroupProps`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)|User provided props to override the default props for for the CloudWatchLogs LogGroup.|\n\n## Pattern Properties\n\n| **Name** | **Type** | **Description** |\n|:-------------|:----------------|-----------------|\n|apiGateway|[`api.RestApi`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html)|Returns an instance of the API Gateway REST API created by the pattern.|\n|apiGatewayRole|[`iam.Role`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)|Returns an instance of the iam.Role created by the construct for API Gateway.|\n|apiGatewayCloudWatchRole?|[`iam.Role`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)|Returns an instance of the iam.Role created by the construct for API Gateway for CloudWatch access.|\n|apiGatewayLogGroup|[`logs.LogGroup`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)|Returns an instance of the LogGroup created by the construct for API Gateway access logging to CloudWatch.|\n\n## Sample API Usage\n\n> **Note**: Each SageMaker endpoint is unique, and the response from the API will depend on the deployed model. The example given below assumes the sample from [this blog post](https://aws.amazon.com/blogs/machine-learning/creating-a-machine-learning-powered-rest-api-with-amazon-api-gateway-mapping-templates-and-amazon-sagemaker/). For a reference on how that'd be implemented, please refer to [integ.apigateway-sagemakerendpoint-overwrite.ts](test/integ.apigateway-sagemakerendpoint-overwrite.ts).\n\n| **Method** | **Request Path** | **Query String** | **SageMaker Action** | **Description** |\n|:-------------|:----------------|-----------------|-----------------|-----------------|\n|GET|`/321`| `items=101,131,162` |`sagemaker:InvokeEndpoint`|Retrieves the predictions for a specific user and items.|\n\n## Default settings\nOut of the box implementation of the Construct without any override will set the following defaults:\n\n### Amazon API Gateway\n* Deploy an edge-optimized API endpoint\n* Enable CloudWatch logging for API Gateway\n* Configure least privilege access IAM role for API Gateway\n* Set the default authorizationType for all API methods to IAM\n* Enable X-Ray Tracing\n* Validate request parameters before passing data to SageMaker\n\n## Architecture\n\n\n***\n© Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved."
|
|
1449
1471
|
},
|
|
1450
1472
|
"repository": {
|
|
1451
1473
|
"directory": "source/patterns/@aws-solutions-constructs/aws-apigateway-sagemakerendpoint",
|
|
@@ -1456,8 +1478,8 @@
|
|
|
1456
1478
|
"targets": {
|
|
1457
1479
|
"dotnet": {
|
|
1458
1480
|
"iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
|
|
1459
|
-
"namespace": "Amazon.
|
|
1460
|
-
"packageId": "Amazon.
|
|
1481
|
+
"namespace": "Amazon.SolutionsConstructs.AWS.ApiGatewaySageMakerEndpoint",
|
|
1482
|
+
"packageId": "Amazon.SolutionsConstructs.AWS.ApiGatewaySageMakerEndpoint",
|
|
1461
1483
|
"signAssembly": true
|
|
1462
1484
|
},
|
|
1463
1485
|
"java": {
|
|
@@ -1549,36 +1571,38 @@
|
|
|
1549
1571
|
"immutable": true,
|
|
1550
1572
|
"locationInModule": {
|
|
1551
1573
|
"filename": "lib/index.ts",
|
|
1552
|
-
"line":
|
|
1574
|
+
"line": 82
|
|
1553
1575
|
},
|
|
1554
|
-
"name": "
|
|
1576
|
+
"name": "apiGatewayLogGroup",
|
|
1555
1577
|
"type": {
|
|
1556
|
-
"fqn": "@aws-cdk/aws-
|
|
1578
|
+
"fqn": "@aws-cdk/aws-logs.LogGroup"
|
|
1557
1579
|
}
|
|
1558
1580
|
},
|
|
1559
1581
|
{
|
|
1560
1582
|
"immutable": true,
|
|
1561
1583
|
"locationInModule": {
|
|
1562
1584
|
"filename": "lib/index.ts",
|
|
1563
|
-
"line":
|
|
1585
|
+
"line": 80
|
|
1564
1586
|
},
|
|
1565
|
-
"name": "
|
|
1587
|
+
"name": "apiGatewayRole",
|
|
1566
1588
|
"type": {
|
|
1567
|
-
"fqn": "@aws-cdk/aws-
|
|
1589
|
+
"fqn": "@aws-cdk/aws-iam.Role"
|
|
1568
1590
|
}
|
|
1569
1591
|
},
|
|
1570
1592
|
{
|
|
1571
1593
|
"immutable": true,
|
|
1572
1594
|
"locationInModule": {
|
|
1573
1595
|
"filename": "lib/index.ts",
|
|
1574
|
-
"line":
|
|
1596
|
+
"line": 81
|
|
1575
1597
|
},
|
|
1576
|
-
"name": "
|
|
1598
|
+
"name": "apiGatewayCloudWatchRole",
|
|
1599
|
+
"optional": true,
|
|
1577
1600
|
"type": {
|
|
1578
1601
|
"fqn": "@aws-cdk/aws-iam.Role"
|
|
1579
1602
|
}
|
|
1580
1603
|
}
|
|
1581
|
-
]
|
|
1604
|
+
],
|
|
1605
|
+
"symbolId": "lib/index:ApiGatewayToSageMakerEndpoint"
|
|
1582
1606
|
},
|
|
1583
1607
|
"@aws-solutions-constructs/aws-apigateway-sagemakerendpoint.ApiGatewayToSageMakerEndpointProps": {
|
|
1584
1608
|
"assembly": "@aws-solutions-constructs/aws-apigateway-sagemakerendpoint",
|
|
@@ -1730,9 +1754,10 @@
|
|
|
1730
1754
|
"primitive": "string"
|
|
1731
1755
|
}
|
|
1732
1756
|
}
|
|
1733
|
-
]
|
|
1757
|
+
],
|
|
1758
|
+
"symbolId": "lib/index:ApiGatewayToSageMakerEndpointProps"
|
|
1734
1759
|
}
|
|
1735
1760
|
},
|
|
1736
|
-
"version": "1.
|
|
1737
|
-
"fingerprint": "
|
|
1761
|
+
"version": "1.127.0",
|
|
1762
|
+
"fingerprint": "dN+Tf/gTXEBHcARqzXArBDUrwLDZtBrqcabHiRfe5Mo="
|
|
1738
1763
|
}
|
package/README.md
CHANGED
|
@@ -83,7 +83,7 @@ _Parameters_
|
|
|
83
83
|
|:-------------|:----------------|-----------------|
|
|
84
84
|
|apiGateway|[`api.RestApi`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html)|Returns an instance of the API Gateway REST API created by the pattern.|
|
|
85
85
|
|apiGatewayRole|[`iam.Role`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)|Returns an instance of the iam.Role created by the construct for API Gateway.|
|
|
86
|
-
|apiGatewayCloudWatchRole
|
|
86
|
+
|apiGatewayCloudWatchRole?|[`iam.Role`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)|Returns an instance of the iam.Role created by the construct for API Gateway for CloudWatch access.|
|
|
87
87
|
|apiGatewayLogGroup|[`logs.LogGroup`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)|Returns an instance of the LogGroup created by the construct for API Gateway access logging to CloudWatch.|
|
|
88
88
|
|
|
89
89
|
## Sample API Usage
|
package/lib/index.d.ts
CHANGED
|
@@ -75,7 +75,7 @@ export interface ApiGatewayToSageMakerEndpointProps {
|
|
|
75
75
|
export declare class ApiGatewayToSageMakerEndpoint extends Construct {
|
|
76
76
|
readonly apiGateway: api.RestApi;
|
|
77
77
|
readonly apiGatewayRole: iam.Role;
|
|
78
|
-
readonly apiGatewayCloudWatchRole
|
|
78
|
+
readonly apiGatewayCloudWatchRole?: iam.Role;
|
|
79
79
|
readonly apiGatewayLogGroup: logs.LogGroup;
|
|
80
80
|
/**
|
|
81
81
|
* @param scope - represents the scope for all the resources.
|
package/lib/index.js
CHANGED
|
@@ -94,5 +94,5 @@ class ApiGatewayToSageMakerEndpoint extends core_1.Construct {
|
|
|
94
94
|
}
|
|
95
95
|
exports.ApiGatewayToSageMakerEndpoint = ApiGatewayToSageMakerEndpoint;
|
|
96
96
|
_a = JSII_RTTI_SYMBOL_1;
|
|
97
|
-
ApiGatewayToSageMakerEndpoint[_a] = { fqn: "@aws-solutions-constructs/aws-apigateway-sagemakerendpoint.ApiGatewayToSageMakerEndpoint", version: "1.
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQWVBLHdDQUF3QztBQUN4QywyREFBMkQ7QUFDM0Qsd0NBQStDOzs7O0FBd0IvQyxNQUFhLDZCQUE4QixTQUFRLGdCQUFTOzs7Ozs7Ozs7SUFPMUQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUF5QztRQUNqRixLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLFFBQVEsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFM0Isd0JBQXdCO1FBQ3hCLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsd0JBQXdCLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQ3JHLEtBQUssQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRTlDLDZCQUE2QjtRQUM3QixJQUFJLEtBQUssQ0FBQyx1QkFBdUIsS0FBSyxTQUFTLEVBQUU7WUFDL0MsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsdUJBQXVCLENBQUM7U0FDckQ7YUFBTTtZQUNMLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxrQkFBa0IsRUFBRTtnQkFDM0QsU0FBUyxFQUFFLElBQUksR0FBRyxDQUFDLGdCQUFnQixDQUFDLDBCQUEwQixDQUFDO2FBQ2hFLENBQUMsQ0FBQztZQUVILDhDQUE4QztZQUM5QyxNQUFNLFlBQVksR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLHNCQUFzQixFQUFFO2dCQUNoRSxVQUFVLEVBQUU7b0JBQ1YsSUFBSSxHQUFHLENBQUMsZUFBZSxDQUFDO3dCQUN0QixPQUFPLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQzt3QkFDckMsU0FBUyxFQUFFLENBQUMsT0FBTyxVQUFHLENBQUMsU0FBUyxjQUFjLFVBQUcsQ0FBQyxNQUFNLElBQUksVUFBRyxDQUFDLFVBQVUsYUFBYSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7cUJBQzdHLENBQUM7aUJBQ0g7YUFDRixDQUFDLENBQUM7WUFFSCxZQUFZLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUNoRDtRQUVELDJCQUEyQjtRQUMzQixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsbUJBQW1CLENBQUMsbUJBQW1CLEVBQUU7WUFDaEYsb0JBQW9CLEVBQUUseUJBQXlCO1lBRS9DLHdFQUF3RTtZQUN4RSwyQ0FBMkM7WUFDM0MsaUJBQWlCO1lBQ2pCLFlBQVk7WUFDWix5QkFBeUIsRUFBRSxJQUFJO1NBQ2hDLENBQUMsQ0FBQztRQUVILHlDQUF5QztRQUN6QyxNQUFNLGVBQWUsR0FBeUI7WUFDNUMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFO1lBQ3JCLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRTtZQUNyQixFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUU7U0FDdEIsQ0FBQztRQUVGLE1BQU0sY0FBYyxHQUE4QixFQUFFLENBQUM7UUFDckQsSUFBSSxLQUFLLENBQUMsdUJBQXVCLEtBQUssU0FBUyxFQUFFO1lBQy9DLGNBQWMsQ0FBQyxJQUFJLENBQUM7Z0JBQ2xCLFVBQVUsRUFBRSxLQUFLO2dCQUNqQixpQkFBaUIsRUFBRSxFQUFFLGtCQUFrQixFQUFFLEtBQUssQ0FBQyx1QkFBdUIsRUFBRTthQUN6RSxDQUFDLENBQUM7U0FDSjthQUFNO1lBQ0wsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1NBQzVDO1FBRUQsY0FBYyxDQUFDLElBQUksQ0FDakIsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxFQUNsRCxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLENBQ25ELENBQUM7UUFFRiw2SEFBNkg7UUFDN0gsdUZBQXVGO1FBQ3ZGLCtFQUErRTtRQUMvRSxJQUFJLFdBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztRQUN2QyxJQUFJLEtBQUssQ0FBQyxZQUFZLEtBQUssU0FBUyxFQUFFO1lBQ3BDLFdBQVcsR0FBRyxXQUFXLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUMzRDtRQUNELFdBQVcsR0FBRyxXQUFXLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUUxRCwyQkFBMkI7UUFDM0IsUUFBUSxDQUFDLDJCQUEyQixDQUFDO1lBQ25DLE9BQU8sRUFBRSxtQkFBbUI7WUFDNUIsSUFBSSxFQUFFLGFBQWEsS0FBSyxDQUFDLFlBQVksY0FBYztZQUNuRCxjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWM7WUFDbkMsU0FBUyxFQUFFLEtBQUs7WUFDaEIsV0FBVztZQUNYLGdCQUFnQjtZQUNoQixlQUFlLEVBQUUsS0FBSyxDQUFDLHNCQUFzQjtZQUM3QyxtQkFBbUIsRUFBRTtnQkFDbkIsT0FBTyxFQUFFLEVBQUUsb0JBQW9CLEVBQUUsY0FBYyxFQUFFO2FBQ2xEO1lBQ0QsYUFBYSxFQUFFLEVBQUUsZUFBZSxFQUFFO1NBQ25DLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBNUZILHNFQTZGQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogIENvcHlyaWdodCAyMDIxIEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIikuIFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcbiAqICB3aXRoIHRoZSBMaWNlbnNlLiBBIGNvcHkgb2YgdGhlIExpY2Vuc2UgaXMgbG9jYXRlZCBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogIG9yIGluIHRoZSAnbGljZW5zZScgZmlsZSBhY2NvbXBhbnlpbmcgdGhpcyBmaWxlLiBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgb24gYW4gJ0FTIElTJyBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTXG4gKiAgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnNcbiAqICBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuLy8gSW1wb3J0c1xuaW1wb3J0ICogYXMgYXBpIGZyb20gJ0Bhd3MtY2RrL2F3cy1hcGlnYXRld2F5JztcbmltcG9ydCAqIGFzIGlhbSBmcm9tICdAYXdzLWNkay9hd3MtaWFtJztcbmltcG9ydCAqIGFzIGRlZmF1bHRzIGZyb20gJ0Bhd3Mtc29sdXRpb25zLWNvbnN0cnVjdHMvY29yZSc7XG5pbXBvcnQgeyBBd3MsIENvbnN0cnVjdCB9IGZyb20gJ0Bhd3MtY2RrL2NvcmUnO1xuaW1wb3J0ICogYXMgbG9ncyBmcm9tICdAYXdzLWNkay9hd3MtbG9ncyc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBBcGlHYXRld2F5VG9TYWdlTWFrZXJFbmRwb2ludFByb3BzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGFwaUdhdGV3YXlQcm9wcz86IGFwaS5SZXN0QXBpUHJvcHMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGFwaUdhdGV3YXlFeGVjdXRpb25Sb2xlPzogaWFtLlJvbGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGVuZHBvaW50TmFtZTogc3RyaW5nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSByZXNvdXJjZU5hbWU/OiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcmVzb3VyY2VQYXRoOiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcmVxdWVzdE1hcHBpbmdUZW1wbGF0ZTogc3RyaW5nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcmVzcG9uc2VNYXBwaW5nVGVtcGxhdGU/OiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBsb2dHcm91cFByb3BzPzogbG9ncy5Mb2dHcm91cFByb3BzXG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIEFwaUdhdGV3YXlUb1NhZ2VNYWtlckVuZHBvaW50IGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHVibGljIHJlYWRvbmx5IGFwaUdhdGV3YXk6IGFwaS5SZXN0QXBpO1xuICBwdWJsaWMgcmVhZG9ubHkgYXBpR2F0ZXdheVJvbGU6IGlhbS5Sb2xlO1xuICBwdWJsaWMgcmVhZG9ubHkgYXBpR2F0ZXdheUNsb3VkV2F0Y2hSb2xlOiBpYW0uUm9sZTtcbiAgcHVibGljIHJlYWRvbmx5IGFwaUdhdGV3YXlMb2dHcm91cDogbG9ncy5Mb2dHcm91cDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEFwaUdhdGV3YXlUb1NhZ2VNYWtlckVuZHBvaW50UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIGRlZmF1bHRzLkNoZWNrUHJvcHMocHJvcHMpO1xuXG4gICAgLy8gU2V0dXAgdGhlIEFQSSBHYXRld2F5XG4gICAgW3RoaXMuYXBpR2F0ZXdheSwgdGhpcy5hcGlHYXRld2F5Q2xvdWRXYXRjaFJvbGUsIHRoaXMuYXBpR2F0ZXdheUxvZ0dyb3VwXSA9IGRlZmF1bHRzLkdsb2JhbFJlc3RBcGkodGhpcyxcbiAgICAgIHByb3BzLmFwaUdhdGV3YXlQcm9wcywgcHJvcHMubG9nR3JvdXBQcm9wcyk7XG5cbiAgICAvLyBTZXR1cCB0aGUgQVBJIEdhdGV3YXkgcm9sZVxuICAgIGlmIChwcm9wcy5hcGlHYXRld2F5RXhlY3V0aW9uUm9sZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmFwaUdhdGV3YXlSb2xlID0gcHJvcHMuYXBpR2F0ZXdheUV4ZWN1dGlvblJvbGU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYXBpR2F0ZXdheVJvbGUgPSBuZXcgaWFtLlJvbGUodGhpcywgJ2FwaS1nYXRld2F5LXJvbGUnLCB7XG4gICAgICAgIGFzc3VtZWRCeTogbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdhcGlnYXRld2F5LmFtYXpvbmF3cy5jb20nKVxuICAgICAgfSk7XG5cbiAgICAgIC8vIFNldHVwIHRoZSBJQU0gcG9saWN5IGZvciBTYWdlTWFrZXIgZW5kcG9pbnRcbiAgICAgIGNvbnN0IGludm9rZVBvbGljeSA9IG5ldyBpYW0uUG9saWN5KHRoaXMsICdJbnZva2VFbmRwb2ludFBvbGljeScsIHtcbiAgICAgICAgc3RhdGVtZW50czogW1xuICAgICAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgIGFjdGlvbnM6IFsnc2FnZW1ha2VyOkludm9rZUVuZHBvaW50J10sXG4gICAgICAgICAgICByZXNvdXJjZXM6IFtgYXJuOiR7QXdzLlBBUlRJVElPTn06c2FnZW1ha2VyOiR7QXdzLlJFR0lPTn06JHtBd3MuQUNDT1VOVF9JRH06ZW5kcG9pbnQvJHtwcm9wcy5lbmRwb2ludE5hbWV9YF1cbiAgICAgICAgICB9KVxuICAgICAgICBdXG4gICAgICB9KTtcblxuICAgICAgaW52b2tlUG9saWN5LmF0dGFjaFRvUm9sZSh0aGlzLmFwaUdhdGV3YXlSb2xlKTtcbiAgICB9XG5cbiAgICAvLyBTZXR1cCByZXF1ZXN0IHZhbGlkYXRpb25cbiAgICBjb25zdCByZXF1ZXN0VmFsaWRhdG9yID0gdGhpcy5hcGlHYXRld2F5LmFkZFJlcXVlc3RWYWxpZGF0b3IoJ3JlcXVlc3QtdmFsaWRhdG9yJywge1xuICAgICAgcmVxdWVzdFZhbGlkYXRvck5hbWU6ICdyZXF1ZXN0LXBhcmFtLXZhbGlkYXRvcicsXG5cbiAgICAgIC8vIFNldHRpbmcgdGhpcyBwcm9wZXJ0eSB0byB0cnVlIG1ha2VzIHN1cmUgdGhlIGZvbGxvd2luZyBhcmUgdmFsaWRhdGVkOlxuICAgICAgLy8gLSBSZXF1aXJlZCByZXF1ZXN0IHBhcmFtZXRlcnMgaW4gdGhlIFVSSVxuICAgICAgLy8gLSBRdWVyeSBzdHJpbmdcbiAgICAgIC8vIC0gSGVhZGVyc1xuICAgICAgdmFsaWRhdGVSZXF1ZXN0UGFyYW1ldGVyczogdHJ1ZVxuICAgIH0pO1xuXG4gICAgLy8gU2V0dXAgbWV0aG9kIGFuZCBpbnRlZ3JhdGlvbiByZXNwb25zZXNcbiAgICBjb25zdCBtZXRob2RSZXNwb25zZXM6IGFwaS5NZXRob2RSZXNwb25zZVtdID0gW1xuICAgICAgeyBzdGF0dXNDb2RlOiAnMjAwJyB9LFxuICAgICAgeyBzdGF0dXNDb2RlOiAnNTAwJyB9LFxuICAgICAgeyBzdGF0dXNDb2RlOiAnNDAwJyB9XG4gICAgXTtcblxuICAgIGNvbnN0IGludGVnUmVzcG9uc2VzOiBhcGkuSW50ZWdyYXRpb25SZXNwb25zZVtdID0gW107XG4gICAgaWYgKHByb3BzLnJlc3BvbnNlTWFwcGluZ1RlbXBsYXRlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGludGVnUmVzcG9uc2VzLnB1c2goe1xuICAgICAgICBzdGF0dXNDb2RlOiAnMjAwJyxcbiAgICAgICAgcmVzcG9uc2VUZW1wbGF0ZXM6IHsgJ2FwcGxpY2F0aW9uL2pzb24nOiBwcm9wcy5yZXNwb25zZU1hcHBpbmdUZW1wbGF0ZSB9XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgaW50ZWdSZXNwb25zZXMucHVzaCh7IHN0YXR1c0NvZGU6ICcyMDAnIH0pO1xuICAgIH1cblxuICAgIGludGVnUmVzcG9uc2VzLnB1c2goXG4gICAgICB7IHN0YXR1c0NvZGU6ICc1MDAnLCBzZWxlY3Rpb25QYXR0ZXJuOiAnNVxcXFxkezJ9JyB9LFxuICAgICAgeyBzdGF0dXNDb2RlOiAnNDAwJywgc2VsZWN0aW9uUGF0dGVybjogJzRcXFxcZHsyfScgfVxuICAgICk7XG5cbiAgICAvLyBUaGUgU2FnZU1ha2VyIGludGVncmF0aW9uIGNhbiBiZSBhZGRlZCBlaXRoZXIgYXQgdGhlIHJvb3Qgb2YgdGhlIEFQSSAoR0VUIGh0dHBzOi8vZXhlY3V0ZS1hcGkuYW1hem9uYXdzLmNvbS97c29tZS1wYXJhbX0pLFxuICAgIC8vIG9yIGFzIGEgc3ViLXJlc291cmNlIChHRVQgaHR0cHM6Ly9leGVjdXRlLWFwaS5hbWF6b25hd3MuY29tL2luZmVyZW5jZS97c29tZS1wYXJhbX0pLlxuICAgIC8vIFRoZSBmb2xsb3dpbmcgbGluZXMgd2lsbCBtYWtlIHN1cmUgb25seSB0aGUgbmVjZXNzYXJ5IHJlc291cmNlcyBhcmUgY3JlYXRlZC5cbiAgICBsZXQgYXBpUmVzb3VyY2UgPSB0aGlzLmFwaUdhdGV3YXkucm9vdDtcbiAgICBpZiAocHJvcHMucmVzb3VyY2VOYW1lICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGFwaVJlc291cmNlID0gYXBpUmVzb3VyY2UuYWRkUmVzb3VyY2UocHJvcHMucmVzb3VyY2VOYW1lKTtcbiAgICB9XG4gICAgYXBpUmVzb3VyY2UgPSBhcGlSZXNvdXJjZS5hZGRSZXNvdXJjZShwcm9wcy5yZXNvdXJjZVBhdGgpO1xuXG4gICAgLy8gU2V0dXAgQVBJIEdhdGV3YXkgbWV0aG9kXG4gICAgZGVmYXVsdHMuYWRkUHJveHlNZXRob2RUb0FwaVJlc291cmNlKHtcbiAgICAgIHNlcnZpY2U6ICdydW50aW1lLnNhZ2VtYWtlcicsXG4gICAgICBwYXRoOiBgZW5kcG9pbnRzLyR7cHJvcHMuZW5kcG9pbnROYW1lfS9pbnZvY2F0aW9uc2AsXG4gICAgICBhcGlHYXRld2F5Um9sZTogdGhpcy5hcGlHYXRld2F5Um9sZSxcbiAgICAgIGFwaU1ldGhvZDogJ0dFVCcsXG4gICAgICBhcGlSZXNvdXJjZSxcbiAgICAgIHJlcXVlc3RWYWxpZGF0b3IsXG4gICAgICByZXF1ZXN0VGVtcGxhdGU6IHByb3BzLnJlcXVlc3RNYXBwaW5nVGVtcGxhdGUsXG4gICAgICBhd3NJbnRlZ3JhdGlvblByb3BzOiB7XG4gICAgICAgIG9wdGlvbnM6IHsgaW50ZWdyYXRpb25SZXNwb25zZXM6IGludGVnUmVzcG9uc2VzIH1cbiAgICAgIH0sXG4gICAgICBtZXRob2RPcHRpb25zOiB7IG1ldGhvZFJlc3BvbnNlcyB9XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
97
|
+
ApiGatewayToSageMakerEndpoint[_a] = { fqn: "@aws-solutions-constructs/aws-apigateway-sagemakerendpoint.ApiGatewayToSageMakerEndpoint", version: "1.127.0" };
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQWVBLHdDQUF3QztBQUN4QywyREFBMkQ7QUFDM0Qsd0NBQStDOzs7O0FBd0IvQyxNQUFhLDZCQUE4QixTQUFRLGdCQUFTOzs7Ozs7Ozs7SUFPMUQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUF5QztRQUNqRixLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLFFBQVEsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFM0Isd0JBQXdCO1FBQ3hCLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsd0JBQXdCLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQ3JHLEtBQUssQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRTlDLDZCQUE2QjtRQUM3QixJQUFJLEtBQUssQ0FBQyx1QkFBdUIsS0FBSyxTQUFTLEVBQUU7WUFDL0MsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsdUJBQXVCLENBQUM7U0FDckQ7YUFBTTtZQUNMLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxrQkFBa0IsRUFBRTtnQkFDM0QsU0FBUyxFQUFFLElBQUksR0FBRyxDQUFDLGdCQUFnQixDQUFDLDBCQUEwQixDQUFDO2FBQ2hFLENBQUMsQ0FBQztZQUVILDhDQUE4QztZQUM5QyxNQUFNLFlBQVksR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLHNCQUFzQixFQUFFO2dCQUNoRSxVQUFVLEVBQUU7b0JBQ1YsSUFBSSxHQUFHLENBQUMsZUFBZSxDQUFDO3dCQUN0QixPQUFPLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQzt3QkFDckMsU0FBUyxFQUFFLENBQUMsT0FBTyxVQUFHLENBQUMsU0FBUyxjQUFjLFVBQUcsQ0FBQyxNQUFNLElBQUksVUFBRyxDQUFDLFVBQVUsYUFBYSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7cUJBQzdHLENBQUM7aUJBQ0g7YUFDRixDQUFDLENBQUM7WUFFSCxZQUFZLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUNoRDtRQUVELDJCQUEyQjtRQUMzQixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsbUJBQW1CLENBQUMsbUJBQW1CLEVBQUU7WUFDaEYsb0JBQW9CLEVBQUUseUJBQXlCO1lBRS9DLHdFQUF3RTtZQUN4RSwyQ0FBMkM7WUFDM0MsaUJBQWlCO1lBQ2pCLFlBQVk7WUFDWix5QkFBeUIsRUFBRSxJQUFJO1NBQ2hDLENBQUMsQ0FBQztRQUVILHlDQUF5QztRQUN6QyxNQUFNLGVBQWUsR0FBeUI7WUFDNUMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFO1lBQ3JCLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRTtZQUNyQixFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUU7U0FDdEIsQ0FBQztRQUVGLE1BQU0sY0FBYyxHQUE4QixFQUFFLENBQUM7UUFDckQsSUFBSSxLQUFLLENBQUMsdUJBQXVCLEtBQUssU0FBUyxFQUFFO1lBQy9DLGNBQWMsQ0FBQyxJQUFJLENBQUM7Z0JBQ2xCLFVBQVUsRUFBRSxLQUFLO2dCQUNqQixpQkFBaUIsRUFBRSxFQUFFLGtCQUFrQixFQUFFLEtBQUssQ0FBQyx1QkFBdUIsRUFBRTthQUN6RSxDQUFDLENBQUM7U0FDSjthQUFNO1lBQ0wsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1NBQzVDO1FBRUQsY0FBYyxDQUFDLElBQUksQ0FDakIsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxFQUNsRCxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLENBQ25ELENBQUM7UUFFRiw2SEFBNkg7UUFDN0gsdUZBQXVGO1FBQ3ZGLCtFQUErRTtRQUMvRSxJQUFJLFdBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztRQUN2QyxJQUFJLEtBQUssQ0FBQyxZQUFZLEtBQUssU0FBUyxFQUFFO1lBQ3BDLFdBQVcsR0FBRyxXQUFXLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUMzRDtRQUNELFdBQVcsR0FBRyxXQUFXLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUUxRCwyQkFBMkI7UUFDM0IsUUFBUSxDQUFDLDJCQUEyQixDQUFDO1lBQ25DLE9BQU8sRUFBRSxtQkFBbUI7WUFDNUIsSUFBSSxFQUFFLGFBQWEsS0FBSyxDQUFDLFlBQVksY0FBYztZQUNuRCxjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWM7WUFDbkMsU0FBUyxFQUFFLEtBQUs7WUFDaEIsV0FBVztZQUNYLGdCQUFnQjtZQUNoQixlQUFlLEVBQUUsS0FBSyxDQUFDLHNCQUFzQjtZQUM3QyxtQkFBbUIsRUFBRTtnQkFDbkIsT0FBTyxFQUFFLEVBQUUsb0JBQW9CLEVBQUUsY0FBYyxFQUFFO2FBQ2xEO1lBQ0QsYUFBYSxFQUFFLEVBQUUsZUFBZSxFQUFFO1NBQ25DLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBNUZILHNFQTZGQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogIENvcHlyaWdodCAyMDIxIEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIikuIFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcbiAqICB3aXRoIHRoZSBMaWNlbnNlLiBBIGNvcHkgb2YgdGhlIExpY2Vuc2UgaXMgbG9jYXRlZCBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogIG9yIGluIHRoZSAnbGljZW5zZScgZmlsZSBhY2NvbXBhbnlpbmcgdGhpcyBmaWxlLiBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgb24gYW4gJ0FTIElTJyBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTXG4gKiAgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnNcbiAqICBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuLy8gSW1wb3J0c1xuaW1wb3J0ICogYXMgYXBpIGZyb20gJ0Bhd3MtY2RrL2F3cy1hcGlnYXRld2F5JztcbmltcG9ydCAqIGFzIGlhbSBmcm9tICdAYXdzLWNkay9hd3MtaWFtJztcbmltcG9ydCAqIGFzIGRlZmF1bHRzIGZyb20gJ0Bhd3Mtc29sdXRpb25zLWNvbnN0cnVjdHMvY29yZSc7XG5pbXBvcnQgeyBBd3MsIENvbnN0cnVjdCB9IGZyb20gJ0Bhd3MtY2RrL2NvcmUnO1xuaW1wb3J0ICogYXMgbG9ncyBmcm9tICdAYXdzLWNkay9hd3MtbG9ncyc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBBcGlHYXRld2F5VG9TYWdlTWFrZXJFbmRwb2ludFByb3BzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGFwaUdhdGV3YXlQcm9wcz86IGFwaS5SZXN0QXBpUHJvcHMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGFwaUdhdGV3YXlFeGVjdXRpb25Sb2xlPzogaWFtLlJvbGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGVuZHBvaW50TmFtZTogc3RyaW5nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSByZXNvdXJjZU5hbWU/OiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcmVzb3VyY2VQYXRoOiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcmVxdWVzdE1hcHBpbmdUZW1wbGF0ZTogc3RyaW5nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcmVzcG9uc2VNYXBwaW5nVGVtcGxhdGU/OiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBsb2dHcm91cFByb3BzPzogbG9ncy5Mb2dHcm91cFByb3BzXG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIEFwaUdhdGV3YXlUb1NhZ2VNYWtlckVuZHBvaW50IGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHVibGljIHJlYWRvbmx5IGFwaUdhdGV3YXk6IGFwaS5SZXN0QXBpO1xuICBwdWJsaWMgcmVhZG9ubHkgYXBpR2F0ZXdheVJvbGU6IGlhbS5Sb2xlO1xuICBwdWJsaWMgcmVhZG9ubHkgYXBpR2F0ZXdheUNsb3VkV2F0Y2hSb2xlPzogaWFtLlJvbGU7XG4gIHB1YmxpYyByZWFkb25seSBhcGlHYXRld2F5TG9nR3JvdXA6IGxvZ3MuTG9nR3JvdXA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBBcGlHYXRld2F5VG9TYWdlTWFrZXJFbmRwb2ludFByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICBkZWZhdWx0cy5DaGVja1Byb3BzKHByb3BzKTtcblxuICAgIC8vIFNldHVwIHRoZSBBUEkgR2F0ZXdheVxuICAgIFt0aGlzLmFwaUdhdGV3YXksIHRoaXMuYXBpR2F0ZXdheUNsb3VkV2F0Y2hSb2xlLCB0aGlzLmFwaUdhdGV3YXlMb2dHcm91cF0gPSBkZWZhdWx0cy5HbG9iYWxSZXN0QXBpKHRoaXMsXG4gICAgICBwcm9wcy5hcGlHYXRld2F5UHJvcHMsIHByb3BzLmxvZ0dyb3VwUHJvcHMpO1xuXG4gICAgLy8gU2V0dXAgdGhlIEFQSSBHYXRld2F5IHJvbGVcbiAgICBpZiAocHJvcHMuYXBpR2F0ZXdheUV4ZWN1dGlvblJvbGUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5hcGlHYXRld2F5Um9sZSA9IHByb3BzLmFwaUdhdGV3YXlFeGVjdXRpb25Sb2xlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmFwaUdhdGV3YXlSb2xlID0gbmV3IGlhbS5Sb2xlKHRoaXMsICdhcGktZ2F0ZXdheS1yb2xlJywge1xuICAgICAgICBhc3N1bWVkQnk6IG5ldyBpYW0uU2VydmljZVByaW5jaXBhbCgnYXBpZ2F0ZXdheS5hbWF6b25hd3MuY29tJylcbiAgICAgIH0pO1xuXG4gICAgICAvLyBTZXR1cCB0aGUgSUFNIHBvbGljeSBmb3IgU2FnZU1ha2VyIGVuZHBvaW50XG4gICAgICBjb25zdCBpbnZva2VQb2xpY3kgPSBuZXcgaWFtLlBvbGljeSh0aGlzLCAnSW52b2tlRW5kcG9pbnRQb2xpY3knLCB7XG4gICAgICAgIHN0YXRlbWVudHM6IFtcbiAgICAgICAgICBuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICBhY3Rpb25zOiBbJ3NhZ2VtYWtlcjpJbnZva2VFbmRwb2ludCddLFxuICAgICAgICAgICAgcmVzb3VyY2VzOiBbYGFybjoke0F3cy5QQVJUSVRJT059OnNhZ2VtYWtlcjoke0F3cy5SRUdJT059OiR7QXdzLkFDQ09VTlRfSUR9OmVuZHBvaW50LyR7cHJvcHMuZW5kcG9pbnROYW1lfWBdXG4gICAgICAgICAgfSlcbiAgICAgICAgXVxuICAgICAgfSk7XG5cbiAgICAgIGludm9rZVBvbGljeS5hdHRhY2hUb1JvbGUodGhpcy5hcGlHYXRld2F5Um9sZSk7XG4gICAgfVxuXG4gICAgLy8gU2V0dXAgcmVxdWVzdCB2YWxpZGF0aW9uXG4gICAgY29uc3QgcmVxdWVzdFZhbGlkYXRvciA9IHRoaXMuYXBpR2F0ZXdheS5hZGRSZXF1ZXN0VmFsaWRhdG9yKCdyZXF1ZXN0LXZhbGlkYXRvcicsIHtcbiAgICAgIHJlcXVlc3RWYWxpZGF0b3JOYW1lOiAncmVxdWVzdC1wYXJhbS12YWxpZGF0b3InLFxuXG4gICAgICAvLyBTZXR0aW5nIHRoaXMgcHJvcGVydHkgdG8gdHJ1ZSBtYWtlcyBzdXJlIHRoZSBmb2xsb3dpbmcgYXJlIHZhbGlkYXRlZDpcbiAgICAgIC8vIC0gUmVxdWlyZWQgcmVxdWVzdCBwYXJhbWV0ZXJzIGluIHRoZSBVUklcbiAgICAgIC8vIC0gUXVlcnkgc3RyaW5nXG4gICAgICAvLyAtIEhlYWRlcnNcbiAgICAgIHZhbGlkYXRlUmVxdWVzdFBhcmFtZXRlcnM6IHRydWVcbiAgICB9KTtcblxuICAgIC8vIFNldHVwIG1ldGhvZCBhbmQgaW50ZWdyYXRpb24gcmVzcG9uc2VzXG4gICAgY29uc3QgbWV0aG9kUmVzcG9uc2VzOiBhcGkuTWV0aG9kUmVzcG9uc2VbXSA9IFtcbiAgICAgIHsgc3RhdHVzQ29kZTogJzIwMCcgfSxcbiAgICAgIHsgc3RhdHVzQ29kZTogJzUwMCcgfSxcbiAgICAgIHsgc3RhdHVzQ29kZTogJzQwMCcgfVxuICAgIF07XG5cbiAgICBjb25zdCBpbnRlZ1Jlc3BvbnNlczogYXBpLkludGVncmF0aW9uUmVzcG9uc2VbXSA9IFtdO1xuICAgIGlmIChwcm9wcy5yZXNwb25zZU1hcHBpbmdUZW1wbGF0ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBpbnRlZ1Jlc3BvbnNlcy5wdXNoKHtcbiAgICAgICAgc3RhdHVzQ29kZTogJzIwMCcsXG4gICAgICAgIHJlc3BvbnNlVGVtcGxhdGVzOiB7ICdhcHBsaWNhdGlvbi9qc29uJzogcHJvcHMucmVzcG9uc2VNYXBwaW5nVGVtcGxhdGUgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGludGVnUmVzcG9uc2VzLnB1c2goeyBzdGF0dXNDb2RlOiAnMjAwJyB9KTtcbiAgICB9XG5cbiAgICBpbnRlZ1Jlc3BvbnNlcy5wdXNoKFxuICAgICAgeyBzdGF0dXNDb2RlOiAnNTAwJywgc2VsZWN0aW9uUGF0dGVybjogJzVcXFxcZHsyfScgfSxcbiAgICAgIHsgc3RhdHVzQ29kZTogJzQwMCcsIHNlbGVjdGlvblBhdHRlcm46ICc0XFxcXGR7Mn0nIH1cbiAgICApO1xuXG4gICAgLy8gVGhlIFNhZ2VNYWtlciBpbnRlZ3JhdGlvbiBjYW4gYmUgYWRkZWQgZWl0aGVyIGF0IHRoZSByb290IG9mIHRoZSBBUEkgKEdFVCBodHRwczovL2V4ZWN1dGUtYXBpLmFtYXpvbmF3cy5jb20ve3NvbWUtcGFyYW19KSxcbiAgICAvLyBvciBhcyBhIHN1Yi1yZXNvdXJjZSAoR0VUIGh0dHBzOi8vZXhlY3V0ZS1hcGkuYW1hem9uYXdzLmNvbS9pbmZlcmVuY2Uve3NvbWUtcGFyYW19KS5cbiAgICAvLyBUaGUgZm9sbG93aW5nIGxpbmVzIHdpbGwgbWFrZSBzdXJlIG9ubHkgdGhlIG5lY2Vzc2FyeSByZXNvdXJjZXMgYXJlIGNyZWF0ZWQuXG4gICAgbGV0IGFwaVJlc291cmNlID0gdGhpcy5hcGlHYXRld2F5LnJvb3Q7XG4gICAgaWYgKHByb3BzLnJlc291cmNlTmFtZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBhcGlSZXNvdXJjZSA9IGFwaVJlc291cmNlLmFkZFJlc291cmNlKHByb3BzLnJlc291cmNlTmFtZSk7XG4gICAgfVxuICAgIGFwaVJlc291cmNlID0gYXBpUmVzb3VyY2UuYWRkUmVzb3VyY2UocHJvcHMucmVzb3VyY2VQYXRoKTtcblxuICAgIC8vIFNldHVwIEFQSSBHYXRld2F5IG1ldGhvZFxuICAgIGRlZmF1bHRzLmFkZFByb3h5TWV0aG9kVG9BcGlSZXNvdXJjZSh7XG4gICAgICBzZXJ2aWNlOiAncnVudGltZS5zYWdlbWFrZXInLFxuICAgICAgcGF0aDogYGVuZHBvaW50cy8ke3Byb3BzLmVuZHBvaW50TmFtZX0vaW52b2NhdGlvbnNgLFxuICAgICAgYXBpR2F0ZXdheVJvbGU6IHRoaXMuYXBpR2F0ZXdheVJvbGUsXG4gICAgICBhcGlNZXRob2Q6ICdHRVQnLFxuICAgICAgYXBpUmVzb3VyY2UsXG4gICAgICByZXF1ZXN0VmFsaWRhdG9yLFxuICAgICAgcmVxdWVzdFRlbXBsYXRlOiBwcm9wcy5yZXF1ZXN0TWFwcGluZ1RlbXBsYXRlLFxuICAgICAgYXdzSW50ZWdyYXRpb25Qcm9wczoge1xuICAgICAgICBvcHRpb25zOiB7IGludGVncmF0aW9uUmVzcG9uc2VzOiBpbnRlZ1Jlc3BvbnNlcyB9XG4gICAgICB9LFxuICAgICAgbWV0aG9kT3B0aW9uczogeyBtZXRob2RSZXNwb25zZXMgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-solutions-constructs/aws-apigateway-sagemakerendpoint",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.127.0",
|
|
4
4
|
"description": "CDK Constructs for AWS API Gateway and Amazon SageMaker Endpoint integration.",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
@@ -41,8 +41,8 @@
|
|
|
41
41
|
}
|
|
42
42
|
},
|
|
43
43
|
"dotnet": {
|
|
44
|
-
"namespace": "Amazon.
|
|
45
|
-
"packageId": "Amazon.
|
|
44
|
+
"namespace": "Amazon.SolutionsConstructs.AWS.ApiGatewaySageMakerEndpoint",
|
|
45
|
+
"packageId": "Amazon.SolutionsConstructs.AWS.ApiGatewaySageMakerEndpoint",
|
|
46
46
|
"signAssembly": true,
|
|
47
47
|
"iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png"
|
|
48
48
|
},
|
|
@@ -53,15 +53,15 @@
|
|
|
53
53
|
}
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"@aws-cdk/core": "1.
|
|
57
|
-
"@aws-cdk/aws-apigateway": "1.
|
|
58
|
-
"@aws-cdk/aws-iam": "1.
|
|
59
|
-
"@aws-cdk/aws-logs": "1.
|
|
60
|
-
"@aws-solutions-constructs/core": "1.
|
|
56
|
+
"@aws-cdk/core": "1.127.0",
|
|
57
|
+
"@aws-cdk/aws-apigateway": "1.127.0",
|
|
58
|
+
"@aws-cdk/aws-iam": "1.127.0",
|
|
59
|
+
"@aws-cdk/aws-logs": "1.127.0",
|
|
60
|
+
"@aws-solutions-constructs/core": "1.127.0",
|
|
61
61
|
"constructs": "^3.2.0"
|
|
62
62
|
},
|
|
63
63
|
"devDependencies": {
|
|
64
|
-
"@aws-cdk/assert": "1.
|
|
64
|
+
"@aws-cdk/assert": "1.127.0",
|
|
65
65
|
"@types/jest": "^26.0.22",
|
|
66
66
|
"@types/node": "^10.3.0"
|
|
67
67
|
},
|
|
@@ -80,12 +80,12 @@
|
|
|
80
80
|
]
|
|
81
81
|
},
|
|
82
82
|
"peerDependencies": {
|
|
83
|
-
"@aws-cdk/core": "1.
|
|
84
|
-
"@aws-cdk/aws-apigateway": "1.
|
|
85
|
-
"@aws-cdk/aws-iam": "1.
|
|
86
|
-
"@aws-solutions-constructs/core": "1.
|
|
83
|
+
"@aws-cdk/core": "1.127.0",
|
|
84
|
+
"@aws-cdk/aws-apigateway": "1.127.0",
|
|
85
|
+
"@aws-cdk/aws-iam": "1.127.0",
|
|
86
|
+
"@aws-solutions-constructs/core": "1.127.0",
|
|
87
87
|
"constructs": "^3.2.0",
|
|
88
|
-
"@aws-cdk/aws-logs": "1.
|
|
88
|
+
"@aws-cdk/aws-logs": "1.127.0"
|
|
89
89
|
},
|
|
90
90
|
"keywords": [
|
|
91
91
|
"aws",
|
|
@@ -368,5 +368,39 @@
|
|
|
368
368
|
]
|
|
369
369
|
}
|
|
370
370
|
}
|
|
371
|
+
},
|
|
372
|
+
"Parameters": {
|
|
373
|
+
"BootstrapVersion": {
|
|
374
|
+
"Type": "AWS::SSM::Parameter::Value<String>",
|
|
375
|
+
"Default": "/cdk-bootstrap/hnb659fds/version",
|
|
376
|
+
"Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store."
|
|
377
|
+
}
|
|
378
|
+
},
|
|
379
|
+
"Rules": {
|
|
380
|
+
"CheckBootstrapVersion": {
|
|
381
|
+
"Assertions": [
|
|
382
|
+
{
|
|
383
|
+
"Assert": {
|
|
384
|
+
"Fn::Not": [
|
|
385
|
+
{
|
|
386
|
+
"Fn::Contains": [
|
|
387
|
+
[
|
|
388
|
+
"1",
|
|
389
|
+
"2",
|
|
390
|
+
"3",
|
|
391
|
+
"4",
|
|
392
|
+
"5"
|
|
393
|
+
],
|
|
394
|
+
{
|
|
395
|
+
"Ref": "BootstrapVersion"
|
|
396
|
+
}
|
|
397
|
+
]
|
|
398
|
+
}
|
|
399
|
+
]
|
|
400
|
+
},
|
|
401
|
+
"AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."
|
|
402
|
+
}
|
|
403
|
+
]
|
|
404
|
+
}
|
|
371
405
|
}
|
|
372
406
|
}
|
|
@@ -357,5 +357,39 @@
|
|
|
357
357
|
]
|
|
358
358
|
}
|
|
359
359
|
}
|
|
360
|
+
},
|
|
361
|
+
"Parameters": {
|
|
362
|
+
"BootstrapVersion": {
|
|
363
|
+
"Type": "AWS::SSM::Parameter::Value<String>",
|
|
364
|
+
"Default": "/cdk-bootstrap/hnb659fds/version",
|
|
365
|
+
"Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store."
|
|
366
|
+
}
|
|
367
|
+
},
|
|
368
|
+
"Rules": {
|
|
369
|
+
"CheckBootstrapVersion": {
|
|
370
|
+
"Assertions": [
|
|
371
|
+
{
|
|
372
|
+
"Assert": {
|
|
373
|
+
"Fn::Not": [
|
|
374
|
+
{
|
|
375
|
+
"Fn::Contains": [
|
|
376
|
+
[
|
|
377
|
+
"1",
|
|
378
|
+
"2",
|
|
379
|
+
"3",
|
|
380
|
+
"4",
|
|
381
|
+
"5"
|
|
382
|
+
],
|
|
383
|
+
{
|
|
384
|
+
"Ref": "BootstrapVersion"
|
|
385
|
+
}
|
|
386
|
+
]
|
|
387
|
+
}
|
|
388
|
+
]
|
|
389
|
+
},
|
|
390
|
+
"AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."
|
|
391
|
+
}
|
|
392
|
+
]
|
|
393
|
+
}
|
|
360
394
|
}
|
|
361
395
|
}
|