UNPKG

@serverless-stack/nextjs-lambda

Version:

Provides handlers that can be used in CloudFront Lambda@Edge to deploy next.js applications to the edge

1,173 lines (1,164 loc) 342 kB
'use strict'; var index = require('./index-2ba926b7.js'); var url = require('url'); var buffer = require('buffer'); var http = require('http'); var fs = require('fs'); var os = require('os'); var path = require('path'); var crypto = require('crypto'); var https = require('https'); var Stream = require('stream'); require('http2'); var process$1 = require('process'); var child_process = require('child_process'); var regenerationHandler = require('./regeneration-handler-13d8a068.js'); require('zlib'); require('./manifest.json'); function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } var crypto__default = /*#__PURE__*/_interopDefaultLegacy(crypto); var name$2 = "@aws-sdk/client-s3"; var description$2 = "AWS SDK for JavaScript S3 Client for Node.js, Browser and React Native"; var version$2 = "3.30.0"; var scripts$2 = { clean: "yarn remove-definitions && yarn remove-dist && yarn remove-documentation", "build-documentation": "yarn remove-documentation && typedoc ./", "remove-definitions": "rimraf ./types", "remove-dist": "rimraf ./dist", "remove-documentation": "rimraf ./docs", "test:unit": "mocha **/cjs/**/*.spec.js", "test:e2e": "mocha **/cjs/**/*.ispec.js && karma start karma.conf.js", test: "yarn test:unit", "build:cjs": "tsc -p tsconfig.json", "build:es": "tsc -p tsconfig.es.json", build: "yarn build:cjs && yarn build:es", "downlevel-dts": "downlevel-dts dist/types dist/types/ts3.4" }; var main$2 = "./dist/cjs/index.js"; var types$2 = "./dist/types/index.d.ts"; var module$3 = "./dist/es/index.js"; var browser$2 = { "./runtimeConfig": "./runtimeConfig.browser" }; var sideEffects$2 = false; var dependencies$2 = { "@aws-crypto/sha256-browser": "^1.0.0", "@aws-crypto/sha256-js": "^1.0.0", "@aws-sdk/client-sts": "3.30.0", "@aws-sdk/config-resolver": "3.30.0", "@aws-sdk/credential-provider-node": "3.30.0", "@aws-sdk/eventstream-serde-browser": "3.29.0", "@aws-sdk/eventstream-serde-config-resolver": "3.29.0", "@aws-sdk/eventstream-serde-node": "3.29.0", "@aws-sdk/fetch-http-handler": "3.29.0", "@aws-sdk/hash-blob-browser": "3.29.0", "@aws-sdk/hash-node": "3.29.0", "@aws-sdk/hash-stream-node": "3.29.0", "@aws-sdk/invalid-dependency": "3.29.0", "@aws-sdk/md5-js": "3.29.0", "@aws-sdk/middleware-apply-body-checksum": "3.29.0", "@aws-sdk/middleware-bucket-endpoint": "3.30.0", "@aws-sdk/middleware-content-length": "3.29.0", "@aws-sdk/middleware-expect-continue": "3.29.0", "@aws-sdk/middleware-host-header": "3.29.0", "@aws-sdk/middleware-location-constraint": "3.29.0", "@aws-sdk/middleware-logger": "3.29.0", "@aws-sdk/middleware-retry": "3.29.0", "@aws-sdk/middleware-sdk-s3": "3.30.0", "@aws-sdk/middleware-serde": "3.29.0", "@aws-sdk/middleware-signing": "3.30.0", "@aws-sdk/middleware-ssec": "3.29.0", "@aws-sdk/middleware-stack": "3.29.0", "@aws-sdk/middleware-user-agent": "3.29.0", "@aws-sdk/node-config-provider": "3.29.0", "@aws-sdk/node-http-handler": "3.29.0", "@aws-sdk/protocol-http": "3.29.0", "@aws-sdk/smithy-client": "3.30.0", "@aws-sdk/types": "3.29.0", "@aws-sdk/url-parser": "3.29.0", "@aws-sdk/util-base64-browser": "3.29.0", "@aws-sdk/util-base64-node": "3.29.0", "@aws-sdk/util-body-length-browser": "3.29.0", "@aws-sdk/util-body-length-node": "3.29.0", "@aws-sdk/util-user-agent-browser": "3.29.0", "@aws-sdk/util-user-agent-node": "3.29.0", "@aws-sdk/util-utf8-browser": "3.29.0", "@aws-sdk/util-utf8-node": "3.29.0", "@aws-sdk/util-waiter": "3.29.0", "@aws-sdk/xml-builder": "3.29.0", entities: "2.2.0", "fast-xml-parser": "3.19.0", tslib: "^2.3.0" }; var devDependencies$2 = { "@aws-sdk/client-documentation-generator": "3.29.0", "@types/chai": "^4.2.11", "@types/mocha": "^8.0.4", "@types/node": "^12.7.5", "downlevel-dts": "0.7.0", jest: "^26.1.0", rimraf: "^3.0.0", "ts-jest": "^26.4.1", typedoc: "^0.19.2", typescript: "~4.4.2" }; var engines$2 = { node: ">=10.0.0" }; var typesVersions$2 = { "<4.0": { "dist/types/*": [ "dist/types/ts3.4/*" ] } }; var author$2 = { name: "AWS SDK for JavaScript Team", url: "https://aws.amazon.com/javascript/" }; var license$2 = "Apache-2.0"; var homepage$2 = "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-s3"; var repository$2 = { type: "git", url: "https://github.com/aws/aws-sdk-js-v3.git", directory: "clients/client-s3" }; var packageInfo$2 = { name: name$2, description: description$2, version: version$2, scripts: scripts$2, main: main$2, types: types$2, module: module$3, browser: browser$2, "react-native": { "./runtimeConfig": "./runtimeConfig.native" }, sideEffects: sideEffects$2, dependencies: dependencies$2, devDependencies: devDependencies$2, engines: engines$2, typesVersions: typesVersions$2, author: author$2, license: license$2, homepage: homepage$2, repository: repository$2 }; var name$1 = "@aws-sdk/client-sts"; var description$1 = "AWS SDK for JavaScript Sts Client for Node.js, Browser and React Native"; var version$1 = "3.30.0"; var scripts$1 = { clean: "yarn remove-definitions && yarn remove-dist && yarn remove-documentation", "build-documentation": "yarn remove-documentation && typedoc ./", "remove-definitions": "rimraf ./types", "remove-dist": "rimraf ./dist", "remove-documentation": "rimraf ./docs", test: "exit 0", "build:cjs": "tsc -p tsconfig.json", "build:es": "tsc -p tsconfig.es.json", build: "yarn build:cjs && yarn build:es", "downlevel-dts": "downlevel-dts dist/types dist/types/ts3.4" }; var main$1 = "./dist/cjs/index.js"; var types$1 = "./dist/types/index.d.ts"; var module$2 = "./dist/es/index.js"; var browser$1 = { "./runtimeConfig": "./runtimeConfig.browser" }; var sideEffects$1 = false; var dependencies$1 = { "@aws-crypto/sha256-browser": "^1.0.0", "@aws-crypto/sha256-js": "^1.0.0", "@aws-sdk/config-resolver": "3.30.0", "@aws-sdk/credential-provider-node": "3.30.0", "@aws-sdk/fetch-http-handler": "3.29.0", "@aws-sdk/hash-node": "3.29.0", "@aws-sdk/invalid-dependency": "3.29.0", "@aws-sdk/middleware-content-length": "3.29.0", "@aws-sdk/middleware-host-header": "3.29.0", "@aws-sdk/middleware-logger": "3.29.0", "@aws-sdk/middleware-retry": "3.29.0", "@aws-sdk/middleware-sdk-sts": "3.30.0", "@aws-sdk/middleware-serde": "3.29.0", "@aws-sdk/middleware-signing": "3.30.0", "@aws-sdk/middleware-stack": "3.29.0", "@aws-sdk/middleware-user-agent": "3.29.0", "@aws-sdk/node-config-provider": "3.29.0", "@aws-sdk/node-http-handler": "3.29.0", "@aws-sdk/protocol-http": "3.29.0", "@aws-sdk/smithy-client": "3.30.0", "@aws-sdk/types": "3.29.0", "@aws-sdk/url-parser": "3.29.0", "@aws-sdk/util-base64-browser": "3.29.0", "@aws-sdk/util-base64-node": "3.29.0", "@aws-sdk/util-body-length-browser": "3.29.0", "@aws-sdk/util-body-length-node": "3.29.0", "@aws-sdk/util-user-agent-browser": "3.29.0", "@aws-sdk/util-user-agent-node": "3.29.0", "@aws-sdk/util-utf8-browser": "3.29.0", "@aws-sdk/util-utf8-node": "3.29.0", entities: "2.2.0", "fast-xml-parser": "3.19.0", tslib: "^2.3.0" }; var devDependencies$1 = { "@aws-sdk/client-documentation-generator": "3.29.0", "@types/node": "^12.7.5", "downlevel-dts": "0.7.0", jest: "^26.1.0", rimraf: "^3.0.0", "ts-jest": "^26.4.1", typedoc: "^0.19.2", typescript: "~4.4.2" }; var engines$1 = { node: ">=10.0.0" }; var typesVersions$1 = { "<4.0": { "dist/types/*": [ "dist/types/ts3.4/*" ] } }; var author$1 = { name: "AWS SDK for JavaScript Team", url: "https://aws.amazon.com/javascript/" }; var license$1 = "Apache-2.0"; var homepage$1 = "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sts"; var repository$1 = { type: "git", url: "https://github.com/aws/aws-sdk-js-v3.git", directory: "clients/client-sts" }; var packageInfo$1 = { name: name$1, description: description$1, version: version$1, scripts: scripts$1, main: main$1, types: types$1, module: module$2, browser: browser$1, "react-native": { "./runtimeConfig": "./runtimeConfig.native" }, sideEffects: sideEffects$1, dependencies: dependencies$1, devDependencies: devDependencies$1, engines: engines$1, typesVersions: typesVersions$1, author: author$1, license: license$1, homepage: homepage$1, repository: repository$1 }; var AssumedRoleUser; (function (AssumedRoleUser) { /** * @internal */ AssumedRoleUser.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(AssumedRoleUser || (AssumedRoleUser = {})); var PolicyDescriptorType; (function (PolicyDescriptorType) { /** * @internal */ PolicyDescriptorType.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(PolicyDescriptorType || (PolicyDescriptorType = {})); var Tag; (function (Tag) { /** * @internal */ Tag.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(Tag || (Tag = {})); var AssumeRoleRequest; (function (AssumeRoleRequest) { /** * @internal */ AssumeRoleRequest.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(AssumeRoleRequest || (AssumeRoleRequest = {})); var Credentials; (function (Credentials) { /** * @internal */ Credentials.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(Credentials || (Credentials = {})); var AssumeRoleResponse; (function (AssumeRoleResponse) { /** * @internal */ AssumeRoleResponse.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(AssumeRoleResponse || (AssumeRoleResponse = {})); var ExpiredTokenException; (function (ExpiredTokenException) { /** * @internal */ ExpiredTokenException.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(ExpiredTokenException || (ExpiredTokenException = {})); var MalformedPolicyDocumentException; (function (MalformedPolicyDocumentException) { /** * @internal */ MalformedPolicyDocumentException.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(MalformedPolicyDocumentException || (MalformedPolicyDocumentException = {})); var PackedPolicyTooLargeException; (function (PackedPolicyTooLargeException) { /** * @internal */ PackedPolicyTooLargeException.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(PackedPolicyTooLargeException || (PackedPolicyTooLargeException = {})); var RegionDisabledException; (function (RegionDisabledException) { /** * @internal */ RegionDisabledException.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(RegionDisabledException || (RegionDisabledException = {})); var AssumeRoleWithSAMLRequest; (function (AssumeRoleWithSAMLRequest) { /** * @internal */ AssumeRoleWithSAMLRequest.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(AssumeRoleWithSAMLRequest || (AssumeRoleWithSAMLRequest = {})); var AssumeRoleWithSAMLResponse; (function (AssumeRoleWithSAMLResponse) { /** * @internal */ AssumeRoleWithSAMLResponse.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(AssumeRoleWithSAMLResponse || (AssumeRoleWithSAMLResponse = {})); var IDPRejectedClaimException; (function (IDPRejectedClaimException) { /** * @internal */ IDPRejectedClaimException.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(IDPRejectedClaimException || (IDPRejectedClaimException = {})); var InvalidIdentityTokenException; (function (InvalidIdentityTokenException) { /** * @internal */ InvalidIdentityTokenException.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(InvalidIdentityTokenException || (InvalidIdentityTokenException = {})); var AssumeRoleWithWebIdentityRequest; (function (AssumeRoleWithWebIdentityRequest) { /** * @internal */ AssumeRoleWithWebIdentityRequest.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(AssumeRoleWithWebIdentityRequest || (AssumeRoleWithWebIdentityRequest = {})); var AssumeRoleWithWebIdentityResponse; (function (AssumeRoleWithWebIdentityResponse) { /** * @internal */ AssumeRoleWithWebIdentityResponse.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(AssumeRoleWithWebIdentityResponse || (AssumeRoleWithWebIdentityResponse = {})); var IDPCommunicationErrorException; (function (IDPCommunicationErrorException) { /** * @internal */ IDPCommunicationErrorException.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(IDPCommunicationErrorException || (IDPCommunicationErrorException = {})); var DecodeAuthorizationMessageRequest; (function (DecodeAuthorizationMessageRequest) { /** * @internal */ DecodeAuthorizationMessageRequest.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(DecodeAuthorizationMessageRequest || (DecodeAuthorizationMessageRequest = {})); var DecodeAuthorizationMessageResponse; (function (DecodeAuthorizationMessageResponse) { /** * @internal */ DecodeAuthorizationMessageResponse.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(DecodeAuthorizationMessageResponse || (DecodeAuthorizationMessageResponse = {})); var InvalidAuthorizationMessageException; (function (InvalidAuthorizationMessageException) { /** * @internal */ InvalidAuthorizationMessageException.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(InvalidAuthorizationMessageException || (InvalidAuthorizationMessageException = {})); var GetAccessKeyInfoRequest; (function (GetAccessKeyInfoRequest) { /** * @internal */ GetAccessKeyInfoRequest.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(GetAccessKeyInfoRequest || (GetAccessKeyInfoRequest = {})); var GetAccessKeyInfoResponse; (function (GetAccessKeyInfoResponse) { /** * @internal */ GetAccessKeyInfoResponse.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(GetAccessKeyInfoResponse || (GetAccessKeyInfoResponse = {})); var GetCallerIdentityRequest; (function (GetCallerIdentityRequest) { /** * @internal */ GetCallerIdentityRequest.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(GetCallerIdentityRequest || (GetCallerIdentityRequest = {})); var GetCallerIdentityResponse; (function (GetCallerIdentityResponse) { /** * @internal */ GetCallerIdentityResponse.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(GetCallerIdentityResponse || (GetCallerIdentityResponse = {})); var GetFederationTokenRequest; (function (GetFederationTokenRequest) { /** * @internal */ GetFederationTokenRequest.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(GetFederationTokenRequest || (GetFederationTokenRequest = {})); var FederatedUser; (function (FederatedUser) { /** * @internal */ FederatedUser.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(FederatedUser || (FederatedUser = {})); var GetFederationTokenResponse; (function (GetFederationTokenResponse) { /** * @internal */ GetFederationTokenResponse.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(GetFederationTokenResponse || (GetFederationTokenResponse = {})); var GetSessionTokenRequest; (function (GetSessionTokenRequest) { /** * @internal */ GetSessionTokenRequest.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(GetSessionTokenRequest || (GetSessionTokenRequest = {})); var GetSessionTokenResponse; (function (GetSessionTokenResponse) { /** * @internal */ GetSessionTokenResponse.filterSensitiveLog = function (obj) { return (index.__assign({}, obj)); }; })(GetSessionTokenResponse || (GetSessionTokenResponse = {})); // Stores whether the warning was already emitted. var warningEmitted = false; /** * Emits warning if the provided Node.js version string is pending deprecation. * * @param {string} version - The Node.js version string. */ var emitWarningIfUnsupportedVersion = function (version) { if (version && !warningEmitted && parseInt(version.substring(1, version.indexOf("."))) < 12) { warningEmitted = true; process.emitWarning("The AWS SDK for JavaScript (v3) will\n" + ("no longer support Node.js " + version + " as of January 1, 2022.\n") + "To continue receiving updates to AWS services, bug fixes, and security\n" + "updates please upgrade to Node.js 12.x or later.\n\n" + "More information can be found at: https://a.co/1l6FLnu", "NodeDeprecationWarning"); } }; var serializeAws_queryAssumeRoleCommand = function (input, context) { return index.__awaiter(void 0, void 0, void 0, function () { var headers, body; return index.__generator(this, function (_a) { headers = { "content-type": "application/x-www-form-urlencoded", }; body = buildFormUrlencodedString(index.__assign(index.__assign({}, serializeAws_queryAssumeRoleRequest(input, context)), { Action: "AssumeRole", Version: "2011-06-15" })); return [2 /*return*/, buildHttpRpcRequest(context, headers, "/", undefined, body)]; }); }); }; var serializeAws_queryAssumeRoleWithWebIdentityCommand = function (input, context) { return index.__awaiter(void 0, void 0, void 0, function () { var headers, body; return index.__generator(this, function (_a) { headers = { "content-type": "application/x-www-form-urlencoded", }; body = buildFormUrlencodedString(index.__assign(index.__assign({}, serializeAws_queryAssumeRoleWithWebIdentityRequest(input, context)), { Action: "AssumeRoleWithWebIdentity", Version: "2011-06-15" })); return [2 /*return*/, buildHttpRpcRequest(context, headers, "/", undefined, body)]; }); }); }; var deserializeAws_queryAssumeRoleCommand = function (output, context) { return index.__awaiter(void 0, void 0, void 0, function () { var data, contents, response; return index.__generator(this, function (_a) { switch (_a.label) { case 0: if (output.statusCode >= 300) { return [2 /*return*/, deserializeAws_queryAssumeRoleCommandError(output, context)]; } return [4 /*yield*/, parseBody$1(output.body, context)]; case 1: data = _a.sent(); contents = {}; contents = deserializeAws_queryAssumeRoleResponse(data.AssumeRoleResult, context); response = index.__assign({ $metadata: deserializeMetadata$1(output) }, contents); return [2 /*return*/, Promise.resolve(response)]; } }); }); }; var deserializeAws_queryAssumeRoleCommandError = function (output, context) { return index.__awaiter(void 0, void 0, void 0, function () { var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, _f, parsedBody, message; var _g; return index.__generator(this, function (_h) { switch (_h.label) { case 0: _a = [index.__assign({}, output)]; _g = {}; return [4 /*yield*/, parseBody$1(output.body, context)]; case 1: parsedOutput = index.__assign.apply(void 0, _a.concat([(_g.body = _h.sent(), _g)])); errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); _b = errorCode; switch (_b) { case "ExpiredTokenException": return [3 /*break*/, 2]; case "com.amazonaws.sts#ExpiredTokenException": return [3 /*break*/, 2]; case "MalformedPolicyDocumentException": return [3 /*break*/, 4]; case "com.amazonaws.sts#MalformedPolicyDocumentException": return [3 /*break*/, 4]; case "PackedPolicyTooLargeException": return [3 /*break*/, 6]; case "com.amazonaws.sts#PackedPolicyTooLargeException": return [3 /*break*/, 6]; case "RegionDisabledException": return [3 /*break*/, 8]; case "com.amazonaws.sts#RegionDisabledException": return [3 /*break*/, 8]; } return [3 /*break*/, 10]; case 2: _c = [{}]; return [4 /*yield*/, deserializeAws_queryExpiredTokenExceptionResponse(parsedOutput, context)]; case 3: response = index.__assign.apply(void 0, [index.__assign.apply(void 0, _c.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata$1(output) }]); return [3 /*break*/, 11]; case 4: _d = [{}]; return [4 /*yield*/, deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)]; case 5: response = index.__assign.apply(void 0, [index.__assign.apply(void 0, _d.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata$1(output) }]); return [3 /*break*/, 11]; case 6: _e = [{}]; return [4 /*yield*/, deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context)]; case 7: response = index.__assign.apply(void 0, [index.__assign.apply(void 0, _e.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata$1(output) }]); return [3 /*break*/, 11]; case 8: _f = [{}]; return [4 /*yield*/, deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)]; case 9: response = index.__assign.apply(void 0, [index.__assign.apply(void 0, _f.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata$1(output) }]); return [3 /*break*/, 11]; case 10: parsedBody = parsedOutput.body; errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; response = index.__assign(index.__assign({}, parsedBody.Error), { name: "" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: "client", $metadata: deserializeMetadata$1(output) }); _h.label = 11; case 11: message = response.message || response.Message || errorCode; response.message = message; delete response.Message; return [2 /*return*/, Promise.reject(Object.assign(new Error(message), response))]; } }); }); }; var deserializeAws_queryAssumeRoleWithWebIdentityCommand = function (output, context) { return index.__awaiter(void 0, void 0, void 0, function () { var data, contents, response; return index.__generator(this, function (_a) { switch (_a.label) { case 0: if (output.statusCode >= 300) { return [2 /*return*/, deserializeAws_queryAssumeRoleWithWebIdentityCommandError(output, context)]; } return [4 /*yield*/, parseBody$1(output.body, context)]; case 1: data = _a.sent(); contents = {}; contents = deserializeAws_queryAssumeRoleWithWebIdentityResponse(data.AssumeRoleWithWebIdentityResult, context); response = index.__assign({ $metadata: deserializeMetadata$1(output) }, contents); return [2 /*return*/, Promise.resolve(response)]; } }); }); }; var deserializeAws_queryAssumeRoleWithWebIdentityCommandError = function (output, context) { return index.__awaiter(void 0, void 0, void 0, function () { var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, _f, _g, _h, _j, parsedBody, message; var _k; return index.__generator(this, function (_l) { switch (_l.label) { case 0: _a = [index.__assign({}, output)]; _k = {}; return [4 /*yield*/, parseBody$1(output.body, context)]; case 1: parsedOutput = index.__assign.apply(void 0, _a.concat([(_k.body = _l.sent(), _k)])); errorCode = "UnknownError"; errorCode = loadQueryErrorCode(output, parsedOutput.body); _b = errorCode; switch (_b) { case "ExpiredTokenException": return [3 /*break*/, 2]; case "com.amazonaws.sts#ExpiredTokenException": return [3 /*break*/, 2]; case "IDPCommunicationErrorException": return [3 /*break*/, 4]; case "com.amazonaws.sts#IDPCommunicationErrorException": return [3 /*break*/, 4]; case "IDPRejectedClaimException": return [3 /*break*/, 6]; case "com.amazonaws.sts#IDPRejectedClaimException": return [3 /*break*/, 6]; case "InvalidIdentityTokenException": return [3 /*break*/, 8]; case "com.amazonaws.sts#InvalidIdentityTokenException": return [3 /*break*/, 8]; case "MalformedPolicyDocumentException": return [3 /*break*/, 10]; case "com.amazonaws.sts#MalformedPolicyDocumentException": return [3 /*break*/, 10]; case "PackedPolicyTooLargeException": return [3 /*break*/, 12]; case "com.amazonaws.sts#PackedPolicyTooLargeException": return [3 /*break*/, 12]; case "RegionDisabledException": return [3 /*break*/, 14]; case "com.amazonaws.sts#RegionDisabledException": return [3 /*break*/, 14]; } return [3 /*break*/, 16]; case 2: _c = [{}]; return [4 /*yield*/, deserializeAws_queryExpiredTokenExceptionResponse(parsedOutput, context)]; case 3: response = index.__assign.apply(void 0, [index.__assign.apply(void 0, _c.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata$1(output) }]); return [3 /*break*/, 17]; case 4: _d = [{}]; return [4 /*yield*/, deserializeAws_queryIDPCommunicationErrorExceptionResponse(parsedOutput, context)]; case 5: response = index.__assign.apply(void 0, [index.__assign.apply(void 0, _d.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata$1(output) }]); return [3 /*break*/, 17]; case 6: _e = [{}]; return [4 /*yield*/, deserializeAws_queryIDPRejectedClaimExceptionResponse(parsedOutput, context)]; case 7: response = index.__assign.apply(void 0, [index.__assign.apply(void 0, _e.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata$1(output) }]); return [3 /*break*/, 17]; case 8: _f = [{}]; return [4 /*yield*/, deserializeAws_queryInvalidIdentityTokenExceptionResponse(parsedOutput, context)]; case 9: response = index.__assign.apply(void 0, [index.__assign.apply(void 0, _f.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata$1(output) }]); return [3 /*break*/, 17]; case 10: _g = [{}]; return [4 /*yield*/, deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)]; case 11: response = index.__assign.apply(void 0, [index.__assign.apply(void 0, _g.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata$1(output) }]); return [3 /*break*/, 17]; case 12: _h = [{}]; return [4 /*yield*/, deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context)]; case 13: response = index.__assign.apply(void 0, [index.__assign.apply(void 0, _h.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata$1(output) }]); return [3 /*break*/, 17]; case 14: _j = [{}]; return [4 /*yield*/, deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)]; case 15: response = index.__assign.apply(void 0, [index.__assign.apply(void 0, _j.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata$1(output) }]); return [3 /*break*/, 17]; case 16: parsedBody = parsedOutput.body; errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode; response = index.__assign(index.__assign({}, parsedBody.Error), { name: "" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: "client", $metadata: deserializeMetadata$1(output) }); _l.label = 17; case 17: message = response.message || response.Message || errorCode; response.message = message; delete response.Message; return [2 /*return*/, Promise.reject(Object.assign(new Error(message), response))]; } }); }); }; var deserializeAws_queryExpiredTokenExceptionResponse = function (parsedOutput, context) { return index.__awaiter(void 0, void 0, void 0, function () { var body, deserialized, contents; return index.__generator(this, function (_a) { body = parsedOutput.body; deserialized = deserializeAws_queryExpiredTokenException(body.Error, context); contents = index.__assign({ name: "ExpiredTokenException", $fault: "client", $metadata: deserializeMetadata$1(parsedOutput) }, deserialized); return [2 /*return*/, contents]; }); }); }; var deserializeAws_queryIDPCommunicationErrorExceptionResponse = function (parsedOutput, context) { return index.__awaiter(void 0, void 0, void 0, function () { var body, deserialized, contents; return index.__generator(this, function (_a) { body = parsedOutput.body; deserialized = deserializeAws_queryIDPCommunicationErrorException(body.Error, context); contents = index.__assign({ name: "IDPCommunicationErrorException", $fault: "client", $metadata: deserializeMetadata$1(parsedOutput) }, deserialized); return [2 /*return*/, contents]; }); }); }; var deserializeAws_queryIDPRejectedClaimExceptionResponse = function (parsedOutput, context) { return index.__awaiter(void 0, void 0, void 0, function () { var body, deserialized, contents; return index.__generator(this, function (_a) { body = parsedOutput.body; deserialized = deserializeAws_queryIDPRejectedClaimException(body.Error, context); contents = index.__assign({ name: "IDPRejectedClaimException", $fault: "client", $metadata: deserializeMetadata$1(parsedOutput) }, deserialized); return [2 /*return*/, contents]; }); }); }; var deserializeAws_queryInvalidIdentityTokenExceptionResponse = function (parsedOutput, context) { return index.__awaiter(void 0, void 0, void 0, function () { var body, deserialized, contents; return index.__generator(this, function (_a) { body = parsedOutput.body; deserialized = deserializeAws_queryInvalidIdentityTokenException(body.Error, context); contents = index.__assign({ name: "InvalidIdentityTokenException", $fault: "client", $metadata: deserializeMetadata$1(parsedOutput) }, deserialized); return [2 /*return*/, contents]; }); }); }; var deserializeAws_queryMalformedPolicyDocumentExceptionResponse = function (parsedOutput, context) { return index.__awaiter(void 0, void 0, void 0, function () { var body, deserialized, contents; return index.__generator(this, function (_a) { body = parsedOutput.body; deserialized = deserializeAws_queryMalformedPolicyDocumentException(body.Error, context); contents = index.__assign({ name: "MalformedPolicyDocumentException", $fault: "client", $metadata: deserializeMetadata$1(parsedOutput) }, deserialized); return [2 /*return*/, contents]; }); }); }; var deserializeAws_queryPackedPolicyTooLargeExceptionResponse = function (parsedOutput, context) { return index.__awaiter(void 0, void 0, void 0, function () { var body, deserialized, contents; return index.__generator(this, function (_a) { body = parsedOutput.body; deserialized = deserializeAws_queryPackedPolicyTooLargeException(body.Error, context); contents = index.__assign({ name: "PackedPolicyTooLargeException", $fault: "client", $metadata: deserializeMetadata$1(parsedOutput) }, deserialized); return [2 /*return*/, contents]; }); }); }; var deserializeAws_queryRegionDisabledExceptionResponse = function (parsedOutput, context) { return index.__awaiter(void 0, void 0, void 0, function () { var body, deserialized, contents; return index.__generator(this, function (_a) { body = parsedOutput.body; deserialized = deserializeAws_queryRegionDisabledException(body.Error, context); contents = index.__assign({ name: "RegionDisabledException", $fault: "client", $metadata: deserializeMetadata$1(parsedOutput) }, deserialized); return [2 /*return*/, contents]; }); }); }; var serializeAws_queryAssumeRoleRequest = function (input, context) { var entries = {}; if (input.RoleArn !== undefined && input.RoleArn !== null) { entries["RoleArn"] = input.RoleArn; } if (input.RoleSessionName !== undefined && input.RoleSessionName !== null) { entries["RoleSessionName"] = input.RoleSessionName; } if (input.PolicyArns !== undefined && input.PolicyArns !== null) { var memberEntries = serializeAws_querypolicyDescriptorListType(input.PolicyArns, context); Object.entries(memberEntries).forEach(function (_a) { var _b = index.__read(_a, 2), key = _b[0], value = _b[1]; var loc = "PolicyArns." + key; entries[loc] = value; }); } if (input.Policy !== undefined && input.Policy !== null) { entries["Policy"] = input.Policy; } if (input.DurationSeconds !== undefined && input.DurationSeconds !== null) { entries["DurationSeconds"] = input.DurationSeconds; } if (input.Tags !== undefined && input.Tags !== null) { var memberEntries = serializeAws_querytagListType(input.Tags, context); Object.entries(memberEntries).forEach(function (_a) { var _b = index.__read(_a, 2), key = _b[0], value = _b[1]; var loc = "Tags." + key; entries[loc] = value; }); } if (input.TransitiveTagKeys !== undefined && input.TransitiveTagKeys !== null) { var memberEntries = serializeAws_querytagKeyListType(input.TransitiveTagKeys, context); Object.entries(memberEntries).forEach(function (_a) { var _b = index.__read(_a, 2), key = _b[0], value = _b[1]; var loc = "TransitiveTagKeys." + key; entries[loc] = value; }); } if (input.ExternalId !== undefined && input.ExternalId !== null) { entries["ExternalId"] = input.ExternalId; } if (input.SerialNumber !== undefined && input.SerialNumber !== null) { entries["SerialNumber"] = input.SerialNumber; } if (input.TokenCode !== undefined && input.TokenCode !== null) { entries["TokenCode"] = input.TokenCode; } if (input.SourceIdentity !== undefined && input.SourceIdentity !== null) { entries["SourceIdentity"] = input.SourceIdentity; } return entries; }; var serializeAws_queryAssumeRoleWithWebIdentityRequest = function (input, context) { var entries = {}; if (input.RoleArn !== undefined && input.RoleArn !== null) { entries["RoleArn"] = input.RoleArn; } if (input.RoleSessionName !== undefined && input.RoleSessionName !== null) { entries["RoleSessionName"] = input.RoleSessionName; } if (input.WebIdentityToken !== undefined && input.WebIdentityToken !== null) { entries["WebIdentityToken"] = input.WebIdentityToken; } if (input.ProviderId !== undefined && input.ProviderId !== null) { entries["ProviderId"] = input.ProviderId; } if (input.PolicyArns !== undefined && input.PolicyArns !== null) { var memberEntries = serializeAws_querypolicyDescriptorListType(input.PolicyArns, context); Object.entries(memberEntries).forEach(function (_a) { var _b = index.__read(_a, 2), key = _b[0], value = _b[1]; var loc = "PolicyArns." + key; entries[loc] = value; }); } if (input.Policy !== undefined && input.Policy !== null) { entries["Policy"] = input.Policy; } if (input.DurationSeconds !== undefined && input.DurationSeconds !== null) { entries["DurationSeconds"] = input.DurationSeconds; } return entries; }; var serializeAws_querypolicyDescriptorListType = function (input, context) { var e_1, _a; var entries = {}; var counter = 1; try { for (var input_1 = index.__values(input), input_1_1 = input_1.next(); !input_1_1.done; input_1_1 = input_1.next()) { var entry = input_1_1.value; if (entry === null) { continue; } var memberEntries = serializeAws_queryPolicyDescriptorType(entry, context); Object.entries(memberEntries).forEach(function (_a) { var _b = index.__read(_a, 2), key = _b[0], value = _b[1]; entries["member." + counter + "." + key] = value; }); counter++; } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (input_1_1 && !input_1_1.done && (_a = input_1.return)) _a.call(input_1); } finally { if (e_1) throw e_1.error; } } return entries; }; var serializeAws_queryPolicyDescriptorType = function (input, context) { var entries = {}; if (input.arn !== undefined && input.arn !== null) { entries["arn"] = input.arn; } return entries; }; var serializeAws_queryTag = function (input, context) { var entries = {}; if (input.Key !== undefined && input.Key !== null) { entries["Key"] = input.Key; } if (input.Value !== undefined && input.Value !== null) { entries["Value"] = input.Value; } return entries; }; var serializeAws_querytagKeyListType = function (input, context) { var e_2, _a; var entries = {}; var counter = 1; try { for (var input_2 = index.__values(input), input_2_1 = input_2.next(); !input_2_1.done; input_2_1 = input_2.next()) { var entry = input_2_1.value; if (entry === null) { continue; } entries["member." + counter] = entry; counter++; } } catch (e_2_1) { e_2 = { error: e_2_1 }; } finally { try { if (input_2_1 && !input_2_1.done && (_a = input_2.return)) _a.call(input_2); } finally { if (e_2) throw e_2.error; } } return entries; }; var serializeAws_querytagListType = function (input, context) { var e_3, _a; var entries = {}; var counter = 1; try { for (var input_3 = index.__values(input), input_3_1 = input_3.next(); !input_3_1.done; input_3_1 = input_3.next()) { var entry = input_3_1.value; if (entry === null) { continue; } var memberEntries = serializeAws_queryTag(entry, context); Object.entries(memberEntries).forEach(function (_a) { var _b = index.__read(_a, 2), key = _b[0], value = _b[1]; entries["member." + counter + "." + key] = value; }); counter++; } } catch (e_3_1) { e_3 = { error: e_3_1 }; } finally { try { if (input_3_1 && !input_3_1.done && (_a = input_3.return)) _a.call(input_3); } finally { if (e_3) throw e_3.error; } } return entries; }; var deserializeAws_queryAssumedRoleUser = function (output, context) { var contents = { AssumedRoleId: undefined, Arn: undefined, }; if (output["AssumedRoleId"] !== undefined) { contents.AssumedRoleId = index.expectString(output["AssumedRoleId"]); } if (output["Arn"] !== undefined) { contents.Arn = index.expectString(output["Arn"]); } return contents; }; var deserializeAws_queryAssumeRoleResponse = function (output, context) { var contents = { Credentials: undefined, AssumedRoleUser: undefined, PackedPolicySize: undefined, SourceIdentity: undefined, }; if (output["Credentials"] !== undefined) { contents.Credentials = deserializeAws_queryCredentials(output["Credentials"], context); } if (output["AssumedRoleUser"] !== undefined) { contents.AssumedRoleUser = deserializeAws_queryAssumedRoleUser(output["AssumedRoleUser"]); } if (output["PackedPolicySize"] !== undefined) { contents.PackedPolicySize = index.strictParseInt32(output["PackedPolicySize"]); } if (output["SourceIdentity"] !== undefined) { contents.SourceIdentity = index.expectString(output["SourceIdentity"]); } return contents; }; var deserializeAws_queryAssumeRoleWithWebIdentityResponse = function (output, context) { var contents = { Credentials: undefined, SubjectFromWebIdentityToken: undefined, AssumedRoleUser: undefined, PackedPolicySize: undefined, Provider: undefined, Audience: undefined, SourceIdentity: undefined, }; if (output["Credentials"] !== undefined) { contents.Credentials = deserializeAws_queryCredentials(output["Credentials"], context); } if (output["SubjectFromWebIdentityToken"] !== undefined) { contents.SubjectFromWebIdentityToken = index.expectString(output["SubjectFromWebIdentityToken"]); } if (output["AssumedRoleUser"] !== undefined) { contents.AssumedRoleUser = deserializeAws_queryAssumedRoleUser(output["AssumedRoleUser"]); } if (output["PackedPolicySize"] !== undefined) { contents.PackedPolicySize = index.strictParseInt32(output["PackedPolicySize"]); } if (output["Provider"] !== undefined) { contents.Provider = index.expectString(output["Provider"]); } if (output["Audience"] !== undefined) { contents.Audience = index.expectString(output["Audience"]); } if (output["SourceIdentity"] !== undefined) { contents.SourceIdentity = index.expectString(output["SourceIdentity"]); } return contents; }; var deserializeAws_queryCredentials = function (output, context) { var contents = { AccessKeyId: undefined, SecretAccessKey: undefined, SessionToken: undefined, Expiration: undefined, }; if (output["AccessKeyId"] !== undefined) { contents.AccessKeyId = index.expectString(output["AccessKeyId"]); } if (output["SecretAccessKey"] !== undefined) { contents.SecretAccessKey = index.expectString(output["SecretAccessKey"]); } if (output["SessionToken"] !== undefined) { contents.SessionToken = index.expectString(output["SessionToken"]); } if (output["Expiration"] !== undefined) { contents.Expiration = new Date(output["Expiration"]); } return contents; }; var deserializeAws_queryExpiredTokenException = function (output, context) { var contents = { message: undefined, }; if (output["message"] !== undefined) { contents.message = index.expectString(output["message"]); } return contents; }; var deserializeAws_queryIDPCommunicationErrorException = function (output, context) { var contents = { message: undefined, }; if (output["message"] !== undefined) { contents.message = index.expectString(output["message"]); } return contents; }; var deserializeAws_queryIDPRejectedClaimException = function (output, context) { var contents = { message: undefined, }; if (output["message"] !== undefined) { contents.message = index.expectString(output["message"]); } return contents; }; var deserializeAws_queryInvalidIdentityTokenException = function (output, context) { var contents = { message: undefined, }; if (output["message"] !== undefined) { contents.message = index.expectString(output["message"]); } return contents; }; var deserializeAws_queryMalformedPolicyDocumentException = function (output, context) { var contents = { message: undefined, }; if (output["message"] !== undefined) { contents.message = index.expectString(output["message"]); } return contents; }; var deserializeAws_queryPackedPolicyTooLargeException = function (output, context) { var contents = { message: undefined, }; if (output["message"] !== undefined) { contents.message = index.expectString(output["message"]); } return contents; }; var deserializeAws_queryRegionDisabledException = function (output, context) { var contents = { message: undefined, }; if (output["message"] !== undefined) { contents.message = index.expectString(output["message"]); } return contents; }; var deserializeMetadata$1 = function (output) { var _a; return ({ httpStatusCode: output.statusCode, requestId: (_a = output.headers["x-amzn-requestid"]) !== null && _a !== void 0 ? _a : output.headers["x-amzn-request-id"], extendedRequestId: output.headers["x-amz-id-2"], cfId: output.headers["x-amz-cf-id"], }); }; // Collect low-level response body stream to Uint8Array. var collectBody$1 = function (streamBody, context) { if (streamBody === void 0) { streamBody = new Uint8Array(); } if (streamBody instanceof Uint8Array) { return Promise.resolve(streamBody); } return context.streamCollector(streamBody) || Promise.resolve(new Uint8Array()); }; // Encode Uint8Array data into string with utf-8. var collectBodyString$1 = function (streamBody, context) { return collectBody$1(streamBody, context).then(function (body) { return context.utf8Encoder(body); }); }; var buildHttpRpcRequest = function (context, headers, path, resolvedHostname, body) { return index.__awaiter(void 0, void 0, void 0, function () { var _a, hostname, _b, protocol, port, basePath, contents; return index.__generator(this, function (_c) { switch (_c.label) { case 0: return [4 /*yield*/, context.endpoint()]; case 1: _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? "https" : _b, port = _a.port, basePath = _a.path; contents = { protocol: protocol, hostname: hostname, port: port, method: "POST", path: basePath.endsWith("/") ? basePath.slice(0, -1) + path : basePath + path, headers: headers, }; if (resolvedHostname !== undefined) { contents.hostname = resolvedHostname; } if (body !== undefined) { contents.body = body; } return [2 /*return*/, new index.HttpRequest(contents)]; } }); }); }; var parseBody$1 = function (streamBody, context) { return collectBodyString$1(streamBody, context).then(function (encoded) { if (encoded.length) { var parsedObj = index.parser.parse(encoded, { attributeNamePrefix: "", ignoreAttributes: false, parseNodeValue: false, trimValues: false, tagValueProcessor: function (val) { return (val.trim() === "" && val.includes("\n") ? "" : index.lib.decodeHTML(val)); }, }); var textNodeName = "#text"; var key = Object.keys(parsedObj)[0]; var parsedObjToReturn = parsedObj[key]; if (parsedObjToReturn[textNodeName]) { parsedObjToReturn[key] = parsedObjToReturn[textNodeName]; delete parsedObjToReturn[textNodeName]; } return index.getValueFromTextNode(parsedObjToReturn); } return {}; }); }; var buildFormUrlencodedString = function (formEntries) { return Object.entries(formEntries) .map(function (_a) { var _b = index.__read(_a, 2), key = _b[0], value = _b[1]; return index.extendedEncodeURIComponent(key) + "=" + index.extendedEncodeURIComponent(value); }) .join("&"); }; var loadQueryErrorCode = function (output, data) { if (data.Error.Code !== undefined) { return data.Error.Code; } if (output.statusCode == 404) { return "NotFound"; } return ""; }; /** * An error representing a failure of an individual credential provider. * * This error class has special meaning to the {@link chain} method. If a * provider in the chain is rejected with an error, the chain will only proceed * to the next provider if the value of the `tryNextLink` property on the error * is truthy. This allows individual providers to halt the chain and also * ensures the chain will stop