@stacksjs/buddy 0.62.0 → 0.63.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-2748xrng.js +9 -0
- package/dist/chunk-2748xrng.js.map +13 -0
- package/dist/chunk-3wdxw25z.js +5 -0
- package/dist/chunk-3wdxw25z.js.map +22 -0
- package/dist/chunk-9ttt4yty.js +4 -0
- package/dist/chunk-9ttt4yty.js.map +15 -0
- package/dist/chunk-dz31tp6c.js +5 -0
- package/dist/chunk-dz31tp6c.js.map +46 -0
- package/dist/chunk-fwrsbrgr.js +6 -0
- package/dist/chunk-fwrsbrgr.js.map +56 -0
- package/dist/chunk-g0xhj6ac.js +5 -0
- package/dist/chunk-g0xhj6ac.js.map +20 -0
- package/dist/chunk-g8thtxy5.js +5 -0
- package/dist/chunk-g8thtxy5.js.map +32 -0
- package/dist/chunk-hk94zddp.js +5 -0
- package/dist/chunk-hk94zddp.js.map +16 -0
- package/dist/chunk-hmytd9bw.js +7 -0
- package/dist/chunk-hmytd9bw.js.map +59 -0
- package/dist/chunk-macwp29m.js +5 -0
- package/dist/chunk-macwp29m.js.map +11 -0
- package/dist/chunk-qvwfj0bg.js +5 -0
- package/dist/chunk-qvwfj0bg.js.map +26 -0
- package/dist/chunk-sn67bbgd.js +5 -0
- package/dist/chunk-sn67bbgd.js.map +17 -0
- package/dist/chunk-t53j9hjg.js +5 -0
- package/dist/chunk-t53j9hjg.js.map +23 -0
- package/dist/chunk-thgep359.js +21 -0
- package/dist/chunk-thgep359.js.map +170 -0
- package/dist/chunk-vff2axxn.js +5 -0
- package/dist/chunk-vff2axxn.js.map +12 -0
- package/dist/chunk-wmwqxvdd.js +5 -0
- package/dist/chunk-wmwqxvdd.js.map +9 -0
- package/dist/chunk-yevqw8gq.js +12 -0
- package/dist/chunk-yevqw8gq.js.map +11 -0
- package/dist/chunk-ypq6q9tr.js +4 -0
- package/dist/chunk-ypq6q9tr.js.map +23 -0
- package/dist/chunk-z9166d8b.js +5 -0
- package/dist/chunk-z9166d8b.js.map +10 -0
- package/dist/chunk-zkm6377r.js +5 -0
- package/dist/chunk-zkm6377r.js.map +10 -0
- package/dist/cli.js +3 -116
- package/dist/cli.js.map +10 -0
- package/dist/index.js +4 -75
- package/dist/index.js.map +9 -0
- package/dist/stacks +0 -0
- package/package.json +8 -46
- package/src/commands/cloud.ts +164 -10
- package/src/commands/configure.ts +2 -1
- package/src/commands/deploy.ts +55 -4
- package/src/commands/dev.ts +2 -2
- package/src/commands/make.ts +1 -2
- package/src/commands/migrate.ts +1 -1
- package/dist/chunk-970e033f764e29fc.js +0 -19
- package/dist/chunk-d489210ea37079cc.js +0 -2223
- package/dist/chunk-df5ec841ab2a0086.js +0 -2271
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../node_modules/@smithy/util-uri-escape/dist-cjs/index.js", "../../../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js", "../../../../../node_modules/@smithy/middleware-stack/dist-es/MiddlewareStack.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/client.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/command.js", "../../../../../node_modules/@smithy/protocol-http/dist-es/extensions/httpExtensionConfiguration.js", "../../../../../node_modules/@smithy/protocol-http/dist-es/Field.js", "../../../../../node_modules/@smithy/protocol-http/dist-es/httpRequest.js", "../../../../../node_modules/@smithy/protocol-http/dist-es/httpResponse.js", "../../../../../node_modules/@smithy/querystring-builder/dist-es/index.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/node-http-handler.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/constants.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/get-transformed-headers.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/set-connection-timeout.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/set-socket-keep-alive.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/set-socket-timeout.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/write-request-body.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/stream-collector/collector.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/stream-collector/index.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/constants.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/create-aggregated-client.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/exceptions.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/NoOpLogger.js", "../../../../../node_modules/@smithy/is-array-buffer/dist-es/index.js", "../../../../../node_modules/@smithy/util-buffer-from/dist-es/index.js", "../../../../../node_modules/@smithy/util-base64/dist-es/fromBase64.js", "../../../../../node_modules/@smithy/util-utf8/dist-es/fromUtf8.js", "../../../../../node_modules/@smithy/util-utf8/dist-es/toUint8Array.js", "../../../../../node_modules/@smithy/util-utf8/dist-es/toUtf8.js", "../../../../../node_modules/@smithy/util-base64/dist-es/toBase64.js", "../../../../../node_modules/@smithy/util-stream/dist-es/sdk-stream-mixin.js", "../../../../../node_modules/@smithy/fetch-http-handler/dist-es/stream-collector.js", "../../../../../node_modules/@smithy/util-stream/dist-es/sdk-stream-mixin.browser.js", "../../../../../node_modules/@smithy/util-stream/dist-es/stream-type-check.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/parse-utils.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/date-utils.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/default-error-handler.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/defaults-mode.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/emitWarningIfUnsupportedVersion.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/extensions/checksum.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/extensions/retry.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/extensions/defaultExtensionConfiguration.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/extended-encode-uri-component.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/get-array-if-single-item.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/lazy-json.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/object-mapping.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/serde-json.js"],
|
|
4
|
+
"sourcesContent": [
|
|
5
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n escapeUri: () => escapeUri,\n escapeUriPath: () => escapeUriPath\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/escape-uri.ts\nvar escapeUri = /* @__PURE__ */ __name((uri) => (\n // AWS percent-encodes some extra non-standard characters in a URI\n encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode)\n), \"escapeUri\");\nvar hexEncode = /* @__PURE__ */ __name((c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`, \"hexEncode\");\n\n// src/escape-uri-path.ts\nvar escapeUriPath = /* @__PURE__ */ __name((uri) => uri.split(\"/\").map(escapeUri).join(\"/\"), \"escapeUriPath\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n escapeUri,\n escapeUriPath\n});\n\n",
|
|
6
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n fromHex: () => fromHex,\n toHex: () => toHex\n});\nmodule.exports = __toCommonJS(src_exports);\nvar SHORT_TO_HEX = {};\nvar HEX_TO_SHORT = {};\nfor (let i = 0; i < 256; i++) {\n let encodedByte = i.toString(16).toLowerCase();\n if (encodedByte.length === 1) {\n encodedByte = `0${encodedByte}`;\n }\n SHORT_TO_HEX[i] = encodedByte;\n HEX_TO_SHORT[encodedByte] = i;\n}\nfunction fromHex(encoded) {\n if (encoded.length % 2 !== 0) {\n throw new Error(\"Hex encoded strings must have an even number length\");\n }\n const out = new Uint8Array(encoded.length / 2);\n for (let i = 0; i < encoded.length; i += 2) {\n const encodedByte = encoded.slice(i, i + 2).toLowerCase();\n if (encodedByte in HEX_TO_SHORT) {\n out[i / 2] = HEX_TO_SHORT[encodedByte];\n } else {\n throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);\n }\n }\n return out;\n}\n__name(fromHex, \"fromHex\");\nfunction toHex(bytes) {\n let out = \"\";\n for (let i = 0; i < bytes.byteLength; i++) {\n out += SHORT_TO_HEX[bytes[i]];\n }\n return out;\n}\n__name(toHex, \"toHex\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n fromHex,\n toHex\n});\n\n",
|
|
7
|
+
"const getAllAliases = (name, aliases) => {\n const _aliases = [];\n if (name) {\n _aliases.push(name);\n }\n if (aliases) {\n for (const alias of aliases) {\n _aliases.push(alias);\n }\n }\n return _aliases;\n};\nconst getMiddlewareNameWithAliases = (name, aliases) => {\n return `${name || \"anonymous\"}${aliases && aliases.length > 0 ? ` (a.k.a. ${aliases.join(\",\")})` : \"\"}`;\n};\nexport const constructStack = () => {\n let absoluteEntries = [];\n let relativeEntries = [];\n let identifyOnResolve = false;\n const entriesNameSet = new Set();\n const sort = (entries) => entries.sort((a, b) => stepWeights[b.step] - stepWeights[a.step] ||\n priorityWeights[b.priority || \"normal\"] - priorityWeights[a.priority || \"normal\"]);\n const removeByName = (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n const aliases = getAllAliases(entry.name, entry.aliases);\n if (aliases.includes(toRemove)) {\n isRemoved = true;\n for (const alias of aliases) {\n entriesNameSet.delete(alias);\n }\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n const removeByReference = (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n if (entry.middleware === toRemove) {\n isRemoved = true;\n for (const alias of getAllAliases(entry.name, entry.aliases)) {\n entriesNameSet.delete(alias);\n }\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n const cloneTo = (toStack) => {\n absoluteEntries.forEach((entry) => {\n toStack.add(entry.middleware, { ...entry });\n });\n relativeEntries.forEach((entry) => {\n toStack.addRelativeTo(entry.middleware, { ...entry });\n });\n toStack.identifyOnResolve?.(stack.identifyOnResolve());\n return toStack;\n };\n const expandRelativeMiddlewareList = (from) => {\n const expandedMiddlewareList = [];\n from.before.forEach((entry) => {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));\n }\n });\n expandedMiddlewareList.push(from);\n from.after.reverse().forEach((entry) => {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));\n }\n });\n return expandedMiddlewareList;\n };\n const getMiddlewareList = (debug = false) => {\n const normalizedAbsoluteEntries = [];\n const normalizedRelativeEntries = [];\n const normalizedEntriesNameMap = {};\n absoluteEntries.forEach((entry) => {\n const normalizedEntry = {\n ...entry,\n before: [],\n after: [],\n };\n for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {\n normalizedEntriesNameMap[alias] = normalizedEntry;\n }\n normalizedAbsoluteEntries.push(normalizedEntry);\n });\n relativeEntries.forEach((entry) => {\n const normalizedEntry = {\n ...entry,\n before: [],\n after: [],\n };\n for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {\n normalizedEntriesNameMap[alias] = normalizedEntry;\n }\n normalizedRelativeEntries.push(normalizedEntry);\n });\n normalizedRelativeEntries.forEach((entry) => {\n if (entry.toMiddleware) {\n const toMiddleware = normalizedEntriesNameMap[entry.toMiddleware];\n if (toMiddleware === undefined) {\n if (debug) {\n return;\n }\n throw new Error(`${entry.toMiddleware} is not found when adding ` +\n `${getMiddlewareNameWithAliases(entry.name, entry.aliases)} ` +\n `middleware ${entry.relation} ${entry.toMiddleware}`);\n }\n if (entry.relation === \"after\") {\n toMiddleware.after.push(entry);\n }\n if (entry.relation === \"before\") {\n toMiddleware.before.push(entry);\n }\n }\n });\n const mainChain = sort(normalizedAbsoluteEntries)\n .map(expandRelativeMiddlewareList)\n .reduce((wholeList, expandedMiddlewareList) => {\n wholeList.push(...expandedMiddlewareList);\n return wholeList;\n }, []);\n return mainChain;\n };\n const stack = {\n add: (middleware, options = {}) => {\n const { name, override, aliases: _aliases } = options;\n const entry = {\n step: \"initialize\",\n priority: \"normal\",\n middleware,\n ...options,\n };\n const aliases = getAllAliases(name, _aliases);\n if (aliases.length > 0) {\n if (aliases.some((alias) => entriesNameSet.has(alias))) {\n if (!override)\n throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);\n for (const alias of aliases) {\n const toOverrideIndex = absoluteEntries.findIndex((entry) => entry.name === alias || entry.aliases?.some((a) => a === alias));\n if (toOverrideIndex === -1) {\n continue;\n }\n const toOverride = absoluteEntries[toOverrideIndex];\n if (toOverride.step !== entry.step || entry.priority !== toOverride.priority) {\n throw new Error(`\"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}\" middleware with ` +\n `${toOverride.priority} priority in ${toOverride.step} step cannot ` +\n `be overridden by \"${getMiddlewareNameWithAliases(name, _aliases)}\" middleware with ` +\n `${entry.priority} priority in ${entry.step} step.`);\n }\n absoluteEntries.splice(toOverrideIndex, 1);\n }\n }\n for (const alias of aliases) {\n entriesNameSet.add(alias);\n }\n }\n absoluteEntries.push(entry);\n },\n addRelativeTo: (middleware, options) => {\n const { name, override, aliases: _aliases } = options;\n const entry = {\n middleware,\n ...options,\n };\n const aliases = getAllAliases(name, _aliases);\n if (aliases.length > 0) {\n if (aliases.some((alias) => entriesNameSet.has(alias))) {\n if (!override)\n throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);\n for (const alias of aliases) {\n const toOverrideIndex = relativeEntries.findIndex((entry) => entry.name === alias || entry.aliases?.some((a) => a === alias));\n if (toOverrideIndex === -1) {\n continue;\n }\n const toOverride = relativeEntries[toOverrideIndex];\n if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) {\n throw new Error(`\"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}\" middleware ` +\n `${toOverride.relation} \"${toOverride.toMiddleware}\" middleware cannot be overridden ` +\n `by \"${getMiddlewareNameWithAliases(name, _aliases)}\" middleware ${entry.relation} ` +\n `\"${entry.toMiddleware}\" middleware.`);\n }\n relativeEntries.splice(toOverrideIndex, 1);\n }\n }\n for (const alias of aliases) {\n entriesNameSet.add(alias);\n }\n }\n relativeEntries.push(entry);\n },\n clone: () => cloneTo(constructStack()),\n use: (plugin) => {\n plugin.applyToStack(stack);\n },\n remove: (toRemove) => {\n if (typeof toRemove === \"string\")\n return removeByName(toRemove);\n else\n return removeByReference(toRemove);\n },\n removeByTag: (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n const { tags, name, aliases: _aliases } = entry;\n if (tags && tags.includes(toRemove)) {\n const aliases = getAllAliases(name, _aliases);\n for (const alias of aliases) {\n entriesNameSet.delete(alias);\n }\n isRemoved = true;\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n },\n concat: (from) => {\n const cloned = cloneTo(constructStack());\n cloned.use(from);\n cloned.identifyOnResolve(identifyOnResolve || cloned.identifyOnResolve() || (from.identifyOnResolve?.() ?? false));\n return cloned;\n },\n applyToStack: cloneTo,\n identify: () => {\n return getMiddlewareList(true).map((mw) => {\n const step = mw.step ??\n mw.relation +\n \" \" +\n mw.toMiddleware;\n return getMiddlewareNameWithAliases(mw.name, mw.aliases) + \" - \" + step;\n });\n },\n identifyOnResolve(toggle) {\n if (typeof toggle === \"boolean\")\n identifyOnResolve = toggle;\n return identifyOnResolve;\n },\n resolve: (handler, context) => {\n for (const middleware of getMiddlewareList()\n .map((entry) => entry.middleware)\n .reverse()) {\n handler = middleware(handler, context);\n }\n if (identifyOnResolve) {\n console.log(stack.identify());\n }\n return handler;\n },\n };\n return stack;\n};\nconst stepWeights = {\n initialize: 5,\n serialize: 4,\n build: 3,\n finalizeRequest: 2,\n deserialize: 1,\n};\nconst priorityWeights = {\n high: 3,\n normal: 2,\n low: 1,\n};\n",
|
|
8
|
+
"import { constructStack } from \"@smithy/middleware-stack\";\nexport class Client {\n constructor(config) {\n this.middlewareStack = constructStack();\n this.config = config;\n }\n send(command, optionsOrCb, cb) {\n const options = typeof optionsOrCb !== \"function\" ? optionsOrCb : undefined;\n const callback = typeof optionsOrCb === \"function\" ? optionsOrCb : cb;\n const handler = command.resolveMiddleware(this.middlewareStack, this.config, options);\n if (callback) {\n handler(command)\n .then((result) => callback(null, result.output), (err) => callback(err))\n .catch(() => { });\n }\n else {\n return handler(command).then((result) => result.output);\n }\n }\n destroy() {\n if (this.config.requestHandler.destroy)\n this.config.requestHandler.destroy();\n }\n}\n",
|
|
9
|
+
"import { constructStack } from \"@smithy/middleware-stack\";\nimport { SMITHY_CONTEXT_KEY } from \"@smithy/types\";\nexport class Command {\n constructor() {\n this.middlewareStack = constructStack();\n }\n static classBuilder() {\n return new ClassBuilder();\n }\n resolveMiddlewareWithContext(clientStack, configuration, options, { middlewareFn, clientName, commandName, inputFilterSensitiveLog, outputFilterSensitiveLog, smithyContext, additionalContext, CommandCtor, }) {\n for (const mw of middlewareFn.bind(this)(CommandCtor, clientStack, configuration, options)) {\n this.middlewareStack.use(mw);\n }\n const stack = clientStack.concat(this.middlewareStack);\n const { logger } = configuration;\n const handlerExecutionContext = {\n logger,\n clientName,\n commandName,\n inputFilterSensitiveLog,\n outputFilterSensitiveLog,\n [SMITHY_CONTEXT_KEY]: {\n commandInstance: this,\n ...smithyContext,\n },\n ...additionalContext,\n };\n const { requestHandler } = configuration;\n return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext);\n }\n}\nclass ClassBuilder {\n constructor() {\n this._init = () => { };\n this._ep = {};\n this._middlewareFn = () => [];\n this._commandName = \"\";\n this._clientName = \"\";\n this._additionalContext = {};\n this._smithyContext = {};\n this._inputFilterSensitiveLog = (_) => _;\n this._outputFilterSensitiveLog = (_) => _;\n this._serializer = null;\n this._deserializer = null;\n }\n init(cb) {\n this._init = cb;\n }\n ep(endpointParameterInstructions) {\n this._ep = endpointParameterInstructions;\n return this;\n }\n m(middlewareSupplier) {\n this._middlewareFn = middlewareSupplier;\n return this;\n }\n s(service, operation, smithyContext = {}) {\n this._smithyContext = {\n service,\n operation,\n ...smithyContext,\n };\n return this;\n }\n c(additionalContext = {}) {\n this._additionalContext = additionalContext;\n return this;\n }\n n(clientName, commandName) {\n this._clientName = clientName;\n this._commandName = commandName;\n return this;\n }\n f(inputFilter = (_) => _, outputFilter = (_) => _) {\n this._inputFilterSensitiveLog = inputFilter;\n this._outputFilterSensitiveLog = outputFilter;\n return this;\n }\n ser(serializer) {\n this._serializer = serializer;\n return this;\n }\n de(deserializer) {\n this._deserializer = deserializer;\n return this;\n }\n build() {\n const closure = this;\n let CommandRef;\n return (CommandRef = class extends Command {\n static getEndpointParameterInstructions() {\n return closure._ep;\n }\n constructor(...[input]) {\n super();\n this.serialize = closure._serializer;\n this.deserialize = closure._deserializer;\n this.input = input ?? {};\n closure._init(this);\n }\n resolveMiddleware(stack, configuration, options) {\n return this.resolveMiddlewareWithContext(stack, configuration, options, {\n CommandCtor: CommandRef,\n middlewareFn: closure._middlewareFn,\n clientName: closure._clientName,\n commandName: closure._commandName,\n inputFilterSensitiveLog: closure._inputFilterSensitiveLog,\n outputFilterSensitiveLog: closure._outputFilterSensitiveLog,\n smithyContext: closure._smithyContext,\n additionalContext: closure._additionalContext,\n });\n }\n });\n }\n}\n",
|
|
10
|
+
"export const getHttpHandlerExtensionConfiguration = (runtimeConfig) => {\n let httpHandler = runtimeConfig.httpHandler;\n return {\n setHttpHandler(handler) {\n httpHandler = handler;\n },\n httpHandler() {\n return httpHandler;\n },\n updateHttpClientConfig(key, value) {\n httpHandler.updateHttpClientConfig(key, value);\n },\n httpHandlerConfigs() {\n return httpHandler.httpHandlerConfigs();\n },\n };\n};\nexport const resolveHttpHandlerRuntimeConfig = (httpHandlerExtensionConfiguration) => {\n return {\n httpHandler: httpHandlerExtensionConfiguration.httpHandler(),\n };\n};\n",
|
|
11
|
+
"import { FieldPosition } from \"@smithy/types\";\nexport class Field {\n constructor({ name, kind = FieldPosition.HEADER, values = [] }) {\n this.name = name;\n this.kind = kind;\n this.values = values;\n }\n add(value) {\n this.values.push(value);\n }\n set(values) {\n this.values = values;\n }\n remove(value) {\n this.values = this.values.filter((v) => v !== value);\n }\n toString() {\n return this.values.map((v) => (v.includes(\",\") || v.includes(\" \") ? `\"${v}\"` : v)).join(\", \");\n }\n get() {\n return this.values;\n }\n}\n",
|
|
12
|
+
"export class HttpRequest {\n constructor(options) {\n this.method = options.method || \"GET\";\n this.hostname = options.hostname || \"localhost\";\n this.port = options.port;\n this.query = options.query || {};\n this.headers = options.headers || {};\n this.body = options.body;\n this.protocol = options.protocol\n ? options.protocol.slice(-1) !== \":\"\n ? `${options.protocol}:`\n : options.protocol\n : \"https:\";\n this.path = options.path ? (options.path.charAt(0) !== \"/\" ? `/${options.path}` : options.path) : \"/\";\n this.username = options.username;\n this.password = options.password;\n this.fragment = options.fragment;\n }\n static clone(request) {\n const cloned = new HttpRequest({\n ...request,\n headers: { ...request.headers },\n });\n if (cloned.query) {\n cloned.query = cloneQuery(cloned.query);\n }\n return cloned;\n }\n static isInstance(request) {\n if (!request) {\n return false;\n }\n const req = request;\n return (\"method\" in req &&\n \"protocol\" in req &&\n \"hostname\" in req &&\n \"path\" in req &&\n typeof req[\"query\"] === \"object\" &&\n typeof req[\"headers\"] === \"object\");\n }\n clone() {\n return HttpRequest.clone(this);\n }\n}\nfunction cloneQuery(query) {\n return Object.keys(query).reduce((carry, paramName) => {\n const param = query[paramName];\n return {\n ...carry,\n [paramName]: Array.isArray(param) ? [...param] : param,\n };\n }, {});\n}\n",
|
|
13
|
+
"export class HttpResponse {\n constructor(options) {\n this.statusCode = options.statusCode;\n this.reason = options.reason;\n this.headers = options.headers || {};\n this.body = options.body;\n }\n static isInstance(response) {\n if (!response)\n return false;\n const resp = response;\n return typeof resp.statusCode === \"number\" && typeof resp.headers === \"object\";\n }\n}\n",
|
|
14
|
+
"import { escapeUri } from \"@smithy/util-uri-escape\";\nexport function buildQueryString(query) {\n const parts = [];\n for (let key of Object.keys(query).sort()) {\n const value = query[key];\n key = escapeUri(key);\n if (Array.isArray(value)) {\n for (let i = 0, iLen = value.length; i < iLen; i++) {\n parts.push(`${key}=${escapeUri(value[i])}`);\n }\n }\n else {\n let qsEntry = key;\n if (value || typeof value === \"string\") {\n qsEntry += `=${escapeUri(value)}`;\n }\n parts.push(qsEntry);\n }\n }\n return parts.join(\"&\");\n}\n",
|
|
15
|
+
"import { HttpResponse } from \"@smithy/protocol-http\";\nimport { buildQueryString } from \"@smithy/querystring-builder\";\nimport { Agent as hAgent, request as hRequest } from \"http\";\nimport { Agent as hsAgent, request as hsRequest } from \"https\";\nimport { NODEJS_TIMEOUT_ERROR_CODES } from \"./constants\";\nimport { getTransformedHeaders } from \"./get-transformed-headers\";\nimport { setConnectionTimeout } from \"./set-connection-timeout\";\nimport { setSocketKeepAlive } from \"./set-socket-keep-alive\";\nimport { setSocketTimeout } from \"./set-socket-timeout\";\nimport { writeRequestBody } from \"./write-request-body\";\nexport const DEFAULT_REQUEST_TIMEOUT = 0;\nexport class NodeHttpHandler {\n static create(instanceOrOptions) {\n if (typeof instanceOrOptions?.handle === \"function\") {\n return instanceOrOptions;\n }\n return new NodeHttpHandler(instanceOrOptions);\n }\n static checkSocketUsage(agent, socketWarningTimestamp, logger = console) {\n const { sockets, requests, maxSockets } = agent;\n if (typeof maxSockets !== \"number\" || maxSockets === Infinity) {\n return socketWarningTimestamp;\n }\n const interval = 15000;\n if (Date.now() - interval < socketWarningTimestamp) {\n return socketWarningTimestamp;\n }\n if (sockets && requests) {\n for (const origin in sockets) {\n const socketsInUse = sockets[origin]?.length ?? 0;\n const requestsEnqueued = requests[origin]?.length ?? 0;\n if (socketsInUse >= maxSockets && requestsEnqueued >= 2 * maxSockets) {\n logger?.warn?.(`@smithy/node-http-handler:WARN - socket usage at capacity=${socketsInUse} and ${requestsEnqueued} additional requests are enqueued.\nSee https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html\nor increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`);\n return Date.now();\n }\n }\n }\n return socketWarningTimestamp;\n }\n constructor(options) {\n this.socketWarningTimestamp = 0;\n this.metadata = { handlerProtocol: \"http/1.1\" };\n this.configProvider = new Promise((resolve, reject) => {\n if (typeof options === \"function\") {\n options()\n .then((_options) => {\n resolve(this.resolveDefaultConfig(_options));\n })\n .catch(reject);\n }\n else {\n resolve(this.resolveDefaultConfig(options));\n }\n });\n }\n resolveDefaultConfig(options) {\n const { requestTimeout, connectionTimeout, socketTimeout, httpAgent, httpsAgent } = options || {};\n const keepAlive = true;\n const maxSockets = 50;\n return {\n connectionTimeout,\n requestTimeout: requestTimeout ?? socketTimeout,\n httpAgent: (() => {\n if (httpAgent instanceof hAgent || typeof httpAgent?.destroy === \"function\") {\n return httpAgent;\n }\n return new hAgent({ keepAlive, maxSockets, ...httpAgent });\n })(),\n httpsAgent: (() => {\n if (httpsAgent instanceof hsAgent || typeof httpsAgent?.destroy === \"function\") {\n return httpsAgent;\n }\n return new hsAgent({ keepAlive, maxSockets, ...httpsAgent });\n })(),\n logger: console,\n };\n }\n destroy() {\n this.config?.httpAgent?.destroy();\n this.config?.httpsAgent?.destroy();\n }\n async handle(request, { abortSignal } = {}) {\n if (!this.config) {\n this.config = await this.configProvider;\n }\n let socketCheckTimeoutId;\n return new Promise((_resolve, _reject) => {\n let writeRequestBodyPromise = undefined;\n const resolve = async (arg) => {\n await writeRequestBodyPromise;\n clearTimeout(socketCheckTimeoutId);\n _resolve(arg);\n };\n const reject = async (arg) => {\n await writeRequestBodyPromise;\n clearTimeout(socketCheckTimeoutId);\n _reject(arg);\n };\n if (!this.config) {\n throw new Error(\"Node HTTP request handler config is not resolved\");\n }\n if (abortSignal?.aborted) {\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n return;\n }\n const isSSL = request.protocol === \"https:\";\n const agent = isSSL ? this.config.httpsAgent : this.config.httpAgent;\n socketCheckTimeoutId = setTimeout(() => {\n this.socketWarningTimestamp = NodeHttpHandler.checkSocketUsage(agent, this.socketWarningTimestamp, this.config.logger);\n }, this.config.socketAcquisitionWarningTimeout ??\n (this.config.requestTimeout ?? 2000) + (this.config.connectionTimeout ?? 1000));\n const queryString = buildQueryString(request.query || {});\n let auth = undefined;\n if (request.username != null || request.password != null) {\n const username = request.username ?? \"\";\n const password = request.password ?? \"\";\n auth = `${username}:${password}`;\n }\n let path = request.path;\n if (queryString) {\n path += `?${queryString}`;\n }\n if (request.fragment) {\n path += `#${request.fragment}`;\n }\n const nodeHttpsOptions = {\n headers: request.headers,\n host: request.hostname,\n method: request.method,\n path,\n port: request.port,\n agent,\n auth,\n };\n const requestFunc = isSSL ? hsRequest : hRequest;\n const req = requestFunc(nodeHttpsOptions, (res) => {\n const httpResponse = new HttpResponse({\n statusCode: res.statusCode || -1,\n reason: res.statusMessage,\n headers: getTransformedHeaders(res.headers),\n body: res,\n });\n resolve({ response: httpResponse });\n });\n req.on(\"error\", (err) => {\n if (NODEJS_TIMEOUT_ERROR_CODES.includes(err.code)) {\n reject(Object.assign(err, { name: \"TimeoutError\" }));\n }\n else {\n reject(err);\n }\n });\n setConnectionTimeout(req, reject, this.config.connectionTimeout);\n setSocketTimeout(req, reject, this.config.requestTimeout);\n if (abortSignal) {\n const onAbort = () => {\n req.destroy();\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n };\n if (typeof abortSignal.addEventListener === \"function\") {\n const signal = abortSignal;\n signal.addEventListener(\"abort\", onAbort, { once: true });\n req.once(\"close\", () => signal.removeEventListener(\"abort\", onAbort));\n }\n else {\n abortSignal.onabort = onAbort;\n }\n }\n const httpAgent = nodeHttpsOptions.agent;\n if (typeof httpAgent === \"object\" && \"keepAlive\" in httpAgent) {\n setSocketKeepAlive(req, {\n keepAlive: httpAgent.keepAlive,\n keepAliveMsecs: httpAgent.keepAliveMsecs,\n });\n }\n writeRequestBodyPromise = writeRequestBody(req, request, this.config.requestTimeout).catch((e) => {\n clearTimeout(socketCheckTimeoutId);\n return _reject(e);\n });\n });\n }\n updateHttpClientConfig(key, value) {\n this.config = undefined;\n this.configProvider = this.configProvider.then((config) => {\n return {\n ...config,\n [key]: value,\n };\n });\n }\n httpHandlerConfigs() {\n return this.config ?? {};\n }\n}\n",
|
|
16
|
+
"export const NODEJS_TIMEOUT_ERROR_CODES = [\"ECONNRESET\", \"EPIPE\", \"ETIMEDOUT\"];\n",
|
|
17
|
+
"const getTransformedHeaders = (headers) => {\n const transformedHeaders = {};\n for (const name of Object.keys(headers)) {\n const headerValues = headers[name];\n transformedHeaders[name] = Array.isArray(headerValues) ? headerValues.join(\",\") : headerValues;\n }\n return transformedHeaders;\n};\nexport { getTransformedHeaders };\n",
|
|
18
|
+
"export const setConnectionTimeout = (request, reject, timeoutInMs = 0) => {\n if (!timeoutInMs) {\n return;\n }\n const timeoutId = setTimeout(() => {\n request.destroy();\n reject(Object.assign(new Error(`Socket timed out without establishing a connection within ${timeoutInMs} ms`), {\n name: \"TimeoutError\",\n }));\n }, timeoutInMs);\n request.on(\"socket\", (socket) => {\n if (socket.connecting) {\n socket.on(\"connect\", () => {\n clearTimeout(timeoutId);\n });\n }\n else {\n clearTimeout(timeoutId);\n }\n });\n};\n",
|
|
19
|
+
"export const setSocketKeepAlive = (request, { keepAlive, keepAliveMsecs }) => {\n if (keepAlive !== true) {\n return;\n }\n request.on(\"socket\", (socket) => {\n socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);\n });\n};\n",
|
|
20
|
+
"export const setSocketTimeout = (request, reject, timeoutInMs = 0) => {\n request.setTimeout(timeoutInMs, () => {\n request.destroy();\n reject(Object.assign(new Error(`Connection timed out after ${timeoutInMs} ms`), { name: \"TimeoutError\" }));\n });\n};\n",
|
|
21
|
+
"import { Readable } from \"stream\";\nconst MIN_WAIT_TIME = 1000;\nexport async function writeRequestBody(httpRequest, request, maxContinueTimeoutMs = MIN_WAIT_TIME) {\n const headers = request.headers ?? {};\n const expect = headers[\"Expect\"] || headers[\"expect\"];\n let timeoutId = -1;\n let hasError = false;\n if (expect === \"100-continue\") {\n await Promise.race([\n new Promise((resolve) => {\n timeoutId = Number(setTimeout(resolve, Math.max(MIN_WAIT_TIME, maxContinueTimeoutMs)));\n }),\n new Promise((resolve) => {\n httpRequest.on(\"continue\", () => {\n clearTimeout(timeoutId);\n resolve();\n });\n httpRequest.on(\"error\", () => {\n hasError = true;\n clearTimeout(timeoutId);\n resolve();\n });\n }),\n ]);\n }\n if (!hasError) {\n writeBody(httpRequest, request.body);\n }\n}\nfunction writeBody(httpRequest, body) {\n if (body instanceof Readable) {\n body.pipe(httpRequest);\n return;\n }\n if (body) {\n if (Buffer.isBuffer(body) || typeof body === \"string\") {\n httpRequest.end(body);\n return;\n }\n const uint8 = body;\n if (typeof uint8 === \"object\" &&\n uint8.buffer &&\n typeof uint8.byteOffset === \"number\" &&\n typeof uint8.byteLength === \"number\") {\n httpRequest.end(Buffer.from(uint8.buffer, uint8.byteOffset, uint8.byteLength));\n return;\n }\n httpRequest.end(Buffer.from(body));\n return;\n }\n httpRequest.end();\n}\n",
|
|
22
|
+
"import { Writable } from \"stream\";\nexport class Collector extends Writable {\n constructor() {\n super(...arguments);\n this.bufferedBytes = [];\n }\n _write(chunk, encoding, callback) {\n this.bufferedBytes.push(chunk);\n callback();\n }\n}\n",
|
|
23
|
+
"import { Collector } from \"./collector\";\nexport const streamCollector = (stream) => {\n if (isReadableStreamInstance(stream)) {\n return collectReadableStream(stream);\n }\n return new Promise((resolve, reject) => {\n const collector = new Collector();\n stream.pipe(collector);\n stream.on(\"error\", (err) => {\n collector.end();\n reject(err);\n });\n collector.on(\"error\", reject);\n collector.on(\"finish\", function () {\n const bytes = new Uint8Array(Buffer.concat(this.bufferedBytes));\n resolve(bytes);\n });\n });\n};\nconst isReadableStreamInstance = (stream) => typeof ReadableStream === \"function\" && stream instanceof ReadableStream;\nasync function collectReadableStream(stream) {\n const chunks = [];\n const reader = stream.getReader();\n let isDone = false;\n let length = 0;\n while (!isDone) {\n const { done, value } = await reader.read();\n if (value) {\n chunks.push(value);\n length += value.length;\n }\n isDone = done;\n }\n const collected = new Uint8Array(length);\n let offset = 0;\n for (const chunk of chunks) {\n collected.set(chunk, offset);\n offset += chunk.length;\n }\n return collected;\n}\n",
|
|
24
|
+
"export const SENSITIVE_STRING = \"***SensitiveInformation***\";\n",
|
|
25
|
+
"export const createAggregatedClient = (commands, Client) => {\n for (const command of Object.keys(commands)) {\n const CommandCtor = commands[command];\n const methodImpl = async function (args, optionsOrCb, cb) {\n const command = new CommandCtor(args);\n if (typeof optionsOrCb === \"function\") {\n this.send(command, optionsOrCb);\n }\n else if (typeof cb === \"function\") {\n if (typeof optionsOrCb !== \"object\")\n throw new Error(`Expected http options but got ${typeof optionsOrCb}`);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, \"\");\n Client.prototype[methodName] = methodImpl;\n }\n};\n",
|
|
26
|
+
"export class ServiceException extends Error {\n constructor(options) {\n super(options.message);\n Object.setPrototypeOf(this, ServiceException.prototype);\n this.name = options.name;\n this.$fault = options.$fault;\n this.$metadata = options.$metadata;\n }\n}\nexport const decorateServiceException = (exception, additions = {}) => {\n Object.entries(additions)\n .filter(([, v]) => v !== undefined)\n .forEach(([k, v]) => {\n if (exception[k] == undefined || exception[k] === \"\") {\n exception[k] = v;\n }\n });\n const message = exception.message || exception.Message || \"UnknownError\";\n exception.message = message;\n delete exception.Message;\n return exception;\n};\n",
|
|
27
|
+
"export class NoOpLogger {\n trace() { }\n debug() { }\n info() { }\n warn() { }\n error() { }\n}\n",
|
|
28
|
+
"export const isArrayBuffer = (arg) => (typeof ArrayBuffer === \"function\" && arg instanceof ArrayBuffer) ||\n Object.prototype.toString.call(arg) === \"[object ArrayBuffer]\";\n",
|
|
29
|
+
"import { isArrayBuffer } from \"@smithy/is-array-buffer\";\nimport { Buffer } from \"buffer\";\nexport const fromArrayBuffer = (input, offset = 0, length = input.byteLength - offset) => {\n if (!isArrayBuffer(input)) {\n throw new TypeError(`The \"input\" argument must be ArrayBuffer. Received type ${typeof input} (${input})`);\n }\n return Buffer.from(input, offset, length);\n};\nexport const fromString = (input, encoding) => {\n if (typeof input !== \"string\") {\n throw new TypeError(`The \"input\" argument must be of type string. Received type ${typeof input} (${input})`);\n }\n return encoding ? Buffer.from(input, encoding) : Buffer.from(input);\n};\n",
|
|
30
|
+
"import { fromString } from \"@smithy/util-buffer-from\";\nconst BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/;\nexport const fromBase64 = (input) => {\n if ((input.length * 3) % 4 !== 0) {\n throw new TypeError(`Incorrect padding on base64 string.`);\n }\n if (!BASE64_REGEX.exec(input)) {\n throw new TypeError(`Invalid base64 string.`);\n }\n const buffer = fromString(input, \"base64\");\n return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);\n};\n",
|
|
31
|
+
"import { fromString } from \"@smithy/util-buffer-from\";\nexport const fromUtf8 = (input) => {\n const buf = fromString(input, \"utf8\");\n return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n};\n",
|
|
32
|
+
"import { fromUtf8 } from \"./fromUtf8\";\nexport const toUint8Array = (data) => {\n if (typeof data === \"string\") {\n return fromUtf8(data);\n }\n if (ArrayBuffer.isView(data)) {\n return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n }\n return new Uint8Array(data);\n};\n",
|
|
33
|
+
"import { fromArrayBuffer } from \"@smithy/util-buffer-from\";\nexport const toUtf8 = (input) => {\n if (typeof input === \"string\") {\n return input;\n }\n if (typeof input !== \"object\" || typeof input.byteOffset !== \"number\" || typeof input.byteLength !== \"number\") {\n throw new Error(\"@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.\");\n }\n return fromArrayBuffer(input.buffer, input.byteOffset, input.byteLength).toString(\"utf8\");\n};\n",
|
|
34
|
+
"import { fromArrayBuffer } from \"@smithy/util-buffer-from\";\nimport { fromUtf8 } from \"@smithy/util-utf8\";\nexport const toBase64 = (_input) => {\n let input;\n if (typeof _input === \"string\") {\n input = fromUtf8(_input);\n }\n else {\n input = _input;\n }\n if (typeof input !== \"object\" || typeof input.byteOffset !== \"number\" || typeof input.byteLength !== \"number\") {\n throw new Error(\"@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.\");\n }\n return fromArrayBuffer(input.buffer, input.byteOffset, input.byteLength).toString(\"base64\");\n};\n",
|
|
35
|
+
"import { streamCollector } from \"@smithy/node-http-handler\";\nimport { fromArrayBuffer } from \"@smithy/util-buffer-from\";\nimport { Readable } from \"stream\";\nimport { TextDecoder } from \"util\";\nimport { sdkStreamMixin as sdkStreamMixinReadableStream } from \"./sdk-stream-mixin.browser\";\nconst ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = \"The stream has already been transformed.\";\nexport const sdkStreamMixin = (stream) => {\n if (!(stream instanceof Readable)) {\n try {\n return sdkStreamMixinReadableStream(stream);\n }\n catch (e) {\n const name = stream?.__proto__?.constructor?.name || stream;\n throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${name}`);\n }\n }\n let transformed = false;\n const transformToByteArray = async () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n transformed = true;\n return await streamCollector(stream);\n };\n return Object.assign(stream, {\n transformToByteArray,\n transformToString: async (encoding) => {\n const buf = await transformToByteArray();\n if (encoding === undefined || Buffer.isEncoding(encoding)) {\n return fromArrayBuffer(buf.buffer, buf.byteOffset, buf.byteLength).toString(encoding);\n }\n else {\n const decoder = new TextDecoder(encoding);\n return decoder.decode(buf);\n }\n },\n transformToWebStream: () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n if (stream.readableFlowing !== null) {\n throw new Error(\"The stream has been consumed by other callbacks.\");\n }\n if (typeof Readable.toWeb !== \"function\") {\n throw new Error(\"Readable.toWeb() is not supported. Please make sure you are using Node.js >= 17.0.0, or polyfill is available.\");\n }\n transformed = true;\n return Readable.toWeb(stream);\n },\n });\n};\n",
|
|
36
|
+
"import { fromBase64 } from \"@smithy/util-base64\";\nexport const streamCollector = (stream) => {\n if (typeof Blob === \"function\" && stream instanceof Blob) {\n return collectBlob(stream);\n }\n return collectStream(stream);\n};\nasync function collectBlob(blob) {\n const base64 = await readToBase64(blob);\n const arrayBuffer = fromBase64(base64);\n return new Uint8Array(arrayBuffer);\n}\nasync function collectStream(stream) {\n const chunks = [];\n const reader = stream.getReader();\n let isDone = false;\n let length = 0;\n while (!isDone) {\n const { done, value } = await reader.read();\n if (value) {\n chunks.push(value);\n length += value.length;\n }\n isDone = done;\n }\n const collected = new Uint8Array(length);\n let offset = 0;\n for (const chunk of chunks) {\n collected.set(chunk, offset);\n offset += chunk.length;\n }\n return collected;\n}\nfunction readToBase64(blob) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => {\n if (reader.readyState !== 2) {\n return reject(new Error(\"Reader aborted too early\"));\n }\n const result = (reader.result ?? \"\");\n const commaIndex = result.indexOf(\",\");\n const dataOffset = commaIndex > -1 ? commaIndex + 1 : result.length;\n resolve(result.substring(dataOffset));\n };\n reader.onabort = () => reject(new Error(\"Read aborted\"));\n reader.onerror = () => reject(reader.error);\n reader.readAsDataURL(blob);\n });\n}\n",
|
|
37
|
+
"import { streamCollector } from \"@smithy/fetch-http-handler\";\nimport { toBase64 } from \"@smithy/util-base64\";\nimport { toHex } from \"@smithy/util-hex-encoding\";\nimport { toUtf8 } from \"@smithy/util-utf8\";\nimport { isReadableStream } from \"./stream-type-check\";\nconst ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = \"The stream has already been transformed.\";\nexport const sdkStreamMixin = (stream) => {\n if (!isBlobInstance(stream) && !isReadableStream(stream)) {\n const name = stream?.__proto__?.constructor?.name || stream;\n throw new Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${name}`);\n }\n let transformed = false;\n const transformToByteArray = async () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n transformed = true;\n return await streamCollector(stream);\n };\n const blobToWebStream = (blob) => {\n if (typeof blob.stream !== \"function\") {\n throw new Error(\"Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled.\\n\" +\n \"If you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body\");\n }\n return blob.stream();\n };\n return Object.assign(stream, {\n transformToByteArray: transformToByteArray,\n transformToString: async (encoding) => {\n const buf = await transformToByteArray();\n if (encoding === \"base64\") {\n return toBase64(buf);\n }\n else if (encoding === \"hex\") {\n return toHex(buf);\n }\n else if (encoding === undefined || encoding === \"utf8\" || encoding === \"utf-8\") {\n return toUtf8(buf);\n }\n else if (typeof TextDecoder === \"function\") {\n return new TextDecoder(encoding).decode(buf);\n }\n else {\n throw new Error(\"TextDecoder is not available, please make sure polyfill is provided.\");\n }\n },\n transformToWebStream: () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n transformed = true;\n if (isBlobInstance(stream)) {\n return blobToWebStream(stream);\n }\n else if (isReadableStream(stream)) {\n return stream;\n }\n else {\n throw new Error(`Cannot transform payload to web stream, got ${stream}`);\n }\n },\n });\n};\nconst isBlobInstance = (stream) => typeof Blob === \"function\" && stream instanceof Blob;\n",
|
|
38
|
+
"export const isReadableStream = (stream) => typeof ReadableStream === \"function\" &&\n (stream?.constructor?.name === ReadableStream.name || stream instanceof ReadableStream);\n",
|
|
39
|
+
"export const parseBoolean = (value) => {\n switch (value) {\n case \"true\":\n return true;\n case \"false\":\n return false;\n default:\n throw new Error(`Unable to parse boolean value \"${value}\"`);\n }\n};\nexport const expectBoolean = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"number\") {\n if (value === 0 || value === 1) {\n logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));\n }\n if (value === 0) {\n return false;\n }\n if (value === 1) {\n return true;\n }\n }\n if (typeof value === \"string\") {\n const lower = value.toLowerCase();\n if (lower === \"false\" || lower === \"true\") {\n logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));\n }\n if (lower === \"false\") {\n return false;\n }\n if (lower === \"true\") {\n return true;\n }\n }\n if (typeof value === \"boolean\") {\n return value;\n }\n throw new TypeError(`Expected boolean, got ${typeof value}: ${value}`);\n};\nexport const expectNumber = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"string\") {\n const parsed = parseFloat(value);\n if (!Number.isNaN(parsed)) {\n if (String(parsed) !== String(value)) {\n logger.warn(stackTraceWarning(`Expected number but observed string: ${value}`));\n }\n return parsed;\n }\n }\n if (typeof value === \"number\") {\n return value;\n }\n throw new TypeError(`Expected number, got ${typeof value}: ${value}`);\n};\nconst MAX_FLOAT = Math.ceil(2 ** 127 * (2 - 2 ** -23));\nexport const expectFloat32 = (value) => {\n const expected = expectNumber(value);\n if (expected !== undefined && !Number.isNaN(expected) && expected !== Infinity && expected !== -Infinity) {\n if (Math.abs(expected) > MAX_FLOAT) {\n throw new TypeError(`Expected 32-bit float, got ${value}`);\n }\n }\n return expected;\n};\nexport const expectLong = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (Number.isInteger(value) && !Number.isNaN(value)) {\n return value;\n }\n throw new TypeError(`Expected integer, got ${typeof value}: ${value}`);\n};\nexport const expectInt = expectLong;\nexport const expectInt32 = (value) => expectSizedInt(value, 32);\nexport const expectShort = (value) => expectSizedInt(value, 16);\nexport const expectByte = (value) => expectSizedInt(value, 8);\nconst expectSizedInt = (value, size) => {\n const expected = expectLong(value);\n if (expected !== undefined && castInt(expected, size) !== expected) {\n throw new TypeError(`Expected ${size}-bit integer, got ${value}`);\n }\n return expected;\n};\nconst castInt = (value, size) => {\n switch (size) {\n case 32:\n return Int32Array.of(value)[0];\n case 16:\n return Int16Array.of(value)[0];\n case 8:\n return Int8Array.of(value)[0];\n }\n};\nexport const expectNonNull = (value, location) => {\n if (value === null || value === undefined) {\n if (location) {\n throw new TypeError(`Expected a non-null value for ${location}`);\n }\n throw new TypeError(\"Expected a non-null value\");\n }\n return value;\n};\nexport const expectObject = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"object\" && !Array.isArray(value)) {\n return value;\n }\n const receivedType = Array.isArray(value) ? \"array\" : typeof value;\n throw new TypeError(`Expected object, got ${receivedType}: ${value}`);\n};\nexport const expectString = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"string\") {\n return value;\n }\n if ([\"boolean\", \"number\", \"bigint\"].includes(typeof value)) {\n logger.warn(stackTraceWarning(`Expected string, got ${typeof value}: ${value}`));\n return String(value);\n }\n throw new TypeError(`Expected string, got ${typeof value}: ${value}`);\n};\nexport const expectUnion = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n const asObject = expectObject(value);\n const setKeys = Object.entries(asObject)\n .filter(([, v]) => v != null)\n .map(([k]) => k);\n if (setKeys.length === 0) {\n throw new TypeError(`Unions must have exactly one non-null member. None were found.`);\n }\n if (setKeys.length > 1) {\n throw new TypeError(`Unions must have exactly one non-null member. Keys ${setKeys} were not null.`);\n }\n return asObject;\n};\nexport const strictParseDouble = (value) => {\n if (typeof value == \"string\") {\n return expectNumber(parseNumber(value));\n }\n return expectNumber(value);\n};\nexport const strictParseFloat = strictParseDouble;\nexport const strictParseFloat32 = (value) => {\n if (typeof value == \"string\") {\n return expectFloat32(parseNumber(value));\n }\n return expectFloat32(value);\n};\nconst NUMBER_REGEX = /(-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)|(-?Infinity)|(NaN)/g;\nconst parseNumber = (value) => {\n const matches = value.match(NUMBER_REGEX);\n if (matches === null || matches[0].length !== value.length) {\n throw new TypeError(`Expected real number, got implicit NaN`);\n }\n return parseFloat(value);\n};\nexport const limitedParseDouble = (value) => {\n if (typeof value == \"string\") {\n return parseFloatString(value);\n }\n return expectNumber(value);\n};\nexport const handleFloat = limitedParseDouble;\nexport const limitedParseFloat = limitedParseDouble;\nexport const limitedParseFloat32 = (value) => {\n if (typeof value == \"string\") {\n return parseFloatString(value);\n }\n return expectFloat32(value);\n};\nconst parseFloatString = (value) => {\n switch (value) {\n case \"NaN\":\n return NaN;\n case \"Infinity\":\n return Infinity;\n case \"-Infinity\":\n return -Infinity;\n default:\n throw new Error(`Unable to parse float value: ${value}`);\n }\n};\nexport const strictParseLong = (value) => {\n if (typeof value === \"string\") {\n return expectLong(parseNumber(value));\n }\n return expectLong(value);\n};\nexport const strictParseInt = strictParseLong;\nexport const strictParseInt32 = (value) => {\n if (typeof value === \"string\") {\n return expectInt32(parseNumber(value));\n }\n return expectInt32(value);\n};\nexport const strictParseShort = (value) => {\n if (typeof value === \"string\") {\n return expectShort(parseNumber(value));\n }\n return expectShort(value);\n};\nexport const strictParseByte = (value) => {\n if (typeof value === \"string\") {\n return expectByte(parseNumber(value));\n }\n return expectByte(value);\n};\nconst stackTraceWarning = (message) => {\n return String(new TypeError(message).stack || message)\n .split(\"\\n\")\n .slice(0, 5)\n .filter((s) => !s.includes(\"stackTraceWarning\"))\n .join(\"\\n\");\n};\nexport const logger = {\n warn: console.warn,\n};\n",
|
|
40
|
+
"import { strictParseByte, strictParseDouble, strictParseFloat32, strictParseShort } from \"./parse-utils\";\nconst DAYS = [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"];\nconst MONTHS = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\nexport function dateToUtcString(date) {\n const year = date.getUTCFullYear();\n const month = date.getUTCMonth();\n const dayOfWeek = date.getUTCDay();\n const dayOfMonthInt = date.getUTCDate();\n const hoursInt = date.getUTCHours();\n const minutesInt = date.getUTCMinutes();\n const secondsInt = date.getUTCSeconds();\n const dayOfMonthString = dayOfMonthInt < 10 ? `0${dayOfMonthInt}` : `${dayOfMonthInt}`;\n const hoursString = hoursInt < 10 ? `0${hoursInt}` : `${hoursInt}`;\n const minutesString = minutesInt < 10 ? `0${minutesInt}` : `${minutesInt}`;\n const secondsString = secondsInt < 10 ? `0${secondsInt}` : `${secondsInt}`;\n return `${DAYS[dayOfWeek]}, ${dayOfMonthString} ${MONTHS[month]} ${year} ${hoursString}:${minutesString}:${secondsString} GMT`;\n}\nconst RFC3339 = new RegExp(/^(\\d{4})-(\\d{2})-(\\d{2})[tT](\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))?[zZ]$/);\nexport const parseRfc3339DateTime = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC-3339 date-times must be expressed as strings\");\n }\n const match = RFC3339.exec(value);\n if (!match) {\n throw new TypeError(\"Invalid RFC-3339 date-time value\");\n }\n const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n const year = strictParseShort(stripLeadingZeroes(yearStr));\n const month = parseDateValue(monthStr, \"month\", 1, 12);\n const day = parseDateValue(dayStr, \"day\", 1, 31);\n return buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });\n};\nconst RFC3339_WITH_OFFSET = new RegExp(/^(\\d{4})-(\\d{2})-(\\d{2})[tT](\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))?(([-+]\\d{2}\\:\\d{2})|[zZ])$/);\nexport const parseRfc3339DateTimeWithOffset = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC-3339 date-times must be expressed as strings\");\n }\n const match = RFC3339_WITH_OFFSET.exec(value);\n if (!match) {\n throw new TypeError(\"Invalid RFC-3339 date-time value\");\n }\n const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, offsetStr] = match;\n const year = strictParseShort(stripLeadingZeroes(yearStr));\n const month = parseDateValue(monthStr, \"month\", 1, 12);\n const day = parseDateValue(dayStr, \"day\", 1, 31);\n const date = buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });\n if (offsetStr.toUpperCase() != \"Z\") {\n date.setTime(date.getTime() - parseOffsetToMilliseconds(offsetStr));\n }\n return date;\n};\nconst IMF_FIXDATE = new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\\d{4}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/);\nconst RFC_850_DATE = new RegExp(/^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\\d{2}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/);\nconst ASC_TIME = new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\\d{2}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? (\\d{4})$/);\nexport const parseRfc7231DateTime = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC-7231 date-times must be expressed as strings\");\n }\n let match = IMF_FIXDATE.exec(value);\n if (match) {\n const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n return buildDate(strictParseShort(stripLeadingZeroes(yearStr)), parseMonthByShortName(monthStr), parseDateValue(dayStr, \"day\", 1, 31), { hours, minutes, seconds, fractionalMilliseconds });\n }\n match = RFC_850_DATE.exec(value);\n if (match) {\n const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n return adjustRfc850Year(buildDate(parseTwoDigitYear(yearStr), parseMonthByShortName(monthStr), parseDateValue(dayStr, \"day\", 1, 31), {\n hours,\n minutes,\n seconds,\n fractionalMilliseconds,\n }));\n }\n match = ASC_TIME.exec(value);\n if (match) {\n const [_, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, yearStr] = match;\n return buildDate(strictParseShort(stripLeadingZeroes(yearStr)), parseMonthByShortName(monthStr), parseDateValue(dayStr.trimLeft(), \"day\", 1, 31), { hours, minutes, seconds, fractionalMilliseconds });\n }\n throw new TypeError(\"Invalid RFC-7231 date-time value\");\n};\nexport const parseEpochTimestamp = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n let valueAsDouble;\n if (typeof value === \"number\") {\n valueAsDouble = value;\n }\n else if (typeof value === \"string\") {\n valueAsDouble = strictParseDouble(value);\n }\n else if (typeof value === \"object\" && value.tag === 1) {\n valueAsDouble = value.value;\n }\n else {\n throw new TypeError(\"Epoch timestamps must be expressed as floating point numbers or their string representation\");\n }\n if (Number.isNaN(valueAsDouble) || valueAsDouble === Infinity || valueAsDouble === -Infinity) {\n throw new TypeError(\"Epoch timestamps must be valid, non-Infinite, non-NaN numerics\");\n }\n return new Date(Math.round(valueAsDouble * 1000));\n};\nconst buildDate = (year, month, day, time) => {\n const adjustedMonth = month - 1;\n validateDayOfMonth(year, adjustedMonth, day);\n return new Date(Date.UTC(year, adjustedMonth, day, parseDateValue(time.hours, \"hour\", 0, 23), parseDateValue(time.minutes, \"minute\", 0, 59), parseDateValue(time.seconds, \"seconds\", 0, 60), parseMilliseconds(time.fractionalMilliseconds)));\n};\nconst parseTwoDigitYear = (value) => {\n const thisYear = new Date().getUTCFullYear();\n const valueInThisCentury = Math.floor(thisYear / 100) * 100 + strictParseShort(stripLeadingZeroes(value));\n if (valueInThisCentury < thisYear) {\n return valueInThisCentury + 100;\n }\n return valueInThisCentury;\n};\nconst FIFTY_YEARS_IN_MILLIS = 50 * 365 * 24 * 60 * 60 * 1000;\nconst adjustRfc850Year = (input) => {\n if (input.getTime() - new Date().getTime() > FIFTY_YEARS_IN_MILLIS) {\n return new Date(Date.UTC(input.getUTCFullYear() - 100, input.getUTCMonth(), input.getUTCDate(), input.getUTCHours(), input.getUTCMinutes(), input.getUTCSeconds(), input.getUTCMilliseconds()));\n }\n return input;\n};\nconst parseMonthByShortName = (value) => {\n const monthIdx = MONTHS.indexOf(value);\n if (monthIdx < 0) {\n throw new TypeError(`Invalid month: ${value}`);\n }\n return monthIdx + 1;\n};\nconst DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\nconst validateDayOfMonth = (year, month, day) => {\n let maxDays = DAYS_IN_MONTH[month];\n if (month === 1 && isLeapYear(year)) {\n maxDays = 29;\n }\n if (day > maxDays) {\n throw new TypeError(`Invalid day for ${MONTHS[month]} in ${year}: ${day}`);\n }\n};\nconst isLeapYear = (year) => {\n return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n};\nconst parseDateValue = (value, type, lower, upper) => {\n const dateVal = strictParseByte(stripLeadingZeroes(value));\n if (dateVal < lower || dateVal > upper) {\n throw new TypeError(`${type} must be between ${lower} and ${upper}, inclusive`);\n }\n return dateVal;\n};\nconst parseMilliseconds = (value) => {\n if (value === null || value === undefined) {\n return 0;\n }\n return strictParseFloat32(\"0.\" + value) * 1000;\n};\nconst parseOffsetToMilliseconds = (value) => {\n const directionStr = value[0];\n let direction = 1;\n if (directionStr == \"+\") {\n direction = 1;\n }\n else if (directionStr == \"-\") {\n direction = -1;\n }\n else {\n throw new TypeError(`Offset direction, ${directionStr}, must be \"+\" or \"-\"`);\n }\n const hour = Number(value.substring(1, 3));\n const minute = Number(value.substring(4, 6));\n return direction * (hour * 60 + minute) * 60 * 1000;\n};\nconst stripLeadingZeroes = (value) => {\n let idx = 0;\n while (idx < value.length - 1 && value.charAt(idx) === \"0\") {\n idx++;\n }\n if (idx === 0) {\n return value;\n }\n return value.slice(idx);\n};\n",
|
|
41
|
+
"import { decorateServiceException } from \"./exceptions\";\nexport const throwDefaultError = ({ output, parsedBody, exceptionCtor, errorCode }) => {\n const $metadata = deserializeMetadata(output);\n const statusCode = $metadata.httpStatusCode ? $metadata.httpStatusCode + \"\" : undefined;\n const response = new exceptionCtor({\n name: parsedBody?.code || parsedBody?.Code || errorCode || statusCode || \"UnknownError\",\n $fault: \"client\",\n $metadata,\n });\n throw decorateServiceException(response, parsedBody);\n};\nexport const withBaseException = (ExceptionCtor) => {\n return ({ output, parsedBody, errorCode }) => {\n throwDefaultError({ output, parsedBody, exceptionCtor: ExceptionCtor, errorCode });\n };\n};\nconst deserializeMetadata = (output) => ({\n httpStatusCode: output.statusCode,\n requestId: output.headers[\"x-amzn-requestid\"] ?? output.headers[\"x-amzn-request-id\"] ?? output.headers[\"x-amz-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n});\n",
|
|
42
|
+
"export const loadConfigsForDefaultMode = (mode) => {\n switch (mode) {\n case \"standard\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 3100,\n };\n case \"in-region\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 1100,\n };\n case \"cross-region\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 3100,\n };\n case \"mobile\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 30000,\n };\n default:\n return {};\n }\n};\n",
|
|
43
|
+
"let warningEmitted = false;\nexport const emitWarningIfUnsupportedVersion = (version) => {\n if (version && !warningEmitted && parseInt(version.substring(1, version.indexOf(\".\"))) < 16) {\n warningEmitted = true;\n }\n};\n",
|
|
44
|
+
"import { AlgorithmId } from \"@smithy/types\";\nexport { AlgorithmId };\nexport const getChecksumConfiguration = (runtimeConfig) => {\n const checksumAlgorithms = [];\n for (const id in AlgorithmId) {\n const algorithmId = AlgorithmId[id];\n if (runtimeConfig[algorithmId] === undefined) {\n continue;\n }\n checksumAlgorithms.push({\n algorithmId: () => algorithmId,\n checksumConstructor: () => runtimeConfig[algorithmId],\n });\n }\n return {\n _checksumAlgorithms: checksumAlgorithms,\n addChecksumAlgorithm(algo) {\n this._checksumAlgorithms.push(algo);\n },\n checksumAlgorithms() {\n return this._checksumAlgorithms;\n },\n };\n};\nexport const resolveChecksumRuntimeConfig = (clientConfig) => {\n const runtimeConfig = {};\n clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {\n runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();\n });\n return runtimeConfig;\n};\n",
|
|
45
|
+
"export const getRetryConfiguration = (runtimeConfig) => {\n let _retryStrategy = runtimeConfig.retryStrategy;\n return {\n setRetryStrategy(retryStrategy) {\n _retryStrategy = retryStrategy;\n },\n retryStrategy() {\n return _retryStrategy;\n },\n };\n};\nexport const resolveRetryRuntimeConfig = (retryStrategyConfiguration) => {\n const runtimeConfig = {};\n runtimeConfig.retryStrategy = retryStrategyConfiguration.retryStrategy();\n return runtimeConfig;\n};\n",
|
|
46
|
+
"import { getChecksumConfiguration, resolveChecksumRuntimeConfig } from \"./checksum\";\nimport { getRetryConfiguration, resolveRetryRuntimeConfig } from \"./retry\";\nexport const getDefaultExtensionConfiguration = (runtimeConfig) => {\n return {\n ...getChecksumConfiguration(runtimeConfig),\n ...getRetryConfiguration(runtimeConfig),\n };\n};\nexport const getDefaultClientConfiguration = getDefaultExtensionConfiguration;\nexport const resolveDefaultRuntimeConfig = (config) => {\n return {\n ...resolveChecksumRuntimeConfig(config),\n ...resolveRetryRuntimeConfig(config),\n };\n};\n",
|
|
47
|
+
"export function extendedEncodeURIComponent(str) {\n return encodeURIComponent(str).replace(/[!'()*]/g, function (c) {\n return \"%\" + c.charCodeAt(0).toString(16).toUpperCase();\n });\n}\n",
|
|
48
|
+
"export const getArrayIfSingleItem = (mayBeArray) => Array.isArray(mayBeArray) ? mayBeArray : [mayBeArray];\n",
|
|
49
|
+
"export const StringWrapper = function () {\n const Class = Object.getPrototypeOf(this).constructor;\n const Constructor = Function.bind.apply(String, [null, ...arguments]);\n const instance = new Constructor();\n Object.setPrototypeOf(instance, Class.prototype);\n return instance;\n};\nStringWrapper.prototype = Object.create(String.prototype, {\n constructor: {\n value: StringWrapper,\n enumerable: false,\n writable: true,\n configurable: true,\n },\n});\nObject.setPrototypeOf(StringWrapper, String);\nexport class LazyJsonString extends StringWrapper {\n deserializeJSON() {\n return JSON.parse(super.toString());\n }\n toJSON() {\n return super.toString();\n }\n static fromObject(object) {\n if (object instanceof LazyJsonString) {\n return object;\n }\n else if (object instanceof String || typeof object === \"string\") {\n return new LazyJsonString(object);\n }\n return new LazyJsonString(JSON.stringify(object));\n }\n}\n",
|
|
50
|
+
"export function map(arg0, arg1, arg2) {\n let target;\n let filter;\n let instructions;\n if (typeof arg1 === \"undefined\" && typeof arg2 === \"undefined\") {\n target = {};\n instructions = arg0;\n }\n else {\n target = arg0;\n if (typeof arg1 === \"function\") {\n filter = arg1;\n instructions = arg2;\n return mapWithFilter(target, filter, instructions);\n }\n else {\n instructions = arg1;\n }\n }\n for (const key of Object.keys(instructions)) {\n if (!Array.isArray(instructions[key])) {\n target[key] = instructions[key];\n continue;\n }\n applyInstruction(target, null, instructions, key);\n }\n return target;\n}\nexport const convertMap = (target) => {\n const output = {};\n for (const [k, v] of Object.entries(target || {})) {\n output[k] = [, v];\n }\n return output;\n};\nexport const take = (source, instructions) => {\n const out = {};\n for (const key in instructions) {\n applyInstruction(out, source, instructions, key);\n }\n return out;\n};\nconst mapWithFilter = (target, filter, instructions) => {\n return map(target, Object.entries(instructions).reduce((_instructions, [key, value]) => {\n if (Array.isArray(value)) {\n _instructions[key] = value;\n }\n else {\n if (typeof value === \"function\") {\n _instructions[key] = [filter, value()];\n }\n else {\n _instructions[key] = [filter, value];\n }\n }\n return _instructions;\n }, {}));\n};\nconst applyInstruction = (target, source, instructions, targetKey) => {\n if (source !== null) {\n let instruction = instructions[targetKey];\n if (typeof instruction === \"function\") {\n instruction = [, instruction];\n }\n const [filter = nonNullish, valueFn = pass, sourceKey = targetKey] = instruction;\n if ((typeof filter === \"function\" && filter(source[sourceKey])) || (typeof filter !== \"function\" && !!filter)) {\n target[targetKey] = valueFn(source[sourceKey]);\n }\n return;\n }\n let [filter, value] = instructions[targetKey];\n if (typeof value === \"function\") {\n let _value;\n const defaultFilterPassed = filter === undefined && (_value = value()) != null;\n const customFilterPassed = (typeof filter === \"function\" && !!filter(void 0)) || (typeof filter !== \"function\" && !!filter);\n if (defaultFilterPassed) {\n target[targetKey] = _value;\n }\n else if (customFilterPassed) {\n target[targetKey] = value();\n }\n }\n else {\n const defaultFilterPassed = filter === undefined && value != null;\n const customFilterPassed = (typeof filter === \"function\" && !!filter(value)) || (typeof filter !== \"function\" && !!filter);\n if (defaultFilterPassed || customFilterPassed) {\n target[targetKey] = value;\n }\n }\n};\nconst nonNullish = (_) => _ != null;\nconst pass = (_) => _;\n",
|
|
51
|
+
"export const _json = (obj) => {\n if (obj == null) {\n return {};\n }\n if (Array.isArray(obj)) {\n return obj.filter((_) => _ != null).map(_json);\n }\n if (typeof obj === \"object\") {\n const target = {};\n for (const key of Object.keys(obj)) {\n if (obj[key] == null) {\n continue;\n }\n target[key] = _json(obj[key]);\n }\n return target;\n }\n return obj;\n};\n"
|
|
52
|
+
],
|
|
53
|
+
"mappings": "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",
|
|
54
|
+
"debugId": "D0D9F117AEF79DA564756E2164756E21",
|
|
55
|
+
"names": []
|
|
56
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import"./chunk-wmwqxvdd.js";import"./chunk-z9166d8b.js";import{kb as i,lb as f}from"./chunk-9ttt4yty.js";import{rb as y,sb as K,tb as E,wb as C,xb as N}from"./chunk-ypq6q9tr.js";var F=(e)=>e&&(typeof e.sso_start_url==="string"||typeof e.sso_account_id==="string"||typeof e.sso_session==="string"||typeof e.sso_region==="string"||typeof e.sso_role_name==="string");var L=300000,_="To refresh this SSO session run 'aws sso login' with the corresponding profile.";var I={},M=async(e)=>{const{SSOOIDCClient:r}=await import("./chunk-qvwfj0bg.js");if(I[e])return I[e];const s=new r({region:e});return I[e]=s,s};var H=async(e,r)=>{const{CreateTokenCommand:s}=await import("./chunk-qvwfj0bg.js");return(await M(r)).send(new s({clientId:e.clientId,clientSecret:e.clientSecret,refreshToken:e.refreshToken,grantType:"refresh_token"}))};var v=(e)=>{if(e.expiration&&e.expiration.getTime()<Date.now())throw new f(`Token is expired. ${_}`,!1)};var m=(e,r,s=!1)=>{if(typeof r==="undefined")throw new f(`Value not present for '${e}' in SSO Token${s?". Cannot refresh":""}. ${_}`,!1)};import{promises as W}from"fs";var{writeFile:j}=W,b=(e,r)=>{const s=K(e),t=JSON.stringify(r,null,2);return j(s,t)};var G=new Date(0),U=(e={})=>async()=>{e.logger?.debug("@aws-sdk/token-providers - fromSso");const r=await N(e),s=y(e),t=r[s];if(!t)throw new f(`Profile '${s}' could not be found in shared credentials file.`,!1);else if(!t.sso_session)throw new f(`Profile '${s}' is missing required property 'sso_session'.`);const a=t.sso_session,c=(await C(e))[a];if(!c)throw new f(`Sso session '${a}' could not be found in shared credentials file.`,!1);for(let n of["sso_start_url","sso_region"])if(!c[n])throw new f(`Sso session '${a}' is missing required property '${n}'.`,!1);const{sso_start_url:p,sso_region:S}=c;let o;try{o=await E(a)}catch(n){throw new f(`The SSO session token associated with profile=${s} was not found or is invalid. ${_}`,!1)}m("accessToken",o.accessToken),m("expiresAt",o.expiresAt);const{accessToken:x,expiresAt:u}=o,l={token:x,expiration:new Date(u)};if(l.expiration.getTime()-Date.now()>L)return l;if(Date.now()-G.getTime()<30000)return v(l),l;m("clientId",o.clientId,!0),m("clientSecret",o.clientSecret,!0),m("refreshToken",o.refreshToken,!0);try{G.setTime(Date.now());const n=await H(o,S);m("accessToken",n.accessToken),m("expiresIn",n.expiresIn);const h=new Date(Date.now()+n.expiresIn*1000);try{await b(a,{...o,accessToken:n.accessToken,expiresAt:h.toISOString(),refreshToken:n.refreshToken})}catch(O){}return{token:n.accessToken,expiration:h}}catch(n){return v(l),l}};var T=!1,P=async({ssoStartUrl:e,ssoSession:r,ssoAccountId:s,ssoRegion:t,ssoRoleName:a,ssoClient:d,clientConfig:c,profile:p,logger:S})=>{let o;const x="To refresh this SSO session run aws sso login with the corresponding profile.";if(r)try{const g=await U({profile:p})();o={accessToken:g.token,expiresAt:new Date(g.expiration).toISOString()}}catch(g){throw new i(g.message,{tryNextLink:T,logger:S})}else try{o=await E(e)}catch(g){throw new i("The SSO session associated with this profile is invalid. To refresh this SSO session run aws sso login with the corresponding profile.",{tryNextLink:T,logger:S})}if(new Date(o.expiresAt).getTime()-Date.now()<=0)throw new i("The SSO session associated with this profile has expired. To refresh this SSO session run aws sso login with the corresponding profile.",{tryNextLink:T,logger:S});const{accessToken:u}=o,{SSOClient:l,GetRoleCredentialsCommand:n}=await import("./chunk-3wdxw25z.js"),h=d||new l(Object.assign({},c??{},{region:c?.region??t}));let O;try{O=await h.send(new n({accountId:s,roleName:a,accessToken:u}))}catch(g){throw new i(g,{tryNextLink:T,logger:S})}const{roleCredentials:{accessKeyId:w,secretAccessKey:k,sessionToken:R,expiration:D,credentialScope:A,accountId:$}={}}=O;if(!w||!k||!R||!D)throw new i("SSO returns an invalid temporary credential.",{tryNextLink:T,logger:S});return{accessKeyId:w,secretAccessKey:k,sessionToken:R,expiration:new Date(D),...A&&{credentialScope:A},...$&&{accountId:$}}};var q=(e,r)=>{const{sso_start_url:s,sso_account_id:t,sso_region:a,sso_role_name:d}=e;if(!s||!t||!a||!d)throw new i(`Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", "sso_region", "sso_role_name", "sso_start_url". Got ${Object.keys(e).join(", ")}\nReference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`,{tryNextLink:!1,logger:r});return e};var Ee=(e={})=>async()=>{e.logger?.debug("@aws-sdk/credential-provider-sso - fromSSO");const{ssoStartUrl:r,ssoAccountId:s,ssoRegion:t,ssoRoleName:a,ssoSession:d}=e,{ssoClient:c}=e,p=y(e);if(!r&&!s&&!t&&!a&&!d){const o=(await N(e))[p];if(!o)throw new i(`Profile ${p} was not found.`,{logger:e.logger});if(!F(o))throw new i(`Profile ${p} is not configured with SSO credentials.`,{logger:e.logger});if(o?.sso_session){const w=(await C(e))[o.sso_session],k=` configurations in profile ${p} and sso-session ${o.sso_session}`;if(t&&t!==w.sso_region)throw new i("Conflicting SSO region"+k,{tryNextLink:!1,logger:e.logger});if(r&&r!==w.sso_start_url)throw new i("Conflicting SSO start_url"+k,{tryNextLink:!1,logger:e.logger});o.sso_region=w.sso_region,o.sso_start_url=w.sso_start_url}const{sso_start_url:x,sso_account_id:u,sso_region:l,sso_role_name:n,sso_session:h}=q(o,e.logger);return P({ssoStartUrl:x,ssoSession:h,ssoAccountId:u,ssoRegion:l,ssoRoleName:n,ssoClient:c,clientConfig:e.clientConfig,profile:p})}else if(!r||!s||!t||!a)throw new i('Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"',{tryNextLink:!1,logger:e.logger});else return P({ssoStartUrl:r,ssoSession:d,ssoAccountId:s,ssoRegion:t,ssoRoleName:a,ssoClient:c,clientConfig:e.clientConfig,profile:p})};export{q as validateSsoProfile,F as isSsoProfile,Ee as fromSSO};
|
|
3
|
+
|
|
4
|
+
//# debugId=50DC90F391011DAA64756E2164756E21
|
|
5
|
+
//# sourceMappingURL=chunk-g0xhj6ac.js.map
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../node_modules/@aws-sdk/credential-provider-sso/dist-es/isSsoProfile.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/constants.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/getSsoOidcClient.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/getNewSsoOidcToken.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/validateTokenExpiry.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/validateTokenKey.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/writeSSOTokenToFile.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/fromSso.js", "../../../../../node_modules/@aws-sdk/credential-provider-sso/dist-es/resolveSSOCredentials.js", "../../../../../node_modules/@aws-sdk/credential-provider-sso/dist-es/validateSsoProfile.js", "../../../../../node_modules/@aws-sdk/credential-provider-sso/dist-es/fromSSO.js"],
|
|
4
|
+
"sourcesContent": [
|
|
5
|
+
"export const isSsoProfile = (arg) => arg &&\n (typeof arg.sso_start_url === \"string\" ||\n typeof arg.sso_account_id === \"string\" ||\n typeof arg.sso_session === \"string\" ||\n typeof arg.sso_region === \"string\" ||\n typeof arg.sso_role_name === \"string\");\n",
|
|
6
|
+
"export const EXPIRE_WINDOW_MS = 5 * 60 * 1000;\nexport const REFRESH_MESSAGE = `To refresh this SSO session run 'aws sso login' with the corresponding profile.`;\n",
|
|
7
|
+
"const ssoOidcClientsHash = {};\nexport const getSsoOidcClient = async (ssoRegion) => {\n const { SSOOIDCClient } = await import(\"@aws-sdk/client-sso-oidc\");\n if (ssoOidcClientsHash[ssoRegion]) {\n return ssoOidcClientsHash[ssoRegion];\n }\n const ssoOidcClient = new SSOOIDCClient({ region: ssoRegion });\n ssoOidcClientsHash[ssoRegion] = ssoOidcClient;\n return ssoOidcClient;\n};\n",
|
|
8
|
+
"import { getSsoOidcClient } from \"./getSsoOidcClient\";\nexport const getNewSsoOidcToken = async (ssoToken, ssoRegion) => {\n const { CreateTokenCommand } = await import(\"@aws-sdk/client-sso-oidc\");\n const ssoOidcClient = await getSsoOidcClient(ssoRegion);\n return ssoOidcClient.send(new CreateTokenCommand({\n clientId: ssoToken.clientId,\n clientSecret: ssoToken.clientSecret,\n refreshToken: ssoToken.refreshToken,\n grantType: \"refresh_token\",\n }));\n};\n",
|
|
9
|
+
"import { TokenProviderError } from \"@smithy/property-provider\";\nimport { REFRESH_MESSAGE } from \"./constants\";\nexport const validateTokenExpiry = (token) => {\n if (token.expiration && token.expiration.getTime() < Date.now()) {\n throw new TokenProviderError(`Token is expired. ${REFRESH_MESSAGE}`, false);\n }\n};\n",
|
|
10
|
+
"import { TokenProviderError } from \"@smithy/property-provider\";\nimport { REFRESH_MESSAGE } from \"./constants\";\nexport const validateTokenKey = (key, value, forRefresh = false) => {\n if (typeof value === \"undefined\") {\n throw new TokenProviderError(`Value not present for '${key}' in SSO Token${forRefresh ? \". Cannot refresh\" : \"\"}. ${REFRESH_MESSAGE}`, false);\n }\n};\n",
|
|
11
|
+
"import { getSSOTokenFilepath } from \"@smithy/shared-ini-file-loader\";\nimport { promises as fsPromises } from \"fs\";\nconst { writeFile } = fsPromises;\nexport const writeSSOTokenToFile = (id, ssoToken) => {\n const tokenFilepath = getSSOTokenFilepath(id);\n const tokenString = JSON.stringify(ssoToken, null, 2);\n return writeFile(tokenFilepath, tokenString);\n};\n",
|
|
12
|
+
"import { TokenProviderError } from \"@smithy/property-provider\";\nimport { getProfileName, getSSOTokenFromFile, loadSsoSessionData, parseKnownFiles, } from \"@smithy/shared-ini-file-loader\";\nimport { EXPIRE_WINDOW_MS, REFRESH_MESSAGE } from \"./constants\";\nimport { getNewSsoOidcToken } from \"./getNewSsoOidcToken\";\nimport { validateTokenExpiry } from \"./validateTokenExpiry\";\nimport { validateTokenKey } from \"./validateTokenKey\";\nimport { writeSSOTokenToFile } from \"./writeSSOTokenToFile\";\nconst lastRefreshAttemptTime = new Date(0);\nexport const fromSso = (init = {}) => async () => {\n init.logger?.debug(\"@aws-sdk/token-providers - fromSso\");\n const profiles = await parseKnownFiles(init);\n const profileName = getProfileName(init);\n const profile = profiles[profileName];\n if (!profile) {\n throw new TokenProviderError(`Profile '${profileName}' could not be found in shared credentials file.`, false);\n }\n else if (!profile[\"sso_session\"]) {\n throw new TokenProviderError(`Profile '${profileName}' is missing required property 'sso_session'.`);\n }\n const ssoSessionName = profile[\"sso_session\"];\n const ssoSessions = await loadSsoSessionData(init);\n const ssoSession = ssoSessions[ssoSessionName];\n if (!ssoSession) {\n throw new TokenProviderError(`Sso session '${ssoSessionName}' could not be found in shared credentials file.`, false);\n }\n for (const ssoSessionRequiredKey of [\"sso_start_url\", \"sso_region\"]) {\n if (!ssoSession[ssoSessionRequiredKey]) {\n throw new TokenProviderError(`Sso session '${ssoSessionName}' is missing required property '${ssoSessionRequiredKey}'.`, false);\n }\n }\n const ssoStartUrl = ssoSession[\"sso_start_url\"];\n const ssoRegion = ssoSession[\"sso_region\"];\n let ssoToken;\n try {\n ssoToken = await getSSOTokenFromFile(ssoSessionName);\n }\n catch (e) {\n throw new TokenProviderError(`The SSO session token associated with profile=${profileName} was not found or is invalid. ${REFRESH_MESSAGE}`, false);\n }\n validateTokenKey(\"accessToken\", ssoToken.accessToken);\n validateTokenKey(\"expiresAt\", ssoToken.expiresAt);\n const { accessToken, expiresAt } = ssoToken;\n const existingToken = { token: accessToken, expiration: new Date(expiresAt) };\n if (existingToken.expiration.getTime() - Date.now() > EXPIRE_WINDOW_MS) {\n return existingToken;\n }\n if (Date.now() - lastRefreshAttemptTime.getTime() < 30 * 1000) {\n validateTokenExpiry(existingToken);\n return existingToken;\n }\n validateTokenKey(\"clientId\", ssoToken.clientId, true);\n validateTokenKey(\"clientSecret\", ssoToken.clientSecret, true);\n validateTokenKey(\"refreshToken\", ssoToken.refreshToken, true);\n try {\n lastRefreshAttemptTime.setTime(Date.now());\n const newSsoOidcToken = await getNewSsoOidcToken(ssoToken, ssoRegion);\n validateTokenKey(\"accessToken\", newSsoOidcToken.accessToken);\n validateTokenKey(\"expiresIn\", newSsoOidcToken.expiresIn);\n const newTokenExpiration = new Date(Date.now() + newSsoOidcToken.expiresIn * 1000);\n try {\n await writeSSOTokenToFile(ssoSessionName, {\n ...ssoToken,\n accessToken: newSsoOidcToken.accessToken,\n expiresAt: newTokenExpiration.toISOString(),\n refreshToken: newSsoOidcToken.refreshToken,\n });\n }\n catch (error) {\n }\n return {\n token: newSsoOidcToken.accessToken,\n expiration: newTokenExpiration,\n };\n }\n catch (error) {\n validateTokenExpiry(existingToken);\n return existingToken;\n }\n};\n",
|
|
13
|
+
"import { fromSso as getSsoTokenProvider } from \"@aws-sdk/token-providers\";\nimport { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { getSSOTokenFromFile } from \"@smithy/shared-ini-file-loader\";\nconst SHOULD_FAIL_CREDENTIAL_CHAIN = false;\nexport const resolveSSOCredentials = async ({ ssoStartUrl, ssoSession, ssoAccountId, ssoRegion, ssoRoleName, ssoClient, clientConfig, profile, logger, }) => {\n let token;\n const refreshMessage = `To refresh this SSO session run aws sso login with the corresponding profile.`;\n if (ssoSession) {\n try {\n const _token = await getSsoTokenProvider({ profile })();\n token = {\n accessToken: _token.token,\n expiresAt: new Date(_token.expiration).toISOString(),\n };\n }\n catch (e) {\n throw new CredentialsProviderError(e.message, {\n tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n logger,\n });\n }\n }\n else {\n try {\n token = await getSSOTokenFromFile(ssoStartUrl);\n }\n catch (e) {\n throw new CredentialsProviderError(`The SSO session associated with this profile is invalid. ${refreshMessage}`, {\n tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n logger,\n });\n }\n }\n if (new Date(token.expiresAt).getTime() - Date.now() <= 0) {\n throw new CredentialsProviderError(`The SSO session associated with this profile has expired. ${refreshMessage}`, {\n tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n logger,\n });\n }\n const { accessToken } = token;\n const { SSOClient, GetRoleCredentialsCommand } = await import(\"./loadSso\");\n const sso = ssoClient ||\n new SSOClient(Object.assign({}, clientConfig ?? {}, {\n region: clientConfig?.region ?? ssoRegion,\n }));\n let ssoResp;\n try {\n ssoResp = await sso.send(new GetRoleCredentialsCommand({\n accountId: ssoAccountId,\n roleName: ssoRoleName,\n accessToken,\n }));\n }\n catch (e) {\n throw new CredentialsProviderError(e, {\n tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n logger,\n });\n }\n const { roleCredentials: { accessKeyId, secretAccessKey, sessionToken, expiration, credentialScope, accountId } = {}, } = ssoResp;\n if (!accessKeyId || !secretAccessKey || !sessionToken || !expiration) {\n throw new CredentialsProviderError(\"SSO returns an invalid temporary credential.\", {\n tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n logger,\n });\n }\n return {\n accessKeyId,\n secretAccessKey,\n sessionToken,\n expiration: new Date(expiration),\n ...(credentialScope && { credentialScope }),\n ...(accountId && { accountId }),\n };\n};\n",
|
|
14
|
+
"import { CredentialsProviderError } from \"@smithy/property-provider\";\nexport const validateSsoProfile = (profile, logger) => {\n const { sso_start_url, sso_account_id, sso_region, sso_role_name } = profile;\n if (!sso_start_url || !sso_account_id || !sso_region || !sso_role_name) {\n throw new CredentialsProviderError(`Profile is configured with invalid SSO credentials. Required parameters \"sso_account_id\", ` +\n `\"sso_region\", \"sso_role_name\", \"sso_start_url\". Got ${Object.keys(profile).join(\", \")}\\nReference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`, { tryNextLink: false, logger });\n }\n return profile;\n};\n",
|
|
15
|
+
"import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { getProfileName, loadSsoSessionData, parseKnownFiles } from \"@smithy/shared-ini-file-loader\";\nimport { isSsoProfile } from \"./isSsoProfile\";\nimport { resolveSSOCredentials } from \"./resolveSSOCredentials\";\nimport { validateSsoProfile } from \"./validateSsoProfile\";\nexport const fromSSO = (init = {}) => async () => {\n init.logger?.debug(\"@aws-sdk/credential-provider-sso - fromSSO\");\n const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;\n const { ssoClient } = init;\n const profileName = getProfileName(init);\n if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {\n const profiles = await parseKnownFiles(init);\n const profile = profiles[profileName];\n if (!profile) {\n throw new CredentialsProviderError(`Profile ${profileName} was not found.`, { logger: init.logger });\n }\n if (!isSsoProfile(profile)) {\n throw new CredentialsProviderError(`Profile ${profileName} is not configured with SSO credentials.`, {\n logger: init.logger,\n });\n }\n if (profile?.sso_session) {\n const ssoSessions = await loadSsoSessionData(init);\n const session = ssoSessions[profile.sso_session];\n const conflictMsg = ` configurations in profile ${profileName} and sso-session ${profile.sso_session}`;\n if (ssoRegion && ssoRegion !== session.sso_region) {\n throw new CredentialsProviderError(`Conflicting SSO region` + conflictMsg, {\n tryNextLink: false,\n logger: init.logger,\n });\n }\n if (ssoStartUrl && ssoStartUrl !== session.sso_start_url) {\n throw new CredentialsProviderError(`Conflicting SSO start_url` + conflictMsg, {\n tryNextLink: false,\n logger: init.logger,\n });\n }\n profile.sso_region = session.sso_region;\n profile.sso_start_url = session.sso_start_url;\n }\n const { sso_start_url, sso_account_id, sso_region, sso_role_name, sso_session } = validateSsoProfile(profile, init.logger);\n return resolveSSOCredentials({\n ssoStartUrl: sso_start_url,\n ssoSession: sso_session,\n ssoAccountId: sso_account_id,\n ssoRegion: sso_region,\n ssoRoleName: sso_role_name,\n ssoClient: ssoClient,\n clientConfig: init.clientConfig,\n profile: profileName,\n });\n }\n else if (!ssoStartUrl || !ssoAccountId || !ssoRegion || !ssoRoleName) {\n throw new CredentialsProviderError(\"Incomplete configuration. The fromSSO() argument hash must include \" +\n '\"ssoStartUrl\", \"ssoAccountId\", \"ssoRegion\", \"ssoRoleName\"', { tryNextLink: false, logger: init.logger });\n }\n else {\n return resolveSSOCredentials({\n ssoStartUrl,\n ssoSession,\n ssoAccountId,\n ssoRegion,\n ssoRoleName,\n ssoClient,\n clientConfig: init.clientConfig,\n profile: profileName,\n });\n }\n};\n"
|
|
16
|
+
],
|
|
17
|
+
"mappings": "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",
|
|
18
|
+
"debugId": "50DC90F391011DAA64756E2164756E21",
|
|
19
|
+
"names": []
|
|
20
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import"./chunk-zkm6377r.js";import{M as b}from"./chunk-wmwqxvdd.js";import{$ as jl,O as d0,P as H0,Q as A0,U as Al,V as U0,Y as Ll,Z as Rl,aa as al,ba as cl,ca as el,ea as B,fa as Hh,ga as t0,ja as L0,la as S,ma as u,oa as R0,pa as P0,qa as T,ra as j0,sa as pl,ta as nl,ua as S0,va as m0,wa as eh}from"./chunk-fwrsbrgr.js";import{$a as Gh,Ba as k0,Ca as K0,Da as F0,Ea as B0,Fa as y0,Ga as Ml,Ha as zl,Ia as Nl,Ja as Q0,Ka as bl,La as fl,Ma as Gl,Na as Il,Oa as Cl,Pa as Ol,Qa as X0,Ra as Xh,Sa as Y0,Ta as K,Ua as F,Va as Z0,Wa as gl,Xa as xl,Ya as $0,Za as il,_a as V0,ab as ol,bb as ul,cb as tl,db as h0,eb as J0,fb as D0}from"./chunk-thgep359.js";import"./chunk-z9166d8b.js";import{hb as f,ib as Tl}from"./chunk-hk94zddp.js";import"./chunk-9ttt4yty.js";import{pb as Yh}from"./chunk-yevqw8gq.js";import"./chunk-ypq6q9tr.js";var C=b(Xh(),1);var dl=b(Gh(),1);function D3(h){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"sts",region:h.region},propertiesExtractor:(w,l)=>({signingProperties:{config:w,context:l}})}}function wl(h){return{schemeId:"smithy.api#noAuth"}}var Hl=async(h,w,l)=>{return{operation:Gl(w).operation,region:await Il(h.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()}},Sl=(h)=>{const w=[];switch(h.operation){case"AssumeRoleWithSAML":{w.push(wl(h));break}case"AssumeRoleWithWebIdentity":{w.push(wl(h));break}default:w.push(D3(h))}return w},E3=(h)=>({...h,stsClientCtor:A}),ml=(h)=>{const w=E3(h);return{...dl.resolveAwsSdkSigV4Config(w)}};var Jl=(h)=>{return{...h,useDualstackEndpoint:h.useDualstackEndpoint??!1,useFipsEndpoint:h.useFipsEndpoint??!1,useGlobalEndpoint:h.useGlobalEndpoint??!1,defaultSigningName:"sts"}},D={UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}};var Dl={name:"@aws-sdk/client-sts",description:"AWS SDK for JavaScript Sts Client for Node.js, Browser and React Native",version:"3.632.0",scripts:{build:"concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'","build:cjs":"node ../../scripts/compilation/inline client-sts","build:es":"tsc -p tsconfig.es.json","build:include:deps":"lerna run --scope $npm_package_name --include-dependencies build","build:types":"rimraf ./dist-types tsconfig.types.tsbuildinfo && tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4",clean:"rimraf ./dist-* && rimraf *.tsbuildinfo","extract:docs":"api-extractor run --local","generate:client":"node ../../scripts/generate-clients/single-service --solo sts",test:"yarn test:unit","test:unit":"jest"},main:"./dist-cjs/index.js",types:"./dist-types/index.d.ts",module:"./dist-es/index.js",sideEffects:!1,dependencies:{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/client-sso-oidc":"3.632.0","@aws-sdk/core":"3.629.0","@aws-sdk/credential-provider-node":"3.632.0","@aws-sdk/middleware-host-header":"3.620.0","@aws-sdk/middleware-logger":"3.609.0","@aws-sdk/middleware-recursion-detection":"3.620.0","@aws-sdk/middleware-user-agent":"3.632.0","@aws-sdk/region-config-resolver":"3.614.0","@aws-sdk/types":"3.609.0","@aws-sdk/util-endpoints":"3.632.0","@aws-sdk/util-user-agent-browser":"3.609.0","@aws-sdk/util-user-agent-node":"3.614.0","@smithy/config-resolver":"^3.0.5","@smithy/core":"^2.3.2","@smithy/fetch-http-handler":"^3.2.4","@smithy/hash-node":"^3.0.3","@smithy/invalid-dependency":"^3.0.3","@smithy/middleware-content-length":"^3.0.5","@smithy/middleware-endpoint":"^3.1.0","@smithy/middleware-retry":"^3.0.14","@smithy/middleware-serde":"^3.0.3","@smithy/middleware-stack":"^3.0.3","@smithy/node-config-provider":"^3.1.4","@smithy/node-http-handler":"^3.1.4","@smithy/protocol-http":"^4.1.0","@smithy/smithy-client":"^3.1.12","@smithy/types":"^3.3.0","@smithy/url-parser":"^3.0.3","@smithy/util-base64":"^3.0.0","@smithy/util-body-length-browser":"^3.0.0","@smithy/util-body-length-node":"^3.0.0","@smithy/util-defaults-mode-browser":"^3.0.14","@smithy/util-defaults-mode-node":"^3.0.14","@smithy/util-endpoints":"^2.0.5","@smithy/util-middleware":"^3.0.3","@smithy/util-retry":"^3.0.3","@smithy/util-utf8":"^3.0.0",tslib:"^2.6.2"},devDependencies:{"@tsconfig/node16":"16.1.3","@types/node":"^16.18.96",concurrently:"7.0.0","downlevel-dts":"0.10.1",rimraf:"3.0.2",typescript:"~4.9.5"},engines:{node:">=16.0.0"},typesVersions:{"<4.0":{"dist-types/*":["dist-types/ts3.4/*"]}},files:["dist-*/**"],author:{name:"AWS SDK for JavaScript Team",url:"https://aws.amazon.com/javascript/"},license:"Apache-2.0",browser:{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.browser"},"react-native":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.native"},homepage:"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sts",repository:{type:"git",url:"https://github.com/aws/aws-sdk-js-v3.git",directory:"clients/client-sts"}};var Ih=b(Gh(),1);var l0=b(Xh(),1);var rl=b(Gh(),1),sl=b(Xh(),1);var El={["required"]:!1,["type"]:"String"},Qh={["required"]:!0,default:!1,["type"]:"Boolean"},Zl={["ref"]:"Endpoint"},kl={["fn"]:"isSet",["argv"]:[{["ref"]:"Region"}]},J={["ref"]:"Region"},Kl={["fn"]:"aws.partition",["argv"]:[J],assign:"PartitionResult"},$l={["ref"]:"UseFIPS"},Ul={["ref"]:"UseDualStack"},E={url:"https://sts.amazonaws.com",properties:{authSchemes:[{name:"sigv4",signingName:"sts",signingRegion:"us-east-1"}]},headers:{}},Z={},Fl={conditions:[{["fn"]:"stringEquals",["argv"]:[J,"aws-global"]}],["endpoint"]:E,["type"]:"endpoint"},Vl={["fn"]:"booleanEquals",["argv"]:[$l,!0]},Pl={["fn"]:"booleanEquals",["argv"]:[Ul,!0]},Bl={["fn"]:"getAttr",["argv"]:[{["ref"]:"PartitionResult"},"supportsFIPS"]},vl={["ref"]:"PartitionResult"},yl={["fn"]:"booleanEquals",["argv"]:[!0,{["fn"]:"getAttr",["argv"]:[vl,"supportsDualStack"]}]},Ql=[{["fn"]:"isSet",["argv"]:[Zl]}],Xl=[Vl],Yl=[Pl],K3={version:"1.0",parameters:{Region:El,UseDualStack:Qh,UseFIPS:Qh,Endpoint:El,UseGlobalEndpoint:Qh},rules:[{conditions:[{["fn"]:"booleanEquals",["argv"]:[{["ref"]:"UseGlobalEndpoint"},!0]},{["fn"]:"not",["argv"]:Ql},kl,Kl,{["fn"]:"booleanEquals",["argv"]:[$l,!1]},{["fn"]:"booleanEquals",["argv"]:[Ul,!1]}],rules:[{conditions:[{["fn"]:"stringEquals",["argv"]:[J,"ap-northeast-1"]}],endpoint:E,["type"]:"endpoint"},{conditions:[{["fn"]:"stringEquals",["argv"]:[J,"ap-south-1"]}],endpoint:E,["type"]:"endpoint"},{conditions:[{["fn"]:"stringEquals",["argv"]:[J,"ap-southeast-1"]}],endpoint:E,["type"]:"endpoint"},{conditions:[{["fn"]:"stringEquals",["argv"]:[J,"ap-southeast-2"]}],endpoint:E,["type"]:"endpoint"},Fl,{conditions:[{["fn"]:"stringEquals",["argv"]:[J,"ca-central-1"]}],endpoint:E,["type"]:"endpoint"},{conditions:[{["fn"]:"stringEquals",["argv"]:[J,"eu-central-1"]}],endpoint:E,["type"]:"endpoint"},{conditions:[{["fn"]:"stringEquals",["argv"]:[J,"eu-north-1"]}],endpoint:E,["type"]:"endpoint"},{conditions:[{["fn"]:"stringEquals",["argv"]:[J,"eu-west-1"]}],endpoint:E,["type"]:"endpoint"},{conditions:[{["fn"]:"stringEquals",["argv"]:[J,"eu-west-2"]}],endpoint:E,["type"]:"endpoint"},{conditions:[{["fn"]:"stringEquals",["argv"]:[J,"eu-west-3"]}],endpoint:E,["type"]:"endpoint"},{conditions:[{["fn"]:"stringEquals",["argv"]:[J,"sa-east-1"]}],endpoint:E,["type"]:"endpoint"},{conditions:[{["fn"]:"stringEquals",["argv"]:[J,"us-east-1"]}],endpoint:E,["type"]:"endpoint"},{conditions:[{["fn"]:"stringEquals",["argv"]:[J,"us-east-2"]}],endpoint:E,["type"]:"endpoint"},{conditions:[{["fn"]:"stringEquals",["argv"]:[J,"us-west-1"]}],endpoint:E,["type"]:"endpoint"},{conditions:[{["fn"]:"stringEquals",["argv"]:[J,"us-west-2"]}],endpoint:E,["type"]:"endpoint"},{endpoint:{url:"https://sts.{Region}.{PartitionResult#dnsSuffix}",properties:{authSchemes:[{name:"sigv4",signingName:"sts",signingRegion:"{Region}"}]},headers:Z},["type"]:"endpoint"}],["type"]:"tree"},{conditions:Ql,rules:[{conditions:Xl,error:"Invalid Configuration: FIPS and custom endpoint are not supported",["type"]:"error"},{conditions:Yl,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",["type"]:"error"},{endpoint:{url:Zl,properties:Z,headers:Z},["type"]:"endpoint"}],["type"]:"tree"},{conditions:[kl],rules:[{conditions:[Kl],rules:[{conditions:[Vl,Pl],rules:[{conditions:[{["fn"]:"booleanEquals",["argv"]:[!0,Bl]},yl],rules:[{endpoint:{url:"https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:Z,headers:Z},["type"]:"endpoint"}],["type"]:"tree"},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",["type"]:"error"}],["type"]:"tree"},{conditions:Xl,rules:[{conditions:[{["fn"]:"booleanEquals",["argv"]:[Bl,!0]}],rules:[{conditions:[{["fn"]:"stringEquals",["argv"]:[{["fn"]:"getAttr",["argv"]:[vl,"name"]},"aws-us-gov"]}],endpoint:{url:"https://sts.{Region}.amazonaws.com",properties:Z,headers:Z},["type"]:"endpoint"},{endpoint:{url:"https://sts-fips.{Region}.{PartitionResult#dnsSuffix}",properties:Z,headers:Z},["type"]:"endpoint"}],["type"]:"tree"},{error:"FIPS is enabled but this partition does not support FIPS",["type"]:"error"}],["type"]:"tree"},{conditions:Yl,rules:[{conditions:[yl],rules:[{endpoint:{url:"https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:Z,headers:Z},["type"]:"endpoint"}],["type"]:"tree"},{error:"DualStack is enabled but this partition does not support DualStack",["type"]:"error"}],["type"]:"tree"},Fl,{endpoint:{url:"https://sts.{Region}.{PartitionResult#dnsSuffix}",properties:Z,headers:Z},["type"]:"endpoint"}],["type"]:"tree"}],["type"]:"tree"},{error:"Invalid Configuration: Missing Region",["type"]:"error"}]},ql=K3;var Wl=(h,w={})=>{return zl(ql,{endpointParams:h,logger:w.logger})};Ml.aws=Nl;var _l=(h)=>{return{apiVersion:"2011-06-15",base64Decoder:h?.base64Decoder??Ll,base64Encoder:h?.base64Encoder??al,disableHostPrefix:h?.disableHostPrefix??!1,endpointProvider:h?.endpointProvider??Wl,extensions:h?.extensions??[],httpAuthSchemeProvider:h?.httpAuthSchemeProvider??Sl,httpAuthSchemes:h?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:(w)=>w.getIdentityProvider("aws.auth#sigv4"),signer:new rl.AwsSdkSigV4Signer},{schemeId:"smithy.api#noAuth",identityProvider:(w)=>w.getIdentityProvider("smithy.api#noAuth")||(async()=>({})),signer:new sl.NoAuthSigner}],logger:h?.logger??new Al,serviceId:h?.serviceId??"STS",urlParser:h?.urlParser??Tl,utf8Decoder:h?.utf8Decoder??Rl,utf8Encoder:h?.utf8Encoder??jl}};var w0=(h)=>{nl(process.version);const w=h0(h),l=()=>w().then(pl),G=_l(h);return Ih.emitWarningIfUnsupportedVersion(process.version),{...G,...h,runtime:"node",defaultsMode:w,bodyLengthChecker:h?.bodyLengthChecker??tl,credentialDefaultProvider:h?.credentialDefaultProvider??Yh,defaultUserAgentProvider:h?.defaultUserAgentProvider??ol({serviceId:G.serviceId,clientVersion:Dl.version}),httpAuthSchemes:h?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:(I)=>I.getIdentityProvider("aws.auth#sigv4")||(async(H)=>await Yh(H?.__config||{})()),signer:new Ih.AwsSdkSigV4Signer},{schemeId:"smithy.api#noAuth",identityProvider:(I)=>I.getIdentityProvider("smithy.api#noAuth")||(async()=>({})),signer:new l0.NoAuthSigner}],maxAttempts:h?.maxAttempts??f(xl),region:h?.region??f(Cl,Ol),requestHandler:cl.create(h?.requestHandler??l),retryMode:h?.retryMode??f({...il,default:async()=>(await l()).retryMode||gl}),sha256:h?.sha256??ul.bind(null,"sha256"),streamCollector:h?.streamCollector??el,useDualstackEndpoint:h?.useDualstackEndpoint??f(bl),useFipsEndpoint:h?.useFipsEndpoint??f(fl)}};var G0=(h)=>{const w=h.httpAuthSchemes;let{httpAuthSchemeProvider:l,credentials:G}=h;return{setHttpAuthScheme(I){const H=w.findIndex((d)=>d.schemeId===I.schemeId);if(H===-1)w.push(I);else w.splice(H,1,I)},httpAuthSchemes(){return w},setHttpAuthSchemeProvider(I){l=I},httpAuthSchemeProvider(){return l},setCredentials(I){G=I},credentials(){return G}}},I0=(h)=>{return{httpAuthSchemes:h.httpAuthSchemes(),httpAuthSchemeProvider:h.httpAuthSchemeProvider(),credentials:h.credentials()}};var dh=(h)=>h,E0=(h,w)=>{const l={...dh(J0(h)),...dh(S0(h)),...dh(d0(h)),...dh(G0(h))};return w.forEach((G)=>G.configure(l)),{...h,...D0(l),...m0(l),...H0(l),...I0(l)}};class A extends U0{constructor(...[h]){const w=w0(h||{}),l=Jl(w),G=y0(l),I=$0(G),H=X0(I),d=k0(H),Y=Z0(d),M=ml(Y),v=E0(M,h?.extensions||[]);super(v);this.config=v,this.middlewareStack.use(Q0(this.config)),this.middlewareStack.use(V0(this.config)),this.middlewareStack.use(Y0(this.config)),this.middlewareStack.use(K0(this.config)),this.middlewareStack.use(F0(this.config)),this.middlewareStack.use(B0(this.config)),this.middlewareStack.use(C.getHttpAuthSchemeEndpointRuleSetPlugin(this.config,{httpAuthSchemeParametersProvider:Hl,identityProviderConfigProvider:async(n)=>new C.DefaultIdentityProviderConfig({"aws.auth#sigv4":n.credentials})})),this.middlewareStack.use(C.getHttpSigningPlugin(this.config))}destroy(){super.destroy()}}class X extends P0{constructor(h){super(h);Object.setPrototypeOf(this,X.prototype)}}class Sh extends X{constructor(h){super({name:"ExpiredTokenException",$fault:"client",...h});this.name="ExpiredTokenException",this.$fault="client",Object.setPrototypeOf(this,Sh.prototype)}}class mh extends X{constructor(h){super({name:"MalformedPolicyDocumentException",$fault:"client",...h});this.name="MalformedPolicyDocumentException",this.$fault="client",Object.setPrototypeOf(this,mh.prototype)}}class Jh extends X{constructor(h){super({name:"PackedPolicyTooLargeException",$fault:"client",...h});this.name="PackedPolicyTooLargeException",this.$fault="client",Object.setPrototypeOf(this,Jh.prototype)}}class Dh extends X{constructor(h){super({name:"RegionDisabledException",$fault:"client",...h});this.name="RegionDisabledException",this.$fault="client",Object.setPrototypeOf(this,Dh.prototype)}}class Eh extends X{constructor(h){super({name:"IDPRejectedClaimException",$fault:"client",...h});this.name="IDPRejectedClaimException",this.$fault="client",Object.setPrototypeOf(this,Eh.prototype)}}class kh extends X{constructor(h){super({name:"InvalidIdentityTokenException",$fault:"client",...h});this.name="InvalidIdentityTokenException",this.$fault="client",Object.setPrototypeOf(this,kh.prototype)}}class Kh extends X{constructor(h){super({name:"IDPCommunicationErrorException",$fault:"client",...h});this.name="IDPCommunicationErrorException",this.$fault="client",Object.setPrototypeOf(this,Kh.prototype)}}class Fh extends X{constructor(h){super({name:"InvalidAuthorizationMessageException",$fault:"client",...h});this.name="InvalidAuthorizationMessageException",this.$fault="client",Object.setPrototypeOf(this,Fh.prototype)}}var o=(h)=>({...h,...h.SecretAccessKey&&{SecretAccessKey:Hh}}),v0=(h)=>({...h,...h.Credentials&&{Credentials:o(h.Credentials)}}),q0=(h)=>({...h,...h.SAMLAssertion&&{SAMLAssertion:Hh}}),M0=(h)=>({...h,...h.Credentials&&{Credentials:o(h.Credentials)}}),z0=(h)=>({...h,...h.WebIdentityToken&&{WebIdentityToken:Hh}}),N0=(h)=>({...h,...h.Credentials&&{Credentials:o(h.Credentials)}}),W0=(h)=>({...h,...h.Credentials&&{Credentials:o(h.Credentials)}}),T0=(h)=>({...h,...h.Credentials&&{Credentials:o(h.Credentials)}});var q=b(Gh(),1);var a0=async(h,w)=>{const l=j;let G;return G=_({...U3(h,w),[r]:t3,[s]:a}),R(w,l,"/",void 0,G)},r0=async(h,w)=>{const l=j;let G;return G=_({...V3(h,w),[r]:hw,[s]:a}),R(w,l,"/",void 0,G)},s0=async(h,w)=>{const l=j;let G;return G=_({...P3(h,w),[r]:lw,[s]:a}),R(w,l,"/",void 0,G)},_0=async(h,w)=>{const l=j;let G;return G=_({...v3(h,w),[r]:ww,[s]:a}),R(w,l,"/",void 0,G)},b0=async(h,w)=>{const l=j;let G;return G=_({...q3(h,w),[r]:Gw,[s]:a}),R(w,l,"/",void 0,G)},f0=async(h,w)=>{const l=j;let G;return G=_({...M3(h,w),[r]:Iw,[s]:a}),R(w,l,"/",void 0,G)},C0=async(h,w)=>{const l=j;let G;return G=_({...z3(h,w),[r]:dw,[s]:a}),R(w,l,"/",void 0,G)},O0=async(h,w)=>{const l=j;let G;return G=_({...N3(h,w),[r]:Hw,[s]:a}),R(w,l,"/",void 0,G)},g0=async(h,w)=>{if(h.statusCode>=300)return L(h,w);const l=await q.parseXmlBody(h.body,w);let G={};return G=j3(l.AssumeRoleResult,w),{$metadata:k(h),...G}},x0=async(h,w)=>{if(h.statusCode>=300)return L(h,w);const l=await q.parseXmlBody(h.body,w);let G={};return G=a3(l.AssumeRoleWithSAMLResult,w),{$metadata:k(h),...G}},i0=async(h,w)=>{if(h.statusCode>=300)return L(h,w);const l=await q.parseXmlBody(h.body,w);let G={};return G=r3(l.AssumeRoleWithWebIdentityResult,w),{$metadata:k(h),...G}},c0=async(h,w)=>{if(h.statusCode>=300)return L(h,w);const l=await q.parseXmlBody(h.body,w);let G={};return G=s3(l.DecodeAuthorizationMessageResult,w),{$metadata:k(h),...G}},e0=async(h,w)=>{if(h.statusCode>=300)return L(h,w);const l=await q.parseXmlBody(h.body,w);let G={};return G=f3(l.GetAccessKeyInfoResult,w),{$metadata:k(h),...G}},p0=async(h,w)=>{if(h.statusCode>=300)return L(h,w);const l=await q.parseXmlBody(h.body,w);let G={};return G=C3(l.GetCallerIdentityResult,w),{$metadata:k(h),...G}},n0=async(h,w)=>{if(h.statusCode>=300)return L(h,w);const l=await q.parseXmlBody(h.body,w);let G={};return G=O3(l.GetFederationTokenResult,w),{$metadata:k(h),...G}},o0=async(h,w)=>{if(h.statusCode>=300)return L(h,w);const l=await q.parseXmlBody(h.body,w);let G={};return G=g3(l.GetSessionTokenResult,w),{$metadata:k(h),...G}},L=async(h,w)=>{const l={...h,body:await q.parseXmlErrorBody(h.body,w)},G=Sw(h,l.body);switch(G){case"ExpiredTokenException":case"com.amazonaws.sts#ExpiredTokenException":throw await F3(l,w);case"MalformedPolicyDocument":case"com.amazonaws.sts#MalformedPolicyDocumentException":throw await Y3(l,w);case"PackedPolicyTooLarge":case"com.amazonaws.sts#PackedPolicyTooLargeException":throw await Z3(l,w);case"RegionDisabledException":case"com.amazonaws.sts#RegionDisabledException":throw await $3(l,w);case"IDPRejectedClaim":case"com.amazonaws.sts#IDPRejectedClaimException":throw await y3(l,w);case"InvalidIdentityToken":case"com.amazonaws.sts#InvalidIdentityTokenException":throw await X3(l,w);case"IDPCommunicationError":case"com.amazonaws.sts#IDPCommunicationErrorException":throw await B3(l,w);case"InvalidAuthorizationMessageException":case"com.amazonaws.sts#InvalidAuthorizationMessageException":throw await Q3(l,w);default:const I=l.body;return u3({output:h,parsedBody:I.Error,errorCode:G})}},F3=async(h,w)=>{const l=h.body,G=_3(l.Error,w),I=new Sh({$metadata:k(h),...G});return T(I,l)},B3=async(h,w)=>{const l=h.body,G=x3(l.Error,w),I=new Kh({$metadata:k(h),...G});return T(I,l)},y3=async(h,w)=>{const l=h.body,G=i3(l.Error,w),I=new Eh({$metadata:k(h),...G});return T(I,l)},Q3=async(h,w)=>{const l=h.body,G=c3(l.Error,w),I=new Fh({$metadata:k(h),...G});return T(I,l)},X3=async(h,w)=>{const l=h.body,G=e3(l.Error,w),I=new kh({$metadata:k(h),...G});return T(I,l)},Y3=async(h,w)=>{const l=h.body,G=p3(l.Error,w),I=new mh({$metadata:k(h),...G});return T(I,l)},Z3=async(h,w)=>{const l=h.body,G=n3(l.Error,w),I=new Jh({$metadata:k(h),...G});return T(I,l)},$3=async(h,w)=>{const l=h.body,G=o3(l.Error,w),I=new Dh({$metadata:k(h),...G});return T(I,l)},U3=(h,w)=>{const l={};if(h[W]!=null)l[W]=h[W];if(h[i]!=null)l[i]=h[i];if(h[U]!=null){const G=Bh(h[U],w);if(h[U]?.length===0)l.PolicyArns=[];Object.entries(G).forEach(([I,H])=>{const d=`PolicyArns.${I}`;l[d]=H})}if(h[$]!=null)l[$]=h[$];if(h[Q]!=null)l[Q]=h[Q];if(h[e]!=null){const G=u0(h[e],w);if(h[e]?.length===0)l.Tags=[];Object.entries(G).forEach(([I,H])=>{const d=`Tags.${I}`;l[d]=H})}if(h[Oh]!=null){const G=R3(h[Oh],w);if(h[Oh]?.length===0)l.TransitiveTagKeys=[];Object.entries(G).forEach(([I,H])=>{const d=`TransitiveTagKeys.${I}`;l[d]=H})}if(h[Ph]!=null)l[Ph]=h[Ph];if(h[c]!=null)l[c]=h[c];if(h[p]!=null)l[p]=h[p];if(h[P]!=null)l[P]=h[P];if(h[Rh]!=null){const G=A3(h[Rh],w);if(h[Rh]?.length===0)l.ProvidedContexts=[];Object.entries(G).forEach(([I,H])=>{const d=`ProvidedContexts.${I}`;l[d]=H})}return l},V3=(h,w)=>{const l={};if(h[W]!=null)l[W]=h[W];if(h[Ah]!=null)l[Ah]=h[Ah];if(h[_h]!=null)l[_h]=h[_h];if(h[U]!=null){const G=Bh(h[U],w);if(h[U]?.length===0)l.PolicyArns=[];Object.entries(G).forEach(([I,H])=>{const d=`PolicyArns.${I}`;l[d]=H})}if(h[$]!=null)l[$]=h[$];if(h[Q]!=null)l[Q]=h[Q];return l},P3=(h,w)=>{const l={};if(h[W]!=null)l[W]=h[W];if(h[i]!=null)l[i]=h[i];if(h[ih]!=null)l[ih]=h[ih];if(h[jh]!=null)l[jh]=h[jh];if(h[U]!=null){const G=Bh(h[U],w);if(h[U]?.length===0)l.PolicyArns=[];Object.entries(G).forEach(([I,H])=>{const d=`PolicyArns.${I}`;l[d]=H})}if(h[$]!=null)l[$]=h[$];if(h[Q]!=null)l[Q]=h[Q];return l},v3=(h,w)=>{const l={};if(h[vh]!=null)l[vh]=h[vh];return l},q3=(h,w)=>{const l={};if(h[O]!=null)l[O]=h[O];return l},M3=(h,w)=>{return{}},z3=(h,w)=>{const l={};if(h[Wh]!=null)l[Wh]=h[Wh];if(h[$]!=null)l[$]=h[$];if(h[U]!=null){const G=Bh(h[U],w);if(h[U]?.length===0)l.PolicyArns=[];Object.entries(G).forEach(([I,H])=>{const d=`PolicyArns.${I}`;l[d]=H})}if(h[Q]!=null)l[Q]=h[Q];if(h[e]!=null){const G=u0(h[e],w);if(h[e]?.length===0)l.Tags=[];Object.entries(G).forEach(([I,H])=>{const d=`Tags.${I}`;l[d]=H})}return l},N3=(h,w)=>{const l={};if(h[Q]!=null)l[Q]=h[Q];if(h[c]!=null)l[c]=h[c];if(h[p]!=null)l[p]=h[p];return l},Bh=(h,w)=>{const l={};let G=1;for(let I of h){if(I===null)continue;const H=W3(I,w);Object.entries(H).forEach(([d,Y])=>{l[`member.${G}.${d}`]=Y}),G++}return l},W3=(h,w)=>{const l={};if(h[ch]!=null)l[ch]=h[ch];return l},T3=(h,w)=>{const l={};if(h[Lh]!=null)l[Lh]=h[Lh];if(h[$h]!=null)l[$h]=h[$h];return l},A3=(h,w)=>{const l={};let G=1;for(let I of h){if(I===null)continue;const H=T3(I,w);Object.entries(H).forEach(([d,Y])=>{l[`member.${G}.${d}`]=Y}),G++}return l},L3=(h,w)=>{const l={};if(h[Nh]!=null)l[Nh]=h[Nh];if(h[xh]!=null)l[xh]=h[xh];return l},R3=(h,w)=>{const l={};let G=1;for(let I of h){if(I===null)continue;l[`member.${G}`]=I,G++}return l},u0=(h,w)=>{const l={};let G=1;for(let I of h){if(I===null)continue;const H=L3(I,w);Object.entries(H).forEach(([d,Y])=>{l[`member.${G}.${d}`]=Y}),G++}return l},ph=(h,w)=>{const l={};if(h[Zh]!=null)l[Zh]=S(h[Zh]);if(h[N]!=null)l[N]=S(h[N]);return l},j3=(h,w)=>{const l={};if(h[y]!=null)l[y]=t(h[y],w);if(h[z]!=null)l[z]=ph(h[z],w);if(h[V]!=null)l[V]=u(h[V]);if(h[P]!=null)l[P]=S(h[P]);return l},a3=(h,w)=>{const l={};if(h[y]!=null)l[y]=t(h[y],w);if(h[z]!=null)l[z]=ph(h[z],w);if(h[V]!=null)l[V]=u(h[V]);if(h[rh]!=null)l[rh]=S(h[rh]);if(h[fh]!=null)l[fh]=S(h[fh]);if(h[zh]!=null)l[zh]=S(h[zh]);if(h[x]!=null)l[x]=S(h[x]);if(h[Th]!=null)l[Th]=S(h[Th]);if(h[P]!=null)l[P]=S(h[P]);return l},r3=(h,w)=>{const l={};if(h[y]!=null)l[y]=t(h[y],w);if(h[bh]!=null)l[bh]=S(h[bh]);if(h[z]!=null)l[z]=ph(h[z],w);if(h[V]!=null)l[V]=u(h[V]);if(h[ah]!=null)l[ah]=S(h[ah]);if(h[x]!=null)l[x]=S(h[x]);if(h[P]!=null)l[P]=S(h[P]);return l},t=(h,w)=>{const l={};if(h[O]!=null)l[O]=S(h[O]);if(h[sh]!=null)l[sh]=S(h[sh]);if(h[Ch]!=null)l[Ch]=S(h[Ch]);if(h[Vh]!=null)l[Vh]=L0(R0(h[Vh]));return l},s3=(h,w)=>{const l={};if(h[Uh]!=null)l[Uh]=S(h[Uh]);return l},_3=(h,w)=>{const l={};if(h[m]!=null)l[m]=S(h[m]);return l},b3=(h,w)=>{const l={};if(h[Mh]!=null)l[Mh]=S(h[Mh]);if(h[N]!=null)l[N]=S(h[N]);return l},f3=(h,w)=>{const l={};if(h[g]!=null)l[g]=S(h[g]);return l},C3=(h,w)=>{const l={};if(h[gh]!=null)l[gh]=S(h[gh]);if(h[g]!=null)l[g]=S(h[g]);if(h[N]!=null)l[N]=S(h[N]);return l},O3=(h,w)=>{const l={};if(h[y]!=null)l[y]=t(h[y],w);if(h[qh]!=null)l[qh]=b3(h[qh],w);if(h[V]!=null)l[V]=u(h[V]);return l},g3=(h,w)=>{const l={};if(h[y]!=null)l[y]=t(h[y],w);return l},x3=(h,w)=>{const l={};if(h[m]!=null)l[m]=S(h[m]);return l},i3=(h,w)=>{const l={};if(h[m]!=null)l[m]=S(h[m]);return l},c3=(h,w)=>{const l={};if(h[m]!=null)l[m]=S(h[m]);return l},e3=(h,w)=>{const l={};if(h[m]!=null)l[m]=S(h[m]);return l},p3=(h,w)=>{const l={};if(h[m]!=null)l[m]=S(h[m]);return l},n3=(h,w)=>{const l={};if(h[m]!=null)l[m]=S(h[m]);return l},o3=(h,w)=>{const l={};if(h[m]!=null)l[m]=S(h[m]);return l},k=(h)=>({httpStatusCode:h.statusCode,requestId:h.headers["x-amzn-requestid"]??h.headers["x-amzn-request-id"]??h.headers["x-amz-request-id"],extendedRequestId:h.headers["x-amz-id-2"],cfId:h.headers["x-amz-cf-id"]});var u3=j0(X),R=async(h,w,l,G,I)=>{const{hostname:H,protocol:d="https",port:Y,path:M}=await h.endpoint(),v={protocol:d,hostname:H,port:Y,method:"POST",path:M.endsWith("/")?M.slice(0,-1)+l:M+l,headers:w};if(G!==void 0)v.hostname=G;if(I!==void 0)v.body=I;return new A0(v)},j={"content-type":"application/x-www-form-urlencoded"},a="2011-06-15",r="Action",O="AccessKeyId",t3="AssumeRole",Zh="AssumedRoleId",z="AssumedRoleUser",hw="AssumeRoleWithSAML",lw="AssumeRoleWithWebIdentity",g="Account",N="Arn",x="Audience",y="Credentials",$h="ContextAssertion",ww="DecodeAuthorizationMessage",Uh="DecodedMessage",Q="DurationSeconds",Vh="Expiration",Ph="ExternalId",vh="EncodedMessage",qh="FederatedUser",Mh="FederatedUserId",Gw="GetAccessKeyInfo",Iw="GetCallerIdentity",dw="GetFederationToken",Hw="GetSessionToken",zh="Issuer",Nh="Key",Wh="Name",Th="NameQualifier",$="Policy",U="PolicyArns",Ah="PrincipalArn",Lh="ProviderArn",Rh="ProvidedContexts",jh="ProviderId",V="PackedPolicySize",ah="Provider",W="RoleArn",i="RoleSessionName",rh="Subject",sh="SecretAccessKey",_h="SAMLAssertion",bh="SubjectFromWebIdentityToken",P="SourceIdentity",c="SerialNumber",fh="SubjectType",Ch="SessionToken",e="Tags",p="TokenCode",Oh="TransitiveTagKeys",gh="UserId",s="Version",xh="Value",ih="WebIdentityToken",ch="arn",m="message",_=(h)=>Object.entries(h).map(([w,l])=>eh(w)+"="+eh(l)).join("&"),Sw=(h,w)=>{if(w.Error?.Code!==void 0)return w.Error.Code;if(h.statusCode==404)return"NotFound"};class hh extends B.classBuilder().ep({...D}).m(function(h,w,l,G){return[K(l,this.serialize,this.deserialize),F(l,h.getEndpointParameterInstructions())]}).s("AWSSecurityTokenServiceV20110615","AssumeRole",{}).n("STSClient","AssumeRoleCommand").f(void 0,v0).ser(a0).de(g0).build(){}class nh extends B.classBuilder().ep({...D}).m(function(h,w,l,G){return[K(l,this.serialize,this.deserialize),F(l,h.getEndpointParameterInstructions())]}).s("AWSSecurityTokenServiceV20110615","AssumeRoleWithSAML",{}).n("STSClient","AssumeRoleWithSAMLCommand").f(q0,M0).ser(r0).de(x0).build(){}class lh extends B.classBuilder().ep({...D}).m(function(h,w,l,G){return[K(l,this.serialize,this.deserialize),F(l,h.getEndpointParameterInstructions())]}).s("AWSSecurityTokenServiceV20110615","AssumeRoleWithWebIdentity",{}).n("STSClient","AssumeRoleWithWebIdentityCommand").f(z0,N0).ser(s0).de(i0).build(){}class oh extends B.classBuilder().ep({...D}).m(function(h,w,l,G){return[K(l,this.serialize,this.deserialize),F(l,h.getEndpointParameterInstructions())]}).s("AWSSecurityTokenServiceV20110615","DecodeAuthorizationMessage",{}).n("STSClient","DecodeAuthorizationMessageCommand").f(void 0,void 0).ser(_0).de(c0).build(){}class uh extends B.classBuilder().ep({...D}).m(function(h,w,l,G){return[K(l,this.serialize,this.deserialize),F(l,h.getEndpointParameterInstructions())]}).s("AWSSecurityTokenServiceV20110615","GetAccessKeyInfo",{}).n("STSClient","GetAccessKeyInfoCommand").f(void 0,void 0).ser(b0).de(e0).build(){}class th extends B.classBuilder().ep({...D}).m(function(h,w,l,G){return[K(l,this.serialize,this.deserialize),F(l,h.getEndpointParameterInstructions())]}).s("AWSSecurityTokenServiceV20110615","GetCallerIdentity",{}).n("STSClient","GetCallerIdentityCommand").f(void 0,void 0).ser(f0).de(p0).build(){}class hl extends B.classBuilder().ep({...D}).m(function(h,w,l,G){return[K(l,this.serialize,this.deserialize),F(l,h.getEndpointParameterInstructions())]}).s("AWSSecurityTokenServiceV20110615","GetFederationToken",{}).n("STSClient","GetFederationTokenCommand").f(void 0,W0).ser(C0).de(n0).build(){}class ll extends B.classBuilder().ep({...D}).m(function(h,w,l,G){return[K(l,this.serialize,this.deserialize),F(l,h.getEndpointParameterInstructions())]}).s("AWSSecurityTokenServiceV20110615","GetSessionToken",{}).n("STSClient","GetSessionTokenCommand").f(void 0,T0).ser(O0).de(o0).build(){}var mw={AssumeRoleCommand:hh,AssumeRoleWithSAMLCommand:nh,AssumeRoleWithWebIdentityCommand:lh,DecodeAuthorizationMessageCommand:oh,GetAccessKeyInfoCommand:uh,GetCallerIdentityCommand:th,GetFederationTokenCommand:hl,GetSessionTokenCommand:ll};class h3 extends A{}t0(mw,h3);var l3="us-east-1",w3=(h)=>{if(typeof h?.Arn==="string"){const w=h.Arn.split(":");if(w.length>4&&w[4]!=="")return w[4]}return},G3=async(h,w,l)=>{const G=typeof h==="function"?await h():h,I=typeof w==="function"?await w():w;return l?.debug?.("@aws-sdk/client-sts::resolveRegion","accepting first of:",`${G} (provider)`,`${I} (parent client)`,`${l3} (STS default)`),G??I??l3},I3=(h,w)=>{let l,G;return async(I,H)=>{if(G=I,!l){const{logger:v=h?.parentClientConfig?.logger,region:n,requestHandler:wh=h?.parentClientConfig?.requestHandler,credentialProviderLogger:yh}=h,m3=await G3(n,h?.parentClientConfig?.region,yh),J3=!H3(wh);l=new w({credentialDefaultProvider:()=>async()=>G,region:m3,requestHandler:J3?wh:void 0,logger:v})}const{Credentials:d,AssumedRoleUser:Y}=await l.send(new hh(H));if(!d||!d.AccessKeyId||!d.SecretAccessKey)throw new Error(`Invalid response from STS.assumeRole call with role ${H.RoleArn}`);const M=w3(Y);return{accessKeyId:d.AccessKeyId,secretAccessKey:d.SecretAccessKey,sessionToken:d.SessionToken,expiration:d.Expiration,...d.CredentialScope&&{credentialScope:d.CredentialScope},...M&&{accountId:M}}}},d3=(h,w)=>{let l;return async(G)=>{if(!l){const{logger:Y=h?.parentClientConfig?.logger,region:M,requestHandler:v=h?.parentClientConfig?.requestHandler,credentialProviderLogger:n}=h,wh=await G3(M,h?.parentClientConfig?.region,n),yh=!H3(v);l=new w({region:wh,requestHandler:yh?v:void 0,logger:Y})}const{Credentials:I,AssumedRoleUser:H}=await l.send(new lh(G));if(!I||!I.AccessKeyId||!I.SecretAccessKey)throw new Error(`Invalid response from STS.assumeRoleWithWebIdentity call with role ${G.RoleArn}`);const d=w3(H);return{accessKeyId:I.AccessKeyId,secretAccessKey:I.SecretAccessKey,sessionToken:I.SessionToken,expiration:I.Expiration,...I.CredentialScope&&{credentialScope:I.CredentialScope},...d&&{accountId:d}}}};var H3=(h)=>{return h?.metadata?.handlerProtocol==="h2"};var S3=(h,w)=>{if(!w)return h;else return class l extends h{constructor(G){super(G);for(let I of w)this.middlewareStack.use(I)}}},Jw=(h={},w)=>I3(h,S3(A,w)),Dw=(h={},w)=>d3(h,S3(A,w)),jI=(h)=>(w)=>h({roleAssumer:Jw(w),roleAssumerWithWebIdentity:Dw(w),...w});export{Dw as getDefaultRoleAssumerWithWebIdentity,Jw as getDefaultRoleAssumer,jI as decorateDefaultCredentialProvider,U0 as __Client,X as STSServiceException,A as STSClient,h3 as STS,Dh as RegionDisabledException,Jh as PackedPolicyTooLargeException,mh as MalformedPolicyDocumentException,kh as InvalidIdentityTokenException,Fh as InvalidAuthorizationMessageException,Eh as IDPRejectedClaimException,Kh as IDPCommunicationErrorException,T0 as GetSessionTokenResponseFilterSensitiveLog,ll as GetSessionTokenCommand,W0 as GetFederationTokenResponseFilterSensitiveLog,hl as GetFederationTokenCommand,th as GetCallerIdentityCommand,uh as GetAccessKeyInfoCommand,Sh as ExpiredTokenException,oh as DecodeAuthorizationMessageCommand,o as CredentialsFilterSensitiveLog,N0 as AssumeRoleWithWebIdentityResponseFilterSensitiveLog,z0 as AssumeRoleWithWebIdentityRequestFilterSensitiveLog,lh as AssumeRoleWithWebIdentityCommand,M0 as AssumeRoleWithSAMLResponseFilterSensitiveLog,q0 as AssumeRoleWithSAMLRequestFilterSensitiveLog,nh as AssumeRoleWithSAMLCommand,v0 as AssumeRoleResponseFilterSensitiveLog,hh as AssumeRoleCommand,B as $Command};
|
|
3
|
+
|
|
4
|
+
//# debugId=21A4BAD2CA11B99464756E2164756E21
|
|
5
|
+
//# sourceMappingURL=chunk-g8thtxy5.js.map
|