diff --git a/.changes/2.1300.0.json b/.changes/2.1300.0.json new file mode 100644 index 0000000000..7a73c9ce0c --- /dev/null +++ b/.changes/2.1300.0.json @@ -0,0 +1,12 @@ +[ + { + "type": "feature", + "category": "Lambda", + "description": "Release Lambda RuntimeManagementConfig, enabling customers to better manage runtime updates to their Lambda functions. This release adds two new APIs, GetRuntimeManagementConfig and PutRuntimeManagementConfig, as well as support on existing Create/Get/Update function APIs." + }, + { + "type": "feature", + "category": "SageMaker", + "description": "Amazon SageMaker Inference now supports P4de instance types." + } +] \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index f378eeb156..b989ab0676 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,11 @@ # Changelog for AWS SDK for JavaScript - + +## 2.1300.0 +* feature: Lambda: Release Lambda RuntimeManagementConfig, enabling customers to better manage runtime updates to their Lambda functions. This release adds two new APIs, GetRuntimeManagementConfig and PutRuntimeManagementConfig, as well as support on existing Create/Get/Update function APIs. +* feature: SageMaker: Amazon SageMaker Inference now supports P4de instance types. + ## 2.1299.0 * feature: EC2: C6in, M6in, M6idn, R6in and R6idn instances are powered by 3rd Generation Intel Xeon Scalable processors (code named Ice Lake) with an all-core turbo frequency of 3.5 GHz. * feature: IVS: API and Doc update. Update to arns field in BatchGetStreamKey. Also updates to operations and structures. diff --git a/README.md b/README.md index 0d335898dd..be15965cfd 100644 --- a/README.md +++ b/README.md @@ -57,7 +57,7 @@ for further details. To use the SDK in the browser, simply add the following script tag to your HTML pages: - + You can also build a custom browser SDK with your specified set of AWS services. This can allow you to reduce the SDK's size, specify different API versions of diff --git a/apis/lambda-2015-03-31.min.json b/apis/lambda-2015-03-31.min.json index 385872448d..2923d3f120 100644 --- a/apis/lambda-2015-03-31.min.json +++ b/apis/lambda-2015-03-31.min.json @@ -333,7 +333,7 @@ }, "AuthType": {}, "Cors": { - "shape": "S45" + "shape": "S48" } } }, @@ -350,7 +350,7 @@ "FunctionArn": {}, "AuthType": {}, "Cors": { - "shape": "S45" + "shape": "S48" }, "CreationTime": {} } @@ -748,7 +748,7 @@ "shape": "S2z" }, "Concurrency": { - "shape": "S54" + "shape": "S57" } } } @@ -859,7 +859,7 @@ } }, "output": { - "shape": "S5c" + "shape": "S5f" } }, "GetFunctionUrlConfig": { @@ -898,7 +898,7 @@ "FunctionArn": {}, "AuthType": {}, "Cors": { - "shape": "S45" + "shape": "S48" }, "CreationTime": {}, "LastModifiedTime": {} @@ -930,7 +930,7 @@ } }, "output": { - "shape": "S5i" + "shape": "S5l" } }, "GetLayerVersionByArn": { @@ -952,7 +952,7 @@ } }, "output": { - "shape": "S5i" + "shape": "S5l" } }, "GetLayerVersionPolicy": { @@ -1058,6 +1058,36 @@ } } }, + "GetRuntimeManagementConfig": { + "http": { + "method": "GET", + "requestUri": "/2021-07-20/functions/{FunctionName}/runtime-management-config", + "responseCode": 200 + }, + "input": { + "type": "structure", + "required": [ + "FunctionName" + ], + "members": { + "FunctionName": { + "location": "uri", + "locationName": "FunctionName" + }, + "Qualifier": { + "location": "querystring", + "locationName": "Qualifier" + } + } + }, + "output": { + "type": "structure", + "members": { + "UpdateRuntimeOn": {}, + "RuntimeVersionArn": {} + } + } + }, "Invoke": { "http": { "requestUri": "/2015-03-31/functions/{FunctionName}/invocations" @@ -1307,7 +1337,7 @@ "FunctionEventInvokeConfigs": { "type": "list", "member": { - "shape": "S5c" + "shape": "S5f" } }, "NextMarker": {} @@ -1364,7 +1394,7 @@ "CreationTime": {}, "LastModifiedTime": {}, "Cors": { - "shape": "S45" + "shape": "S48" }, "AuthType": {} } @@ -1407,7 +1437,7 @@ "members": { "NextMarker": {}, "Functions": { - "shape": "S6t" + "shape": "S6z" } } } @@ -1492,7 +1522,7 @@ "LayerVersions": { "type": "list", "member": { - "shape": "S71" + "shape": "S77" } } } @@ -1538,7 +1568,7 @@ "LayerName": {}, "LayerArn": {}, "LatestMatchingVersion": { - "shape": "S71" + "shape": "S77" } } } @@ -1659,7 +1689,7 @@ "members": { "NextMarker": {}, "Versions": { - "shape": "S6t" + "shape": "S6z" } } } @@ -1693,11 +1723,11 @@ } }, "CompatibleRuntimes": { - "shape": "S5l" + "shape": "S5o" }, "LicenseInfo": {}, "CompatibleArchitectures": { - "shape": "S5n" + "shape": "S5q" } } }, @@ -1705,7 +1735,7 @@ "type": "structure", "members": { "Content": { - "shape": "S5j" + "shape": "S5m" }, "LayerArn": {}, "LayerVersionArn": {}, @@ -1715,11 +1745,11 @@ "type": "long" }, "CompatibleRuntimes": { - "shape": "S5l" + "shape": "S5o" }, "LicenseInfo": {}, "CompatibleArchitectures": { - "shape": "S5n" + "shape": "S5q" } } } @@ -1803,7 +1833,7 @@ } }, "output": { - "shape": "S54" + "shape": "S57" } }, "PutFunctionEventInvokeConfig": { @@ -1838,7 +1868,7 @@ } }, "output": { - "shape": "S5c" + "shape": "S5f" } }, "PutProvisionedConcurrencyConfig": { @@ -1886,6 +1916,44 @@ } } }, + "PutRuntimeManagementConfig": { + "http": { + "method": "PUT", + "requestUri": "/2021-07-20/functions/{FunctionName}/runtime-management-config", + "responseCode": 200 + }, + "input": { + "type": "structure", + "required": [ + "FunctionName", + "UpdateRuntimeOn" + ], + "members": { + "FunctionName": { + "location": "uri", + "locationName": "FunctionName" + }, + "Qualifier": { + "location": "querystring", + "locationName": "Qualifier" + }, + "UpdateRuntimeOn": {}, + "RuntimeVersionArn": {} + } + }, + "output": { + "type": "structure", + "required": [ + "UpdateRuntimeOn", + "FunctionArn" + ], + "members": { + "UpdateRuntimeOn": {}, + "FunctionArn": {}, + "RuntimeVersionArn": {} + } + } + }, "RemoveLayerVersionPermission": { "http": { "method": "DELETE", @@ -2263,7 +2331,7 @@ } }, "output": { - "shape": "S5c" + "shape": "S5f" } }, "UpdateFunctionUrlConfig": { @@ -2288,7 +2356,7 @@ }, "AuthType": {}, "Cors": { - "shape": "S45" + "shape": "S48" } } }, @@ -2306,7 +2374,7 @@ "FunctionArn": {}, "AuthType": {}, "Cors": { - "shape": "S45" + "shape": "S48" }, "CreationTime": {}, "LastModifiedTime": {} @@ -2767,6 +2835,21 @@ "ApplyOn": {}, "OptimizationStatus": {} } + }, + "RuntimeVersionConfig": { + "type": "structure", + "members": { + "RuntimeVersionArn": {}, + "Error": { + "type": "structure", + "members": { + "ErrorCode": {}, + "Message": { + "shape": "S3p" + } + } + } + } } } }, @@ -2774,14 +2857,14 @@ "type": "string", "sensitive": true }, - "S45": { + "S48": { "type": "structure", "members": { "AllowCredentials": { "type": "boolean" }, "AllowHeaders": { - "shape": "S47" + "shape": "S4a" }, "AllowMethods": { "type": "list", @@ -2792,18 +2875,18 @@ "member": {} }, "ExposeHeaders": { - "shape": "S47" + "shape": "S4a" }, "MaxAge": { "type": "integer" } } }, - "S47": { + "S4a": { "type": "list", "member": {} }, - "S54": { + "S57": { "type": "structure", "members": { "ReservedConcurrentExecutions": { @@ -2811,7 +2894,7 @@ } } }, - "S5c": { + "S5f": { "type": "structure", "members": { "LastModified": { @@ -2829,11 +2912,11 @@ } } }, - "S5i": { + "S5l": { "type": "structure", "members": { "Content": { - "shape": "S5j" + "shape": "S5m" }, "LayerArn": {}, "LayerVersionArn": {}, @@ -2843,15 +2926,15 @@ "type": "long" }, "CompatibleRuntimes": { - "shape": "S5l" + "shape": "S5o" }, "LicenseInfo": {}, "CompatibleArchitectures": { - "shape": "S5n" + "shape": "S5q" } } }, - "S5j": { + "S5m": { "type": "structure", "members": { "Location": {}, @@ -2863,21 +2946,21 @@ "SigningJobArn": {} } }, - "S5l": { + "S5o": { "type": "list", "member": {} }, - "S5n": { + "S5q": { "type": "list", "member": {} }, - "S6t": { + "S6z": { "type": "list", "member": { "shape": "S3h" } }, - "S71": { + "S77": { "type": "structure", "members": { "LayerVersionArn": {}, @@ -2887,11 +2970,11 @@ "Description": {}, "CreatedDate": {}, "CompatibleRuntimes": { - "shape": "S5l" + "shape": "S5o" }, "LicenseInfo": {}, "CompatibleArchitectures": { - "shape": "S5n" + "shape": "S5q" } } } diff --git a/apis/lambda-2015-03-31.normal.json b/apis/lambda-2015-03-31.normal.json index d46284664c..7784a7c932 100644 --- a/apis/lambda-2015-03-31.normal.json +++ b/apis/lambda-2015-03-31.normal.json @@ -116,7 +116,7 @@ "shape": "TooManyRequestsException" } ], - "documentation": "
Creates an alias for a Lambda function version. Use aliases to provide clients with a function identifier that you can update to invoke a different version.
You can also map an alias to split invocation requests between two versions. Use the RoutingConfig
parameter to specify a second version and the percentage of invocation requests that it receives.
Creates an alias for a Lambda function version. Use aliases to provide clients with a function identifier that you can update to invoke a different version.
You can also map an alias to split invocation requests between two versions. Use the RoutingConfig
parameter to specify a second version and the percentage of invocation requests that it receives.
Deletes a Lambda function alias.
" + "documentation": "Deletes a Lambda function alias.
" }, "DeleteCodeSigningConfig": { "name": "DeleteCodeSigningConfig", @@ -580,7 +580,7 @@ "shape": "TooManyRequestsException" } ], - "documentation": "Returns details about a Lambda function alias.
" + "documentation": "Returns details about a Lambda function alias.
" }, "GetCodeSigningConfig": { "name": "GetCodeSigningConfig", @@ -959,6 +959,35 @@ ], "documentation": "Retrieves the provisioned concurrency configuration for a function's alias or version.
" }, + "GetRuntimeManagementConfig": { + "name": "GetRuntimeManagementConfig", + "http": { + "method": "GET", + "requestUri": "/2021-07-20/functions/{FunctionName}/runtime-management-config", + "responseCode": 200 + }, + "input": { + "shape": "GetRuntimeManagementConfigRequest" + }, + "output": { + "shape": "GetRuntimeManagementConfigResponse" + }, + "errors": [ + { + "shape": "ServiceException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "InvalidParameterValueException" + }, + { + "shape": "TooManyRequestsException" + } + ], + "documentation": "Retrieves the runtime management configuration for a function's version. If the runtime update mode is Manual, this includes the ARN of the runtime version and the runtime update mode. If the runtime update mode is Auto or Function update, this includes the runtime update mode and null
is returned for the ARN. For more information, see Runtime updates.
Returns a list of aliases for a Lambda function.
" + "documentation": "Returns a list of aliases for a Lambda function.
" }, "ListCodeSigningConfigs": { "name": "ListCodeSigningConfigs", @@ -1258,7 +1287,7 @@ "shape": "InvalidParameterValueException" } ], - "documentation": "Returns a list of Lambda functions, with the version-specific configuration of each. Lambda returns up to 50 functions per call.
Set FunctionVersion
to ALL
to include all published versions of each function in addition to the unpublished version.
The ListFunctions
operation returns a subset of the FunctionConfiguration fields. To get the additional fields (State, StateReasonCode, StateReason, LastUpdateStatus, LastUpdateStatusReason, LastUpdateStatusReasonCode) for a function or version, use GetFunction.
Returns a list of Lambda functions, with the version-specific configuration of each. Lambda returns up to 50 functions per call.
Set FunctionVersion
to ALL
to include all published versions of each function in addition to the unpublished version.
The ListFunctions
operation returns a subset of the FunctionConfiguration fields. To get the additional fields (State, StateReasonCode, StateReason, LastUpdateStatus, LastUpdateStatusReason, LastUpdateStatusReasonCode, RuntimeVersionConfig) for a function or version, use GetFunction.
Adds a provisioned concurrency configuration to a function's alias or version.
" }, + "PutRuntimeManagementConfig": { + "name": "PutRuntimeManagementConfig", + "http": { + "method": "PUT", + "requestUri": "/2021-07-20/functions/{FunctionName}/runtime-management-config", + "responseCode": 200 + }, + "input": { + "shape": "PutRuntimeManagementConfigRequest" + }, + "output": { + "shape": "PutRuntimeManagementConfigResponse" + }, + "errors": [ + { + "shape": "ServiceException" + }, + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ResourceConflictException" + }, + { + "shape": "InvalidParameterValueException" + }, + { + "shape": "TooManyRequestsException" + } + ], + "documentation": "Sets the runtime management configuration for a function's version. For more information, see Runtime updates.
" + }, "RemoveLayerVersionPermission": { "name": "RemoveLayerVersionPermission", "http": { @@ -1777,7 +1838,7 @@ "shape": "ResourceConflictException" } ], - "documentation": "Updates the configuration of a Lambda function alias.
" + "documentation": "Updates the configuration of a Lambda function alias.
" }, "UpdateCodeSigningConfig": { "name": "UpdateCodeSigningConfig", @@ -2217,7 +2278,7 @@ "documentation": "A unique identifier that changes when you update the alias.
" } }, - "documentation": "Provides configuration information about a Lambda function alias.
" + "documentation": "Provides configuration information about a Lambda function alias.
" }, "AliasList": { "type": "list", @@ -3469,6 +3530,10 @@ "SnapStart": { "shape": "SnapStartResponse", "documentation": "Set ApplyOn
to PublishedVersions
to create a snapshot of the initialized execution environment when you publish a function version. For more information, see Improving startup performance with Lambda SnapStart.
The ARN of the runtime and any errors that occured.
" } }, "documentation": "Details about a function's configuration.
" @@ -4059,6 +4124,39 @@ } } }, + "GetRuntimeManagementConfigRequest": { + "type": "structure", + "required": [ + "FunctionName" + ], + "members": { + "FunctionName": { + "shape": "FunctionName", + "documentation": "The name of the Lambda function.
Name formats
Function name – my-function
.
Function ARN – arn:aws:lambda:us-west-2:123456789012:function:my-function
.
Partial ARN – 123456789012:function:my-function
.
The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.
", + "location": "uri", + "locationName": "FunctionName" + }, + "Qualifier": { + "shape": "Qualifier", + "documentation": "Specify a version of the function. This can be $LATEST
or a published version number. If no value is specified, the configuration for the $LATEST
version is returned.
The current runtime update mode of the function.
" + }, + "RuntimeVersionArn": { + "shape": "RuntimeVersionArn", + "documentation": "The ARN of the runtime the function is configured to use. If the runtime update mode is Manual, the ARN is returned, otherwise null
is returned.
The name of the Lambda function.
Name formats
Function name – my-function
.
Function ARN – arn:aws:lambda:us-west-2:123456789012:function:my-function
.
Partial ARN – 123456789012:function:my-function
.
The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.
", + "location": "uri", + "locationName": "FunctionName" + }, + "Qualifier": { + "shape": "Qualifier", + "documentation": "Specify a version of the function. This can be $LATEST
or a published version number. If no value is specified, the configuration for the $LATEST
version is returned.
Specify the runtime update mode.
Auto (default) - Automatically update to the most recent and secure runtime version using a Two-phase runtime version rollout. This is the best choice for most customers to ensure they always benefit from runtime updates.
Function update - Lambda updates the runtime of your function to the most recent and secure runtime version when you update your function. This approach synchronizes runtime updates with function deployments, giving you control over when runtime updates are applied and allowing you to detect and mitigate rare runtime update incompatibilities early. When using this setting, you need to regularly update your functions to keep their runtime up-to-date.
Manual - You specify a runtime version in your function configuration. The function will use this runtime version indefinitely. In the rare case where a new runtime version is incompatible with an existing function, this allows you to roll back your function to an earlier runtime version. For more information, see Roll back a runtime version.
The ARN of the runtime version you want the function to use.
This is only required if you're using the Manual runtime update mode.
The runtime update mode.
" + }, + "FunctionArn": { + "shape": "FunctionArn", + "documentation": "The ARN of the function
" + }, + "RuntimeVersionArn": { + "shape": "RuntimeVersionArn", + "documentation": "The ARN of the runtime the function is configured to use. If the runtime update mode is manual, the ARN is returned, otherwise null
is returned.
The ARN of the runtime version you want the function to use.
" + }, + "Error": { + "shape": "RuntimeVersionError", + "documentation": "Error response when Lambda is unable to retrieve the runtime version for a function.
" + } + }, + "documentation": "The ARN of the runtime and any errors that occured.
" + }, + "RuntimeVersionError": { + "type": "structure", + "members": { + "ErrorCode": { + "shape": "String", + "documentation": "The error code.
" + }, + "Message": { + "shape": "SensitiveString", + "documentation": "The error message.
" + } + }, + "documentation": "Any error returned when the runtime version information for the function could not be retrieved.
" + }, "S3Bucket": { "type": "string", "max": 63, @@ -6246,6 +6428,14 @@ } } }, + "UpdateRuntimeOn": { + "type": "string", + "enum": [ + "Auto", + "Manual", + "FunctionUpdate" + ] + }, "Version": { "type": "string", "max": 1024, diff --git a/apis/sagemaker-2017-07-24.normal.json b/apis/sagemaker-2017-07-24.normal.json index ad7e2435a0..2649ac4f92 100644 --- a/apis/sagemaker-2017-07-24.normal.json +++ b/apis/sagemaker-2017-07-24.normal.json @@ -17573,7 +17573,7 @@ }, "ShadowProductionVariants": { "shape": "ProductionVariantSummaryList", - "documentation": "A list of the shadow variants hosted on the endpoint. Each shadow variant is a model in shadow mode with production traffic replicated from the proudction variant.
" + "documentation": "A list of the shadow variants hosted on the endpoint. Each shadow variant is a model in shadow mode with production traffic replicated from the production variant.
" } }, "documentation": "A hosted endpoint for real-time inference.
" @@ -29977,7 +29977,7 @@ }, "VolumeSizeInGB": { "shape": "ProductionVariantVolumeSizeInGB", - "documentation": "The size, in GB, of the ML storage volume attached to individual inference instance associated with the production variant. Currenly only Amazon EBS gp2 storage volumes are supported.
" + "documentation": "The size, in GB, of the ML storage volume attached to individual inference instance associated with the production variant. Currently only Amazon EBS gp2 storage volumes are supported.
" }, "ModelDataDownloadTimeoutInSeconds": { "shape": "ProductionVariantModelDataDownloadTimeoutInSeconds", @@ -30165,7 +30165,8 @@ "ml.r6gd.4xlarge", "ml.r6gd.8xlarge", "ml.r6gd.12xlarge", - "ml.r6gd.16xlarge" + "ml.r6gd.16xlarge", + "ml.p4de.24xlarge" ] }, "ProductionVariantList": { diff --git a/clients/lambda.d.ts b/clients/lambda.d.ts index 246fec34af..a202017b26 100644 --- a/clients/lambda.d.ts +++ b/clients/lambda.d.ts @@ -269,6 +269,14 @@ declare class Lambda extends Service { * Retrieves the provisioned concurrency configuration for a function's alias or version. */ getProvisionedConcurrencyConfig(callback?: (err: AWSError, data: Lambda.Types.GetProvisionedConcurrencyConfigResponse) => void): Request>1,l=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=a?0:s-1,y=a?1:-1,b=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(n=isNaN(t)?1:0,o=m):(o=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-o))<1&&(o--,u*=2),t+=o+c>=1?l/u:l*Math.pow(2,1-c),t*u>=2&&(o++,u/=2),o+c>=m?(n=0,o=m):o+c>=1?(n=(t*u-1)*Math.pow(2,i),o+=c):(n=t*Math.pow(2,c-1)*Math.pow(2,i),o=0));i>=8;e[r+d]=255&n,d+=y,n/=256,i-=8);for(o=o<0;e[r+d]=255&o,d+=y,o/=256,p-=8);e[r+d-y]|=128*b}},{}],437:[function(e,t,r){var a={}.toString;t.exports=Array.isArray||function(e){return"[object Array]"==a.call(e)}},{}],438:[function(e,t,r){!function(e){"use strict";function t(e){return null!==e&&"[object Array]"===Object.prototype.toString.call(e)}function r(e){return null!==e&&"[object Object]"===Object.prototype.toString.call(e)}function a(e,i){if(e===i)return!0;if(Object.prototype.toString.call(e)!==Object.prototype.toString.call(i))return!1;if(!0===t(e)){if(e.length!==i.length)return!1;for(var s=0;s =0?this.expression(e):"Lbracket"===t?(this._match("Lbracket"),this._parseMultiselectList()):"Lbrace"===t?(this._match("Lbrace"),this._parseMultiselectHash()):void 0},_parseProjectionRHS:function(e){var t;if(P[this._lookahead(0)]<10)t={type:"Identity"};else if("Lbracket"===this._lookahead(0))t=this.expression(e);else if("Filter"===this._lookahead(0))t=this.expression(e);else{if("Dot"!==this._lookahead(0)){var r=this._lookaheadToken(0),a=new Error("Sytanx error, unexpected token: "+r.value+"("+r.type+")");throw a.name="ParserError",a}this._match("Dot"),t=this._parseDotRHS(e)}return t},_parseMultiselectList:function(){for(var e=[];"Rbracket"!==this._lookahead(0);){var t=this.expression(0);if(e.push(t),"Comma"===this._lookahead(0)&&(this._match("Comma"),"Rbracket"===this._lookahead(0)))throw new Error("Unexpected token Rbracket")}return this._match("Rbracket"),{type:"MultiSelectList",children:e}},_parseMultiselectHash:function(){for(var e,t,r,a,i=[],s=["UnquotedIdentifier","QuotedIdentifier"];;){if(e=this._lookaheadToken(0),s.indexOf(e.type)<0)throw new Error("Expecting an identifier token, got: "+e.type);if(t=e.value,this._advance(),this._match("Colon"),r=this.expression(0),a={type:"KeyValuePair",name:t,value:r},i.push(a),"Comma"===this._lookahead(0))this._match("Comma");else if("Rbrace"===this._lookahead(0)){this._match("Rbrace");break}}return{type:"MultiSelectHash",children:i}}},c.prototype={search:function(e,t){return this.visit(e,t)},visit:function(e,o){var n,u,p,m,c,l,d,y,b;switch(e.type){case"Field":return null!==o&&r(o)?(l=o[e.name],void 0===l?null:l):null;case"Subexpression":for(p=this.visit(e.children[0],o),b=1;b G((f-r)/g)&&i("overflow"),r+=(p-t)*g,t=p,u=0;u =0?(c=b.substr(0,S),l=b.substr(S+1)):(c=b,l=""),d=decodeURIComponent(c),y=decodeURIComponent(l),a(o,d)?i(o[d])?o[d].push(y):o[d]=[o[d],y]:o[d]=y}return o};var i=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)}},{}],442:[function(e,t,r){"use strict";function a(e,t){if(e.map)return e.map(t);for(var r=[],a=0;a >1,l=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=a?0:s-1,y=a?1:-1,b=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(n=isNaN(t)?1:0,o=m):(o=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-o))<1&&(o--,u*=2),t+=o+c>=1?l/u:l*Math.pow(2,1-c),t*u>=2&&(o++,u/=2),o+c>=m?(n=0,o=m):o+c>=1?(n=(t*u-1)*Math.pow(2,i),o+=c):(n=t*Math.pow(2,c-1)*Math.pow(2,i),o=0));i>=8;e[r+d]=255&n,d+=y,n/=256,i-=8);for(o=o<0;e[r+d]=255&o,d+=y,o/=256,p-=8);e[r+d-y]|=128*b}},{}],437:[function(e,t,r){var a={}.toString;t.exports=Array.isArray||function(e){return"[object Array]"==a.call(e)}},{}],438:[function(e,t,r){!function(e){"use strict";function t(e){return null!==e&&"[object Array]"===Object.prototype.toString.call(e)}function r(e){return null!==e&&"[object Object]"===Object.prototype.toString.call(e)}function a(e,i){if(e===i)return!0;if(Object.prototype.toString.call(e)!==Object.prototype.toString.call(i))return!1;if(!0===t(e)){if(e.length!==i.length)return!1;for(var s=0;s =0?this.expression(e):"Lbracket"===t?(this._match("Lbracket"),this._parseMultiselectList()):"Lbrace"===t?(this._match("Lbrace"),this._parseMultiselectHash()):void 0},_parseProjectionRHS:function(e){var t;if(P[this._lookahead(0)]<10)t={type:"Identity"};else if("Lbracket"===this._lookahead(0))t=this.expression(e);else if("Filter"===this._lookahead(0))t=this.expression(e);else{if("Dot"!==this._lookahead(0)){var r=this._lookaheadToken(0),a=new Error("Sytanx error, unexpected token: "+r.value+"("+r.type+")");throw a.name="ParserError",a}this._match("Dot"),t=this._parseDotRHS(e)}return t},_parseMultiselectList:function(){for(var e=[];"Rbracket"!==this._lookahead(0);){var t=this.expression(0);if(e.push(t),"Comma"===this._lookahead(0)&&(this._match("Comma"),"Rbracket"===this._lookahead(0)))throw new Error("Unexpected token Rbracket")}return this._match("Rbracket"),{type:"MultiSelectList",children:e}},_parseMultiselectHash:function(){for(var e,t,r,a,i=[],s=["UnquotedIdentifier","QuotedIdentifier"];;){if(e=this._lookaheadToken(0),s.indexOf(e.type)<0)throw new Error("Expecting an identifier token, got: "+e.type);if(t=e.value,this._advance(),this._match("Colon"),r=this.expression(0),a={type:"KeyValuePair",name:t,value:r},i.push(a),"Comma"===this._lookahead(0))this._match("Comma");else if("Rbrace"===this._lookahead(0)){this._match("Rbrace");break}}return{type:"MultiSelectHash",children:i}}},c.prototype={search:function(e,t){return this.visit(e,t)},visit:function(e,o){var n,u,p,m,c,l,d,y,b;switch(e.type){case"Field":return null!==o&&r(o)?(l=o[e.name],void 0===l?null:l):null;case"Subexpression":for(p=this.visit(e.children[0],o),b=1;b G((f-r)/g)&&i("overflow"),r+=(p-t)*g,t=p,u=0;u =0?(c=b.substr(0,S),l=b.substr(S+1)):(c=b,l=""),d=decodeURIComponent(c),y=decodeURIComponent(l),a(o,d)?i(o[d])?o[d].push(y):o[d]=[o[d],y]:o[d]=y}return o};var i=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)}},{}],442:[function(e,t,r){"use strict";function a(e,t){if(e.map)return e.map(t);for(var r=[],a=0;a=55296&&t<=56319&&i65535&&(e-=65536,t+=w(e>>>10&1023|55296),e=56320|1023&e),t+=w(e)}).join("")}function p(e){return e-48<10?e-22:e-65<26?e-65:e-97<26?e-97:T}function m(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function c(e,t,r){var a=0;for(e=r?G(e/R):e>>1,e+=G(e/t);e>L*k>>1;a+=T)e=G(e/L);return G(a+(L+1)*e/(e+A))}function l(e){var t,r,a,s,o,n,m,l,d,y,b=[],S=e.length,g=0,h=v,N=D;for(r=e.lastIndexOf(P),r<0&&(r=0),a=0;a=S&&i("invalid-input"),l=p(e.charCodeAt(s++)),(l>=T||l>G((f-g)/n))&&i("overflow"),g+=l*n,d=m<=N?C:m>=N+k?k:m-N,!(l=t&&bf&&i("overflow"),b==t){for(l=r,d=T;y=d<=o?C:d>=o+k?k:d-o,!(l=0&&delete e.httpRequest.headers["Content-Length"]}function i(e){var t=new l,r=e.service.api.operations[e.operation].input;if(r.payload){var a={},i=r.members[r.payload];a=e.params[r.payload],"structure"===i.type?(e.httpRequest.body=t.build(a||{},i),s(e)):void 0!==a&&(e.httpRequest.body=a,("binary"===i.type||i.isStreaming)&&s(e,!0))}else e.httpRequest.body=t.build(e.params,r),s(e)}function s(e,t){if(!e.httpRequest.headers["Content-Type"]){var r=t?"binary/octet-stream":"application/json";e.httpRequest.headers["Content-Type"]=r}}function o(e){m.buildRequest(e),y.indexOf(e.httpRequest.method)<0&&i(e)}function n(e){c.extractError(e)}function u(e){m.extractData(e);var t,r=e.request,a=r.service.api.operations[r.operation],i=r.service.api.operations[r.operation].output||{};a.hasEventOutput;if(i.payload){var s=i.members[i.payload],o=e.httpResponse.body;if(s.isEventStream)t=new d,e.data[payload]=p.createEventStream(2===AWS.HttpClient.streamsApiVersion?e.httpResponse.stream:o,t,s);else if("structure"===s.type||"list"===s.type){var t=new d;e.data[i.payload]=t.parse(o,s)}else"binary"===s.type||s.isStreaming?e.data[i.payload]=o:e.data[i.payload]=s.toType(o)}else{var n=e.data;c.extractData(e),e.data=p.merge(n,e.data)}}var p=e("../util"),m=e("./rest"),c=e("./json"),l=e("../json/builder"),d=e("../json/parser"),y=["GET","HEAD","DELETE"];t.exports={buildRequest:o,extractError:n,extractData:u,unsetContentLength:a}},{"../json/builder":369,"../json/parser":370,"../util":422,"./json":380,"./rest":382}],384:[function(e,t,r){function a(e){var t=e.service.api.operations[e.operation].input,r=new n.XML.Builder,a=e.params,i=t.payload;if(i){var s=t.members[i];if(void 0===(a=a[i]))return;if("structure"===s.type){var o=s.name;e.httpRequest.body=r.toXML(a,s,o,!0)}else e.httpRequest.body=a}else e.httpRequest.body=r.toXML(a,t,t.name||t.shape||u.string.upperFirst(e.operation)+"Request")}function i(e){p.buildRequest(e),["GET","HEAD"].indexOf(e.httpRequest.method)<0&&a(e)}function s(e){p.extractError(e);var t;try{t=(new n.XML.Parser).parse(e.httpResponse.body.toString())}catch(r){t={Code:e.httpResponse.statusCode,Message:e.httpResponse.statusMessage}}t.Errors&&(t=t.Errors),t.Error&&(t=t.Error),t.Code?e.error=u.error(new Error,{code:t.Code,message:t.Message}):e.error=u.error(new Error,{code:e.httpResponse.statusCode,message:null})}function o(e){p.extractData(e);var t,r=e.request,a=e.httpResponse.body,i=r.service.api.operations[r.operation],s=i.output,o=(i.hasEventOutput,s.payload);if(o){var m=s.members[o];m.isEventStream?(t=new n.XML.Parser,e.data[o]=u.createEventStream(2===n.HttpClient.streamsApiVersion?e.httpResponse.stream:e.httpResponse.body,t,m)):"structure"===m.type?(t=new n.XML.Parser,e.data[o]=t.parse(a.toString(),m)):"binary"===m.type||m.isStreaming?e.data[o]=a:e.data[o]=m.toType(a)}else if(a.length>0){t=new n.XML.Parser;var c=t.parse(a.toString(),s);u.update(e.data,c)}}var n=e("../core"),u=e("../util"),p=e("./rest");t.exports={buildRequest:i,extractError:s,extractData:o}},{"../core":345,"../util":422,"./rest":382}],385:[function(e,t,r){function a(){}function i(e){return e.isQueryName||"ec2"!==e.api.protocol?e.name:e.name[0].toUpperCase()+e.name.substr(1)}function s(e,t,r,a){p.each(r.members,function(r,s){var o=t[r];if(null!==o&&void 0!==o){var n=i(s);n=e?e+"."+n:n,u(n,o,s,a)}})}function o(e,t,r,a){var i=1;p.each(t,function(t,s){var o=r.flattened?".":".entry.",n=o+i+++".",p=n+(r.key.name||"key"),m=n+(r.value.name||"value");u(e+p,t,r.key,a),u(e+m,s,r.value,a)})}function n(e,t,r,a){var s=r.member||{};if(0===t.length)return void a.call(this,e,null);p.arrayEach(t,function(t,o){var n="."+(o+1);if("ec2"===r.api.protocol)n+="";else if(r.flattened){if(s.name){var p=e.split(".");p.pop(),p.push(i(s)),e=p.join(".")}}else n="."+(s.name?s.name:"member")+n;u(e+n,t,s,a)})}function u(e,t,r,a){null!==t&&void 0!==t&&("structure"===r.type?s(e,t,r,a):"list"===r.type?n(e,t,r,a):"map"===r.type?o(e,t,r,a):a(e,r.toWireFormat(t).toString()))}
+var p=e("../util");a.prototype.serialize=function(e,t,r){s("",e,t,r)},t.exports=a},{"../util":422}],386:[function(e,t,r){var a=e("../core"),i=null,s={signatureVersion:"v4",signingName:"rds-db",operations:{}},o={region:"string",hostname:"string",port:"number",username:"string"};a.RDS.Signer=a.util.inherit({constructor:function(e){this.options=e||{}},convertUrlToAuthToken:function(e){if(0===e.indexOf("https://"))return e.substring("https://".length)},getAuthToken:function(e,t){"function"==typeof e&&void 0===t&&(t=e,e={});var r=this,o="function"==typeof t;e=a.util.merge(this.options,e);var n=this.validateAuthTokenOptions(e);if(!0!==n){if(o)return t(n,null);throw n}var u={region:e.region,endpoint:new a.Endpoint(e.hostname+":"+e.port),paramValidation:!1,signatureVersion:"v4"};e.credentials&&(u.credentials=e.credentials),i=new a.Service(u),i.api=s;var p=i.makeRequest();if(this.modifyRequestForAuthToken(p,e),!o){var m=p.presign(900);return this.convertUrlToAuthToken(m)}p.presign(900,function(e,a){a&&(a=r.convertUrlToAuthToken(a)),t(e,a)})},modifyRequestForAuthToken:function(e,t){e.on("build",e.buildAsGet),e.httpRequest.body=a.util.queryParamsToString({Action:"connect",DBUser:t.username})},validateAuthTokenOptions:function(e){var t="";e=e||{};for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&typeof e[r]!==o[r]&&(t+="option '"+r+"' should have been type '"+o[r]+"', was '"+typeof e[r]+"'.\n");return!t.length||a.util.error(new Error,{code:"InvalidParameter",message:t})}})},{"../core":345}],387:[function(e,t,r){t.exports={now:function(){return"undefined"!=typeof performance&&"function"==typeof performance.now?performance.now():Date.now()}}},{}],388:[function(e,t,r){function a(e){return"string"==typeof e&&(e.startsWith("fips-")||e.endsWith("-fips"))}function i(e){return"string"==typeof e&&["aws-global","aws-us-gov-global"].includes(e)}function s(e){return["fips-aws-global","aws-fips","aws-global"].includes(e)?"us-east-1":["fips-aws-us-gov-global","aws-us-gov-global"].includes(e)?"us-gov-west-1":e.replace(/fips-(dkr-|prod-)?|-fips/,"")}t.exports={isFipsRegion:a,isGlobalRegion:i,getRealRegion:s}},{}],389:[function(e,t,r){function a(e){if(!e)return null;var t=e.split("-");return t.length<3?null:t.slice(0,t.length-2).join("-")+"-*"}function i(e){var t=e.config.region,r=a(t),i=e.api.endpointPrefix;return[[t,i],[r,i],[t,"*"],[r,"*"],["*",i],["*","*"]].map(function(e){return e[0]&&e[1]?e.join("/"):null})}function s(e,t){u.each(t,function(t,r){"globalEndpoint"!==t&&(void 0!==e.config[t]&&null!==e.config[t]||(e.config[t]=r))})}function o(e){for(var t=i(e),r=e.config.useFipsEndpoint,a=e.config.useDualstackEndpoint,o=0;o=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function b(e){return+e!=e&&(e=0),s.alloc(+e)}function S(e,t){if(s.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var r=e.length;if(0===r)return 0;for(var a=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return K(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return H(e).length;default:if(a)return K(e).length;t=(""+t).toLowerCase(),a=!0}}function g(e,t,r){var a=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if(r>>>=0,t>>>=0,r<=t)return"";for(e||(e="utf8");;)switch(e){case"hex":return E(this,t,r);case"utf8":case"utf-8":return v(this,t,r);case"ascii":return x(this,t,r);case"latin1":case"binary":return q(this,t,r);case"base64":return D(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M(this,t,r);default:if(a)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),a=!0}}function h(e,t,r){var a=e[t];e[t]=e[r],e[r]=a}function N(e,t,r,a,i){if(0===e.length)return-1;if("string"==typeof r?(a=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof t&&(t=s.from(t,a)),s.isBuffer(t))return 0===t.length?-1:I(e,t,r,a,i);if("number"==typeof t)return t&=255,s.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):I(e,[t],r,a,i);throw new TypeError("val must be string, number or Buffer")}function I(e,t,r,a,i){function s(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}var o=1,n=e.length,u=t.length;if(void 0!==a&&("ucs2"===(a=String(a).toLowerCase())||"ucs-2"===a||"utf16le"===a||"utf-16le"===a)){if(e.length<2||t.length<2)return-1;o=2,n/=2,u/=2,r/=2}var p;if(i){var m=-1;for(p=r;p>>8*(a?i:1-i)}function B(e,t,r,a){t<0&&(t=4294967295+t+1);for(var i=0,s=Math.min(e.length-r,4);i>>8*(a?i:3-i)&255}function U(e,t,r,a,i,s){if(r+a>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function _(e,t,r,a,i){return i||U(e,t,r,4,3.4028234663852886e38,-3.4028234663852886e38),X.write(e,t,r,a,23,4),r+4}function F(e,t,r,a,i){return i||U(e,t,r,8,1.7976931348623157e308,-1.7976931348623157e308),X.write(e,t,r,a,52,8),r+8}function O(e){if(e=V(e).replace(ee,""),e.length<2)return"";for(;e.length%4!=0;)e+="=";return e}function V(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function z(e){return e<16?"0"+e.toString(16):e.toString(16)}function K(e,t){t=t||1/0;for(var r,a=e.length,i=null,s=[],o=0;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&s.push(239,191,189);continue}if(o+1===a){(t-=3)>-1&&s.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&s.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&s.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;s.push(r)}else if(r<2048){if((t-=2)<0)break;s.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;s.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;s.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return s}function j(e){for(var t=[],r=0;r=55296&&t<=56319&&i65535&&(e-=65536,t+=w(e>>>10&1023|55296),e=56320|1023&e),t+=w(e)}).join("")}function p(e){return e-48<10?e-22:e-65<26?e-65:e-97<26?e-97:T}function m(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function c(e,t,r){var a=0;for(e=r?G(e/R):e>>1,e+=G(e/t);e>L*k>>1;a+=T)e=G(e/L);return G(a+(L+1)*e/(e+A))}function l(e){var t,r,a,s,o,n,m,l,d,y,b=[],S=e.length,g=0,h=v,N=D;for(r=e.lastIndexOf(P),r<0&&(r=0),a=0;a=S&&i("invalid-input"),l=p(e.charCodeAt(s++)),(l>=T||l>G((f-g)/n))&&i("overflow"),g+=l*n,d=m<=N?C:m>=N+k?k:m-N,!(l=t&&bf&&i("overflow"),b==t){for(l=r,d=T;y=d<=o?C:d>=o+k?k:d-o,!(l