@etainabl/nodejs-sdk 1.3.167 → 1.3.174

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/dist/esm/{chunk-IMDTX6W5.js → chunk-3G3VXGQN.js} +4 -4
  2. package/dist/esm/{chunk-YFU6P2WU.js → chunk-4G647IUM.js} +2 -2
  3. package/dist/esm/{chunk-STQV3LF2.js → chunk-4JDZJVKZ.js} +2 -2
  4. package/dist/esm/{chunk-ZW5YT27C.js → chunk-CRX53WMM.js} +100 -47
  5. package/dist/esm/chunk-CRX53WMM.js.map +1 -0
  6. package/dist/esm/{chunk-JI6PVVK3.js → chunk-D74LA2XQ.js} +73 -39
  7. package/dist/esm/chunk-D74LA2XQ.js.map +1 -0
  8. package/dist/esm/{chunk-COGWOFTA.js → chunk-HR3W7R4B.js} +393 -542
  9. package/dist/esm/chunk-HR3W7R4B.js.map +1 -0
  10. package/dist/esm/{chunk-R2ZTENKB.js → chunk-IX2LY325.js} +4 -3
  11. package/dist/esm/chunk-IX2LY325.js.map +1 -0
  12. package/dist/esm/{chunk-72KZNKH6.js → chunk-KWPO3OOT.js} +6 -6
  13. package/dist/esm/{chunk-3J7VUCCC.js → chunk-UR6FJOYI.js} +12 -10
  14. package/dist/esm/chunk-UR6FJOYI.js.map +1 -0
  15. package/dist/esm/{chunk-LARQKHST.js → chunk-XARQOPCZ.js} +2 -2
  16. package/dist/esm/{chunk-STDLTQUB.js → chunk-YLT3BSXS.js} +2 -2
  17. package/dist/esm/{chunk-KH6HADHN.js → chunk-Z63CAAFL.js} +14 -2
  18. package/dist/esm/chunk-Z63CAAFL.js.map +1 -0
  19. package/dist/esm/{dist-es-LSJVIQHH.js → dist-es-5JWI4CRR.js} +6 -6
  20. package/dist/esm/{dist-es-RLY6WB4O.js → dist-es-JA6GH4HX.js} +3 -3
  21. package/dist/esm/{dist-es-DNTTNOP2.js → dist-es-JPDE6SED.js} +7 -6
  22. package/dist/esm/dist-es-JPDE6SED.js.map +1 -0
  23. package/dist/esm/{dist-es-4M6QLI3Z.js → dist-es-LLOEQMJI.js} +4 -6
  24. package/dist/esm/{dist-es-4M6QLI3Z.js.map → dist-es-LLOEQMJI.js.map} +1 -1
  25. package/dist/esm/{dist-es-QLMS2EJQ.js → dist-es-MHVHZTM3.js} +3 -3
  26. package/dist/esm/{dist-es-VW2LACDX.js → dist-es-QWNQVMYC.js} +13 -43
  27. package/dist/esm/dist-es-QWNQVMYC.js.map +1 -0
  28. package/dist/esm/{dist-es-OELE3ZU6.js → dist-es-XOZGODLE.js} +13 -15
  29. package/dist/esm/{dist-es-OELE3ZU6.js.map → dist-es-XOZGODLE.js.map} +1 -1
  30. package/dist/esm/{event-streams-JLZWM2TX.js → event-streams-XQKMMN5Z.js} +52 -12
  31. package/dist/esm/event-streams-XQKMMN5Z.js.map +1 -0
  32. package/dist/esm/index.js +2768 -2795
  33. package/dist/esm/index.js.map +1 -1
  34. package/dist/esm/{loadSso-OCDZAUKH.js → loadSso-66ZTLICD.js} +30 -31
  35. package/dist/esm/loadSso-66ZTLICD.js.map +1 -0
  36. package/dist/esm/{sso-oidc-M2EXZ76U.js → sso-oidc-Z2X56STB.js} +14 -15
  37. package/dist/esm/{sso-oidc-M2EXZ76U.js.map → sso-oidc-Z2X56STB.js.map} +1 -1
  38. package/dist/esm/{sts-KKJVSQNR.js → sts-XINKL27T.js} +15 -16
  39. package/dist/esm/{sts-KKJVSQNR.js.map → sts-XINKL27T.js.map} +1 -1
  40. package/dist/index.d.cts +168 -242
  41. package/dist/index.d.ts +168 -242
  42. package/dist/index.js +62437 -62510
  43. package/dist/index.js.map +1 -1
  44. package/package.json +4 -3
  45. package/dist/esm/chunk-3J7VUCCC.js.map +0 -1
  46. package/dist/esm/chunk-5UJEKK4C.js +0 -22
  47. package/dist/esm/chunk-5UJEKK4C.js.map +0 -1
  48. package/dist/esm/chunk-COGWOFTA.js.map +0 -1
  49. package/dist/esm/chunk-GA2PLVMV.js +0 -29
  50. package/dist/esm/chunk-GA2PLVMV.js.map +0 -1
  51. package/dist/esm/chunk-JI6PVVK3.js.map +0 -1
  52. package/dist/esm/chunk-KH6HADHN.js.map +0 -1
  53. package/dist/esm/chunk-R2ZTENKB.js.map +0 -1
  54. package/dist/esm/chunk-ZW5YT27C.js.map +0 -1
  55. package/dist/esm/dist-es-DNTTNOP2.js.map +0 -1
  56. package/dist/esm/dist-es-VW2LACDX.js.map +0 -1
  57. package/dist/esm/event-streams-JLZWM2TX.js.map +0 -1
  58. package/dist/esm/loadSso-OCDZAUKH.js.map +0 -1
  59. /package/dist/esm/{chunk-IMDTX6W5.js.map → chunk-3G3VXGQN.js.map} +0 -0
  60. /package/dist/esm/{chunk-YFU6P2WU.js.map → chunk-4G647IUM.js.map} +0 -0
  61. /package/dist/esm/{chunk-STQV3LF2.js.map → chunk-4JDZJVKZ.js.map} +0 -0
  62. /package/dist/esm/{chunk-72KZNKH6.js.map → chunk-KWPO3OOT.js.map} +0 -0
  63. /package/dist/esm/{chunk-LARQKHST.js.map → chunk-XARQOPCZ.js.map} +0 -0
  64. /package/dist/esm/{chunk-STDLTQUB.js.map → chunk-YLT3BSXS.js.map} +0 -0
  65. /package/dist/esm/{dist-es-LSJVIQHH.js.map → dist-es-5JWI4CRR.js.map} +0 -0
  66. /package/dist/esm/{dist-es-RLY6WB4O.js.map → dist-es-JA6GH4HX.js.map} +0 -0
  67. /package/dist/esm/{dist-es-QLMS2EJQ.js.map → dist-es-MHVHZTM3.js.map} +0 -0
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  chain
3
- } from "./chunk-STQV3LF2.js";
3
+ } from "./chunk-4JDZJVKZ.js";
4
4
  import {
5
5
  getProfileName,
6
6
  loadSharedConfigFiles
7
- } from "./chunk-ZW5YT27C.js";
7
+ } from "./chunk-CRX53WMM.js";
8
8
  import {
9
9
  CredentialsProviderError
10
- } from "./chunk-R2ZTENKB.js";
10
+ } from "./chunk-IX2LY325.js";
11
11
 
12
12
  // node_modules/@smithy/querystring-parser/dist-es/index.js
13
13
  function parseQueryString(querystring) {
@@ -161,4 +161,4 @@ export {
161
161
  memoize,
162
162
  loadConfig
163
163
  };
164
- //# sourceMappingURL=chunk-IMDTX6W5.js.map
164
+ //# sourceMappingURL=chunk-3G3VXGQN.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  collectBodyString
3
- } from "./chunk-COGWOFTA.js";
3
+ } from "./chunk-HR3W7R4B.js";
4
4
 
5
5
  // node_modules/@smithy/smithy-client/dist-es/get-value-from-text-node.js
6
6
  var getValueFromTextNode = (obj) => {
@@ -1421,4 +1421,4 @@ export {
1421
1421
  parseXmlErrorBody,
1422
1422
  loadRestXmlErrorCode
1423
1423
  };
1424
- //# sourceMappingURL=chunk-YFU6P2WU.js.map
1424
+ //# sourceMappingURL=chunk-4G647IUM.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  ProviderError
3
- } from "./chunk-R2ZTENKB.js";
3
+ } from "./chunk-IX2LY325.js";
4
4
 
5
5
  // node_modules/@smithy/property-provider/dist-es/chain.js
6
6
  var chain = (...providers) => async () => {
@@ -26,4 +26,4 @@ var chain = (...providers) => async () => {
26
26
  export {
27
27
  chain
28
28
  };
29
- //# sourceMappingURL=chunk-STQV3LF2.js.map
29
+ //# sourceMappingURL=chunk-4JDZJVKZ.js.map
@@ -45,6 +45,9 @@ var IniSectionType;
45
45
  // node_modules/@smithy/shared-ini-file-loader/dist-es/loadSharedConfigFiles.js
46
46
  import { join as join3 } from "path";
47
47
 
48
+ // node_modules/@smithy/shared-ini-file-loader/dist-es/constants.js
49
+ var CONFIG_PREFIX_SEPARATOR = ".";
50
+
48
51
  // node_modules/@smithy/shared-ini-file-loader/dist-es/getConfigData.js
49
52
  var getConfigData = (data) => Object.entries(data).filter(([key]) => {
50
53
  const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);
@@ -66,46 +69,6 @@ import { join as join2 } from "path";
66
69
  var ENV_CREDENTIALS_PATH = "AWS_SHARED_CREDENTIALS_FILE";
67
70
  var getCredentialsFilepath = () => process.env[ENV_CREDENTIALS_PATH] || join2(getHomeDir(), ".aws", "credentials");
68
71
 
69
- // node_modules/@smithy/shared-ini-file-loader/dist-es/slurpFile.js
70
- import { promises as fsPromises } from "fs";
71
- var { readFile } = fsPromises;
72
- var filePromisesHash = {};
73
- var slurpFile = (path, options) => {
74
- if (!filePromisesHash[path] || options?.ignoreCache) {
75
- filePromisesHash[path] = readFile(path, "utf8");
76
- }
77
- return filePromisesHash[path];
78
- };
79
-
80
- // node_modules/@smithy/shared-ini-file-loader/dist-es/loadSharedConfigFiles.js
81
- var swallowError = () => ({});
82
- var CONFIG_PREFIX_SEPARATOR = ".";
83
- var loadSharedConfigFiles = async (init = {}) => {
84
- const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init;
85
- const homeDir = getHomeDir();
86
- const relativeHomeDirPrefix = "~/";
87
- let resolvedFilepath = filepath;
88
- if (filepath.startsWith(relativeHomeDirPrefix)) {
89
- resolvedFilepath = join3(homeDir, filepath.slice(2));
90
- }
91
- let resolvedConfigFilepath = configFilepath;
92
- if (configFilepath.startsWith(relativeHomeDirPrefix)) {
93
- resolvedConfigFilepath = join3(homeDir, configFilepath.slice(2));
94
- }
95
- const parsedFiles = await Promise.all([
96
- slurpFile(resolvedConfigFilepath, {
97
- ignoreCache: init.ignoreCache
98
- }).then(parseIni).then(getConfigData).catch(swallowError),
99
- slurpFile(resolvedFilepath, {
100
- ignoreCache: init.ignoreCache
101
- }).then(parseIni).catch(swallowError)
102
- ]);
103
- return {
104
- configFile: parsedFiles[0],
105
- credentialsFile: parsedFiles[1]
106
- };
107
- };
108
-
109
72
  // node_modules/@smithy/shared-ini-file-loader/dist-es/parseIni.js
110
73
  var prefixKeyRegex = /^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/;
111
74
  var profileNameBlockList = ["__proto__", "profile __proto__"];
@@ -155,15 +118,105 @@ var parseIni = (iniData) => {
155
118
  return map;
156
119
  };
157
120
 
121
+ // node_modules/@smithy/shared-ini-file-loader/dist-es/readFile.js
122
+ import { readFile as fsReadFile } from "node:fs/promises";
123
+ var filePromises = {};
124
+ var fileIntercept = {};
125
+ var readFile = (path, options) => {
126
+ if (fileIntercept[path] !== void 0) {
127
+ return fileIntercept[path];
128
+ }
129
+ if (!filePromises[path] || options?.ignoreCache) {
130
+ filePromises[path] = fsReadFile(path, "utf8");
131
+ }
132
+ return filePromises[path];
133
+ };
134
+
135
+ // node_modules/@smithy/shared-ini-file-loader/dist-es/loadSharedConfigFiles.js
136
+ var swallowError = () => ({});
137
+ var loadSharedConfigFiles = async (init = {}) => {
138
+ const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init;
139
+ const homeDir = getHomeDir();
140
+ const relativeHomeDirPrefix = "~/";
141
+ let resolvedFilepath = filepath;
142
+ if (filepath.startsWith(relativeHomeDirPrefix)) {
143
+ resolvedFilepath = join3(homeDir, filepath.slice(2));
144
+ }
145
+ let resolvedConfigFilepath = configFilepath;
146
+ if (configFilepath.startsWith(relativeHomeDirPrefix)) {
147
+ resolvedConfigFilepath = join3(homeDir, configFilepath.slice(2));
148
+ }
149
+ const parsedFiles = await Promise.all([
150
+ readFile(resolvedConfigFilepath, {
151
+ ignoreCache: init.ignoreCache
152
+ }).then(parseIni).then(getConfigData).catch(swallowError),
153
+ readFile(resolvedFilepath, {
154
+ ignoreCache: init.ignoreCache
155
+ }).then(parseIni).catch(swallowError)
156
+ ]);
157
+ return {
158
+ configFile: parsedFiles[0],
159
+ credentialsFile: parsedFiles[1]
160
+ };
161
+ };
162
+
163
+ // node_modules/@smithy/shared-ini-file-loader/dist-es/getSsoSessionData.js
164
+ var getSsoSessionData = (data) => Object.entries(data).filter(([key]) => key.startsWith(IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {});
165
+
166
+ // node_modules/@smithy/shared-ini-file-loader/dist-es/loadSsoSessionData.js
167
+ var swallowError2 = () => ({});
168
+ var loadSsoSessionData = async (init = {}) => readFile(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2);
169
+
170
+ // node_modules/@smithy/shared-ini-file-loader/dist-es/mergeConfigFiles.js
171
+ var mergeConfigFiles = (...files) => {
172
+ const merged = {};
173
+ for (const file of files) {
174
+ for (const [key, values] of Object.entries(file)) {
175
+ if (merged[key] !== void 0) {
176
+ Object.assign(merged[key], values);
177
+ } else {
178
+ merged[key] = values;
179
+ }
180
+ }
181
+ }
182
+ return merged;
183
+ };
184
+
185
+ // node_modules/@smithy/shared-ini-file-loader/dist-es/parseKnownFiles.js
186
+ var parseKnownFiles = async (init) => {
187
+ const parsedFiles = await loadSharedConfigFiles(init);
188
+ return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile);
189
+ };
190
+
191
+ // node_modules/@smithy/shared-ini-file-loader/dist-es/getSSOTokenFilepath.js
192
+ import { createHash } from "crypto";
193
+ import { join as join4 } from "path";
194
+ var getSSOTokenFilepath = (id) => {
195
+ const hasher = createHash("sha1");
196
+ const cacheName = hasher.update(id).digest("hex");
197
+ return join4(getHomeDir(), ".aws", "sso", "cache", `${cacheName}.json`);
198
+ };
199
+
200
+ // node_modules/@smithy/shared-ini-file-loader/dist-es/getSSOTokenFromFile.js
201
+ import { readFile as readFile2 } from "fs/promises";
202
+ var tokenIntercept = {};
203
+ var getSSOTokenFromFile = async (id) => {
204
+ if (tokenIntercept[id]) {
205
+ return tokenIntercept[id];
206
+ }
207
+ const ssoTokenFilepath = getSSOTokenFilepath(id);
208
+ const ssoTokenText = await readFile2(ssoTokenFilepath, "utf8");
209
+ return JSON.parse(ssoTokenText);
210
+ };
211
+
158
212
  export {
159
- IniSectionType,
160
- getHomeDir,
161
213
  ENV_PROFILE,
162
214
  getProfileName,
163
- getConfigFilepath,
164
- parseIni,
165
- slurpFile,
215
+ getSSOTokenFilepath,
216
+ getSSOTokenFromFile,
166
217
  CONFIG_PREFIX_SEPARATOR,
167
- loadSharedConfigFiles
218
+ loadSharedConfigFiles,
219
+ loadSsoSessionData,
220
+ parseKnownFiles
168
221
  };
169
- //# sourceMappingURL=chunk-ZW5YT27C.js.map
222
+ //# sourceMappingURL=chunk-CRX53WMM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../node_modules/@smithy/shared-ini-file-loader/dist-es/getProfileName.js","../../node_modules/@smithy/shared-ini-file-loader/dist-es/getConfigFilepath.js","../../node_modules/@smithy/shared-ini-file-loader/dist-es/getHomeDir.js","../../node_modules/@smithy/types/dist-es/profile.js","../../node_modules/@smithy/shared-ini-file-loader/dist-es/loadSharedConfigFiles.js","../../node_modules/@smithy/shared-ini-file-loader/dist-es/constants.js","../../node_modules/@smithy/shared-ini-file-loader/dist-es/getConfigData.js","../../node_modules/@smithy/shared-ini-file-loader/dist-es/getCredentialsFilepath.js","../../node_modules/@smithy/shared-ini-file-loader/dist-es/parseIni.js","../../node_modules/@smithy/shared-ini-file-loader/dist-es/readFile.js","../../node_modules/@smithy/shared-ini-file-loader/dist-es/getSsoSessionData.js","../../node_modules/@smithy/shared-ini-file-loader/dist-es/loadSsoSessionData.js","../../node_modules/@smithy/shared-ini-file-loader/dist-es/mergeConfigFiles.js","../../node_modules/@smithy/shared-ini-file-loader/dist-es/parseKnownFiles.js","../../node_modules/@smithy/shared-ini-file-loader/dist-es/getSSOTokenFilepath.js","../../node_modules/@smithy/shared-ini-file-loader/dist-es/getSSOTokenFromFile.js"],"sourcesContent":["export const ENV_PROFILE = \"AWS_PROFILE\";\nexport const DEFAULT_PROFILE = \"default\";\nexport const getProfileName = (init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE;\n","import { join } from \"path\";\nimport { getHomeDir } from \"./getHomeDir\";\nexport const ENV_CONFIG_PATH = \"AWS_CONFIG_FILE\";\nexport const getConfigFilepath = () => process.env[ENV_CONFIG_PATH] || join(getHomeDir(), \".aws\", \"config\");\n","import { homedir } from \"os\";\nimport { sep } from \"path\";\nconst homeDirCache = {};\nconst getHomeDirCacheKey = () => {\n if (process && process.geteuid) {\n return `${process.geteuid()}`;\n }\n return \"DEFAULT\";\n};\nexport const getHomeDir = () => {\n const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${sep}` } = process.env;\n if (HOME)\n return HOME;\n if (USERPROFILE)\n return USERPROFILE;\n if (HOMEPATH)\n return `${HOMEDRIVE}${HOMEPATH}`;\n const homeDirCacheKey = getHomeDirCacheKey();\n if (!homeDirCache[homeDirCacheKey])\n homeDirCache[homeDirCacheKey] = homedir();\n return homeDirCache[homeDirCacheKey];\n};\n","export var IniSectionType;\n(function (IniSectionType) {\n IniSectionType[\"PROFILE\"] = \"profile\";\n IniSectionType[\"SSO_SESSION\"] = \"sso-session\";\n IniSectionType[\"SERVICES\"] = \"services\";\n})(IniSectionType || (IniSectionType = {}));\n","import { join } from \"path\";\nimport { getConfigData } from \"./getConfigData\";\nimport { getConfigFilepath } from \"./getConfigFilepath\";\nimport { getCredentialsFilepath } from \"./getCredentialsFilepath\";\nimport { getHomeDir } from \"./getHomeDir\";\nimport { parseIni } from \"./parseIni\";\nimport { readFile } from \"./readFile\";\nconst swallowError = () => ({});\nexport { CONFIG_PREFIX_SEPARATOR } from \"./constants\";\nexport const loadSharedConfigFiles = async (init = {}) => {\n const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init;\n const homeDir = getHomeDir();\n const relativeHomeDirPrefix = \"~/\";\n let resolvedFilepath = filepath;\n if (filepath.startsWith(relativeHomeDirPrefix)) {\n resolvedFilepath = join(homeDir, filepath.slice(2));\n }\n let resolvedConfigFilepath = configFilepath;\n if (configFilepath.startsWith(relativeHomeDirPrefix)) {\n resolvedConfigFilepath = join(homeDir, configFilepath.slice(2));\n }\n const parsedFiles = await Promise.all([\n readFile(resolvedConfigFilepath, {\n ignoreCache: init.ignoreCache,\n })\n .then(parseIni)\n .then(getConfigData)\n .catch(swallowError),\n readFile(resolvedFilepath, {\n ignoreCache: init.ignoreCache,\n })\n .then(parseIni)\n .catch(swallowError),\n ]);\n return {\n configFile: parsedFiles[0],\n credentialsFile: parsedFiles[1],\n };\n};\n","export const CONFIG_PREFIX_SEPARATOR = \".\";\n","import { IniSectionType } from \"@smithy/types\";\nimport { CONFIG_PREFIX_SEPARATOR } from \"./constants\";\nexport const getConfigData = (data) => Object.entries(data)\n .filter(([key]) => {\n const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);\n if (indexOfSeparator === -1) {\n return false;\n }\n return Object.values(IniSectionType).includes(key.substring(0, indexOfSeparator));\n})\n .reduce((acc, [key, value]) => {\n const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);\n const updatedKey = key.substring(0, indexOfSeparator) === IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key;\n acc[updatedKey] = value;\n return acc;\n}, {\n ...(data.default && { default: data.default }),\n});\n","import { join } from \"path\";\nimport { getHomeDir } from \"./getHomeDir\";\nexport const ENV_CREDENTIALS_PATH = \"AWS_SHARED_CREDENTIALS_FILE\";\nexport const getCredentialsFilepath = () => process.env[ENV_CREDENTIALS_PATH] || join(getHomeDir(), \".aws\", \"credentials\");\n","import { IniSectionType } from \"@smithy/types\";\nimport { CONFIG_PREFIX_SEPARATOR } from \"./constants\";\nconst prefixKeyRegex = /^([\\w-]+)\\s([\"'])?([\\w-@\\+\\.%:/]+)\\2$/;\nconst profileNameBlockList = [\"__proto__\", \"profile __proto__\"];\nexport const parseIni = (iniData) => {\n const map = {};\n let currentSection;\n let currentSubSection;\n for (const iniLine of iniData.split(/\\r?\\n/)) {\n const trimmedLine = iniLine.split(/(^|\\s)[;#]/)[0].trim();\n const isSection = trimmedLine[0] === \"[\" && trimmedLine[trimmedLine.length - 1] === \"]\";\n if (isSection) {\n currentSection = undefined;\n currentSubSection = undefined;\n const sectionName = trimmedLine.substring(1, trimmedLine.length - 1);\n const matches = prefixKeyRegex.exec(sectionName);\n if (matches) {\n const [, prefix, , name] = matches;\n if (Object.values(IniSectionType).includes(prefix)) {\n currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR);\n }\n }\n else {\n currentSection = sectionName;\n }\n if (profileNameBlockList.includes(sectionName)) {\n throw new Error(`Found invalid profile name \"${sectionName}\"`);\n }\n }\n else if (currentSection) {\n const indexOfEqualsSign = trimmedLine.indexOf(\"=\");\n if (![0, -1].includes(indexOfEqualsSign)) {\n const [name, value] = [\n trimmedLine.substring(0, indexOfEqualsSign).trim(),\n trimmedLine.substring(indexOfEqualsSign + 1).trim(),\n ];\n if (value === \"\") {\n currentSubSection = name;\n }\n else {\n if (currentSubSection && iniLine.trimStart() === iniLine) {\n currentSubSection = undefined;\n }\n map[currentSection] = map[currentSection] || {};\n const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name;\n map[currentSection][key] = value;\n }\n }\n }\n }\n return map;\n};\n","import { readFile as fsReadFile } from \"node:fs/promises\";\nexport const filePromises = {};\nexport const fileIntercept = {};\nexport const readFile = (path, options) => {\n if (fileIntercept[path] !== undefined) {\n return fileIntercept[path];\n }\n if (!filePromises[path] || options?.ignoreCache) {\n filePromises[path] = fsReadFile(path, \"utf8\");\n }\n return filePromises[path];\n};\n","import { IniSectionType } from \"@smithy/types\";\nimport { CONFIG_PREFIX_SEPARATOR } from \"./loadSharedConfigFiles\";\nexport const getSsoSessionData = (data) => Object.entries(data)\n .filter(([key]) => key.startsWith(IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR))\n .reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {});\n","import { getConfigFilepath } from \"./getConfigFilepath\";\nimport { getSsoSessionData } from \"./getSsoSessionData\";\nimport { parseIni } from \"./parseIni\";\nimport { readFile } from \"./readFile\";\nconst swallowError = () => ({});\nexport const loadSsoSessionData = async (init = {}) => readFile(init.configFilepath ?? getConfigFilepath())\n .then(parseIni)\n .then(getSsoSessionData)\n .catch(swallowError);\n","export const mergeConfigFiles = (...files) => {\n const merged = {};\n for (const file of files) {\n for (const [key, values] of Object.entries(file)) {\n if (merged[key] !== undefined) {\n Object.assign(merged[key], values);\n }\n else {\n merged[key] = values;\n }\n }\n }\n return merged;\n};\n","import { loadSharedConfigFiles } from \"./loadSharedConfigFiles\";\nimport { mergeConfigFiles } from \"./mergeConfigFiles\";\nexport const parseKnownFiles = async (init) => {\n const parsedFiles = await loadSharedConfigFiles(init);\n return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile);\n};\n","import { createHash } from \"crypto\";\nimport { join } from \"path\";\nimport { getHomeDir } from \"./getHomeDir\";\nexport const getSSOTokenFilepath = (id) => {\n const hasher = createHash(\"sha1\");\n const cacheName = hasher.update(id).digest(\"hex\");\n return join(getHomeDir(), \".aws\", \"sso\", \"cache\", `${cacheName}.json`);\n};\n","import { readFile } from \"fs/promises\";\nimport { getSSOTokenFilepath } from \"./getSSOTokenFilepath\";\nexport const tokenIntercept = {};\nexport const getSSOTokenFromFile = async (id) => {\n if (tokenIntercept[id]) {\n return tokenIntercept[id];\n }\n const ssoTokenFilepath = getSSOTokenFilepath(id);\n const ssoTokenText = await readFile(ssoTokenFilepath, \"utf8\");\n return JSON.parse(ssoTokenText);\n};\n"],"mappings":";AAAO,IAAM,cAAc;AACpB,IAAM,kBAAkB;AACxB,IAAM,iBAAiB,CAAC,SAAS,KAAK,WAAW,QAAQ,IAAI,WAAW,KAAK;;;ACFpF,SAAS,YAAY;;;ACArB,SAAS,eAAe;AACxB,SAAS,WAAW;AACpB,IAAM,eAAe,CAAC;AACtB,IAAM,qBAAqB,MAAM;AAC7B,MAAI,WAAW,QAAQ,SAAS;AAC5B,WAAO,GAAG,QAAQ,QAAQ,CAAC;AAAA,EAC/B;AACA,SAAO;AACX;AACO,IAAM,aAAa,MAAM;AAC5B,QAAM,EAAE,MAAM,aAAa,UAAU,YAAY,KAAK,GAAG,GAAG,IAAI,QAAQ;AACxE,MAAI;AACA,WAAO;AACX,MAAI;AACA,WAAO;AACX,MAAI;AACA,WAAO,GAAG,SAAS,GAAG,QAAQ;AAClC,QAAM,kBAAkB,mBAAmB;AAC3C,MAAI,CAAC,aAAa,eAAe;AAC7B,iBAAa,eAAe,IAAI,QAAQ;AAC5C,SAAO,aAAa,eAAe;AACvC;;;ADnBO,IAAM,kBAAkB;AACxB,IAAM,oBAAoB,MAAM,QAAQ,IAAI,eAAe,KAAK,KAAK,WAAW,GAAG,QAAQ,QAAQ;;;AEHnG,IAAI;AAAA,CACV,SAAUA,iBAAgB;AACvB,EAAAA,gBAAe,SAAS,IAAI;AAC5B,EAAAA,gBAAe,aAAa,IAAI;AAChC,EAAAA,gBAAe,UAAU,IAAI;AACjC,GAAG,mBAAmB,iBAAiB,CAAC,EAAE;;;ACL1C,SAAS,QAAAC,aAAY;;;ACAd,IAAM,0BAA0B;;;ACEhC,IAAM,gBAAgB,CAAC,SAAS,OAAO,QAAQ,IAAI,EACrD,OAAO,CAAC,CAAC,GAAG,MAAM;AACnB,QAAM,mBAAmB,IAAI,QAAQ,uBAAuB;AAC5D,MAAI,qBAAqB,IAAI;AACzB,WAAO;AAAA,EACX;AACA,SAAO,OAAO,OAAO,cAAc,EAAE,SAAS,IAAI,UAAU,GAAG,gBAAgB,CAAC;AACpF,CAAC,EACI,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,MAAM;AAC/B,QAAM,mBAAmB,IAAI,QAAQ,uBAAuB;AAC5D,QAAM,aAAa,IAAI,UAAU,GAAG,gBAAgB,MAAM,eAAe,UAAU,IAAI,UAAU,mBAAmB,CAAC,IAAI;AACzH,MAAI,UAAU,IAAI;AAClB,SAAO;AACX,GAAG;AAAA,EACC,GAAI,KAAK,WAAW,EAAE,SAAS,KAAK,QAAQ;AAChD,CAAC;;;ACjBD,SAAS,QAAAC,aAAY;AAEd,IAAM,uBAAuB;AAC7B,IAAM,yBAAyB,MAAM,QAAQ,IAAI,oBAAoB,KAAKC,MAAK,WAAW,GAAG,QAAQ,aAAa;;;ACDzH,IAAM,iBAAiB;AACvB,IAAM,uBAAuB,CAAC,aAAa,mBAAmB;AACvD,IAAM,WAAW,CAAC,YAAY;AACjC,QAAM,MAAM,CAAC;AACb,MAAI;AACJ,MAAI;AACJ,aAAW,WAAW,QAAQ,MAAM,OAAO,GAAG;AAC1C,UAAM,cAAc,QAAQ,MAAM,YAAY,EAAE,CAAC,EAAE,KAAK;AACxD,UAAM,YAAY,YAAY,CAAC,MAAM,OAAO,YAAY,YAAY,SAAS,CAAC,MAAM;AACpF,QAAI,WAAW;AACX,uBAAiB;AACjB,0BAAoB;AACpB,YAAM,cAAc,YAAY,UAAU,GAAG,YAAY,SAAS,CAAC;AACnE,YAAM,UAAU,eAAe,KAAK,WAAW;AAC/C,UAAI,SAAS;AACT,cAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,IAAI;AAC3B,YAAI,OAAO,OAAO,cAAc,EAAE,SAAS,MAAM,GAAG;AAChD,2BAAiB,CAAC,QAAQ,IAAI,EAAE,KAAK,uBAAuB;AAAA,QAChE;AAAA,MACJ,OACK;AACD,yBAAiB;AAAA,MACrB;AACA,UAAI,qBAAqB,SAAS,WAAW,GAAG;AAC5C,cAAM,IAAI,MAAM,+BAA+B,WAAW,GAAG;AAAA,MACjE;AAAA,IACJ,WACS,gBAAgB;AACrB,YAAM,oBAAoB,YAAY,QAAQ,GAAG;AACjD,UAAI,CAAC,CAAC,GAAG,EAAE,EAAE,SAAS,iBAAiB,GAAG;AACtC,cAAM,CAAC,MAAM,KAAK,IAAI;AAAA,UAClB,YAAY,UAAU,GAAG,iBAAiB,EAAE,KAAK;AAAA,UACjD,YAAY,UAAU,oBAAoB,CAAC,EAAE,KAAK;AAAA,QACtD;AACA,YAAI,UAAU,IAAI;AACd,8BAAoB;AAAA,QACxB,OACK;AACD,cAAI,qBAAqB,QAAQ,UAAU,MAAM,SAAS;AACtD,gCAAoB;AAAA,UACxB;AACA,cAAI,cAAc,IAAI,IAAI,cAAc,KAAK,CAAC;AAC9C,gBAAM,MAAM,oBAAoB,CAAC,mBAAmB,IAAI,EAAE,KAAK,uBAAuB,IAAI;AAC1F,cAAI,cAAc,EAAE,GAAG,IAAI;AAAA,QAC/B;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ;AACA,SAAO;AACX;;;ACnDA,SAAS,YAAY,kBAAkB;AAChC,IAAM,eAAe,CAAC;AACtB,IAAM,gBAAgB,CAAC;AACvB,IAAM,WAAW,CAAC,MAAM,YAAY;AACvC,MAAI,cAAc,IAAI,MAAM,QAAW;AACnC,WAAO,cAAc,IAAI;AAAA,EAC7B;AACA,MAAI,CAAC,aAAa,IAAI,KAAK,SAAS,aAAa;AAC7C,iBAAa,IAAI,IAAI,WAAW,MAAM,MAAM;AAAA,EAChD;AACA,SAAO,aAAa,IAAI;AAC5B;;;ALJA,IAAM,eAAe,OAAO,CAAC;AAEtB,IAAM,wBAAwB,OAAO,OAAO,CAAC,MAAM;AACtD,QAAM,EAAE,WAAW,uBAAuB,GAAG,iBAAiB,kBAAkB,EAAE,IAAI;AACtF,QAAM,UAAU,WAAW;AAC3B,QAAM,wBAAwB;AAC9B,MAAI,mBAAmB;AACvB,MAAI,SAAS,WAAW,qBAAqB,GAAG;AAC5C,uBAAmBC,MAAK,SAAS,SAAS,MAAM,CAAC,CAAC;AAAA,EACtD;AACA,MAAI,yBAAyB;AAC7B,MAAI,eAAe,WAAW,qBAAqB,GAAG;AAClD,6BAAyBA,MAAK,SAAS,eAAe,MAAM,CAAC,CAAC;AAAA,EAClE;AACA,QAAM,cAAc,MAAM,QAAQ,IAAI;AAAA,IAClC,SAAS,wBAAwB;AAAA,MAC7B,aAAa,KAAK;AAAA,IACtB,CAAC,EACI,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,MAAM,YAAY;AAAA,IACvB,SAAS,kBAAkB;AAAA,MACvB,aAAa,KAAK;AAAA,IACtB,CAAC,EACI,KAAK,QAAQ,EACb,MAAM,YAAY;AAAA,EAC3B,CAAC;AACD,SAAO;AAAA,IACH,YAAY,YAAY,CAAC;AAAA,IACzB,iBAAiB,YAAY,CAAC;AAAA,EAClC;AACJ;;;AMpCO,IAAM,oBAAoB,CAAC,SAAS,OAAO,QAAQ,IAAI,EACzD,OAAO,CAAC,CAAC,GAAG,MAAM,IAAI,WAAW,eAAe,cAAc,uBAAuB,CAAC,EACtF,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI,UAAU,IAAI,QAAQ,uBAAuB,IAAI,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC;;;ACArH,IAAMC,gBAAe,OAAO,CAAC;AACtB,IAAM,qBAAqB,OAAO,OAAO,CAAC,MAAM,SAAS,KAAK,kBAAkB,kBAAkB,CAAC,EACrG,KAAK,QAAQ,EACb,KAAK,iBAAiB,EACtB,MAAMA,aAAY;;;ACRhB,IAAM,mBAAmB,IAAI,UAAU;AAC1C,QAAM,SAAS,CAAC;AAChB,aAAW,QAAQ,OAAO;AACtB,eAAW,CAAC,KAAK,MAAM,KAAK,OAAO,QAAQ,IAAI,GAAG;AAC9C,UAAI,OAAO,GAAG,MAAM,QAAW;AAC3B,eAAO,OAAO,OAAO,GAAG,GAAG,MAAM;AAAA,MACrC,OACK;AACD,eAAO,GAAG,IAAI;AAAA,MAClB;AAAA,IACJ;AAAA,EACJ;AACA,SAAO;AACX;;;ACXO,IAAM,kBAAkB,OAAO,SAAS;AAC3C,QAAM,cAAc,MAAM,sBAAsB,IAAI;AACpD,SAAO,iBAAiB,YAAY,YAAY,YAAY,eAAe;AAC/E;;;ACLA,SAAS,kBAAkB;AAC3B,SAAS,QAAAC,aAAY;AAEd,IAAM,sBAAsB,CAAC,OAAO;AACvC,QAAM,SAAS,WAAW,MAAM;AAChC,QAAM,YAAY,OAAO,OAAO,EAAE,EAAE,OAAO,KAAK;AAChD,SAAOC,MAAK,WAAW,GAAG,QAAQ,OAAO,SAAS,GAAG,SAAS,OAAO;AACzE;;;ACPA,SAAS,YAAAC,iBAAgB;AAElB,IAAM,iBAAiB,CAAC;AACxB,IAAM,sBAAsB,OAAO,OAAO;AAC7C,MAAI,eAAe,EAAE,GAAG;AACpB,WAAO,eAAe,EAAE;AAAA,EAC5B;AACA,QAAM,mBAAmB,oBAAoB,EAAE;AAC/C,QAAM,eAAe,MAAMC,UAAS,kBAAkB,MAAM;AAC5D,SAAO,KAAK,MAAM,YAAY;AAClC;","names":["IniSectionType","join","join","join","join","swallowError","join","join","readFile","readFile"]}
@@ -2,10 +2,21 @@ import {
2
2
  fromArrayBuffer,
3
3
  fromString,
4
4
  fromUtf8
5
- } from "./chunk-KH6HADHN.js";
5
+ } from "./chunk-Z63CAAFL.js";
6
6
 
7
7
  // node_modules/@smithy/protocol-http/dist-es/httpRequest.js
8
8
  var HttpRequest = class _HttpRequest {
9
+ method;
10
+ protocol;
11
+ hostname;
12
+ port;
13
+ path;
14
+ query;
15
+ headers;
16
+ username;
17
+ password;
18
+ fragment;
19
+ body;
9
20
  constructor(options) {
10
21
  this.method = options.method || "GET";
11
22
  this.hostname = options.hostname || "localhost";
@@ -52,6 +63,10 @@ function cloneQuery(query) {
52
63
 
53
64
  // node_modules/@smithy/protocol-http/dist-es/httpResponse.js
54
65
  var HttpResponse = class {
66
+ statusCode;
67
+ reason;
68
+ headers;
69
+ body;
55
70
  constructor(options) {
56
71
  this.statusCode = options.statusCode;
57
72
  this.reason = options.reason;
@@ -123,7 +138,7 @@ var setConnectionTimeout = (request, reject, timeoutInMs = 0) => {
123
138
  const registerTimeout = (offset) => {
124
139
  const timeoutId = timing.setTimeout(() => {
125
140
  request.destroy();
126
- reject(Object.assign(new Error(`Socket timed out without establishing a connection within ${timeoutInMs} ms`), {
141
+ reject(Object.assign(new Error(`@smithy/node-http-handler - the request socket did not establish a connection with the server within the configured timeout of ${timeoutInMs} ms.`), {
127
142
  name: "TimeoutError"
128
143
  }));
129
144
  }, timeoutInMs - offset);
@@ -149,6 +164,27 @@ var setConnectionTimeout = (request, reject, timeoutInMs = 0) => {
149
164
  return timing.setTimeout(registerTimeout.bind(null, DEFER_EVENT_LISTENER_TIME), DEFER_EVENT_LISTENER_TIME);
150
165
  };
151
166
 
167
+ // node_modules/@smithy/node-http-handler/dist-es/set-request-timeout.js
168
+ var setRequestTimeout = (req, reject, timeoutInMs = 0, throwOnRequestTimeout, logger2) => {
169
+ if (timeoutInMs) {
170
+ return timing.setTimeout(() => {
171
+ let msg = `@smithy/node-http-handler - [${throwOnRequestTimeout ? "ERROR" : "WARN"}] a request has exceeded the configured ${timeoutInMs} ms requestTimeout.`;
172
+ if (throwOnRequestTimeout) {
173
+ const error = Object.assign(new Error(msg), {
174
+ name: "TimeoutError",
175
+ code: "ETIMEDOUT"
176
+ });
177
+ req.destroy(error);
178
+ reject(error);
179
+ } else {
180
+ msg += ` Init client requestHandler with throwOnRequestTimeout=true to turn this into an error.`;
181
+ logger2?.warn?.(msg);
182
+ }
183
+ }, timeoutInMs);
184
+ }
185
+ return -1;
186
+ };
187
+
152
188
  // node_modules/@smithy/node-http-handler/dist-es/set-socket-keep-alive.js
153
189
  var DEFER_EVENT_LISTENER_TIME2 = 3e3;
154
190
  var setSocketKeepAlive = (request, { keepAlive, keepAliveMsecs }, deferTimeMs = DEFER_EVENT_LISTENER_TIME2) => {
@@ -173,12 +209,12 @@ var setSocketKeepAlive = (request, { keepAlive, keepAliveMsecs }, deferTimeMs =
173
209
 
174
210
  // node_modules/@smithy/node-http-handler/dist-es/set-socket-timeout.js
175
211
  var DEFER_EVENT_LISTENER_TIME3 = 3e3;
176
- var setSocketTimeout = (request, reject, timeoutInMs = DEFAULT_REQUEST_TIMEOUT) => {
212
+ var setSocketTimeout = (request, reject, timeoutInMs = 0) => {
177
213
  const registerTimeout = (offset) => {
178
214
  const timeout = timeoutInMs - offset;
179
215
  const onTimeout = () => {
180
216
  request.destroy();
181
- reject(Object.assign(new Error(`Connection timed out after ${timeoutInMs} ms`), { name: "TimeoutError" }));
217
+ reject(Object.assign(new Error(`@smithy/node-http-handler - the request socket timed out after ${timeoutInMs} ms of inactivity (configured by client requestHandler).`), { name: "TimeoutError" }));
182
218
  };
183
219
  if (request.socket) {
184
220
  request.socket.setTimeout(timeout, onTimeout);
@@ -197,12 +233,12 @@ var setSocketTimeout = (request, reject, timeoutInMs = DEFAULT_REQUEST_TIMEOUT)
197
233
  // node_modules/@smithy/node-http-handler/dist-es/write-request-body.js
198
234
  import { Readable } from "stream";
199
235
  var MIN_WAIT_TIME = 6e3;
200
- async function writeRequestBody(httpRequest, request, maxContinueTimeoutMs = MIN_WAIT_TIME) {
236
+ async function writeRequestBody(httpRequest, request, maxContinueTimeoutMs = MIN_WAIT_TIME, externalAgent = false) {
201
237
  const headers = request.headers ?? {};
202
- const expect = headers["Expect"] || headers["expect"];
238
+ const expect = headers.Expect || headers.expect;
203
239
  let timeoutId = -1;
204
240
  let sendBody = true;
205
- if (expect === "100-continue") {
241
+ if (!externalAgent && expect === "100-continue") {
206
242
  sendBody = await Promise.race([
207
243
  new Promise((resolve) => {
208
244
  timeoutId = Number(timing.setTimeout(() => resolve(true), Math.max(MIN_WAIT_TIME, maxContinueTimeoutMs)));
@@ -249,8 +285,12 @@ function writeBody(httpRequest, body) {
249
285
  }
250
286
 
251
287
  // node_modules/@smithy/node-http-handler/dist-es/node-http-handler.js
252
- var DEFAULT_REQUEST_TIMEOUT = 0;
253
288
  var NodeHttpHandler = class _NodeHttpHandler {
289
+ config;
290
+ configProvider;
291
+ socketWarningTimestamp = 0;
292
+ externalAgent = false;
293
+ metadata = { handlerProtocol: "http/1.1" };
254
294
  static create(instanceOrOptions) {
255
295
  if (typeof instanceOrOptions?.handle === "function") {
256
296
  return instanceOrOptions;
@@ -281,8 +321,6 @@ or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler conf
281
321
  return socketWarningTimestamp;
282
322
  }
283
323
  constructor(options) {
284
- this.socketWarningTimestamp = 0;
285
- this.metadata = { handlerProtocol: "http/1.1" };
286
324
  this.configProvider = new Promise((resolve, reject) => {
287
325
  if (typeof options === "function") {
288
326
  options().then((_options) => {
@@ -294,21 +332,25 @@ or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler conf
294
332
  });
295
333
  }
296
334
  resolveDefaultConfig(options) {
297
- const { requestTimeout, connectionTimeout, socketTimeout, socketAcquisitionWarningTimeout, httpAgent, httpsAgent } = options || {};
335
+ const { requestTimeout, connectionTimeout, socketTimeout, socketAcquisitionWarningTimeout, httpAgent, httpsAgent, throwOnRequestTimeout } = options || {};
298
336
  const keepAlive = true;
299
337
  const maxSockets = 50;
300
338
  return {
301
339
  connectionTimeout,
302
- requestTimeout: requestTimeout ?? socketTimeout,
340
+ requestTimeout,
341
+ socketTimeout,
303
342
  socketAcquisitionWarningTimeout,
343
+ throwOnRequestTimeout,
304
344
  httpAgent: (() => {
305
345
  if (httpAgent instanceof hAgent || typeof httpAgent?.destroy === "function") {
346
+ this.externalAgent = true;
306
347
  return httpAgent;
307
348
  }
308
349
  return new hAgent({ keepAlive, maxSockets, ...httpAgent });
309
350
  })(),
310
351
  httpsAgent: (() => {
311
352
  if (httpsAgent instanceof hsAgent || typeof httpsAgent?.destroy === "function") {
353
+ this.externalAgent = true;
312
354
  return httpsAgent;
313
355
  }
314
356
  return new hsAgent({ keepAlive, maxSockets, ...httpsAgent });
@@ -325,6 +367,7 @@ or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler conf
325
367
  this.config = await this.configProvider;
326
368
  }
327
369
  return new Promise((_resolve, _reject) => {
370
+ const config = this.config;
328
371
  let writeRequestBodyPromise = void 0;
329
372
  const timeouts = [];
330
373
  const resolve = async (arg) => {
@@ -337,9 +380,6 @@ or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler conf
337
380
  timeouts.forEach(timing.clearTimeout);
338
381
  _reject(arg);
339
382
  };
340
- if (!this.config) {
341
- throw new Error("Node HTTP request handler config is not resolved");
342
- }
343
383
  if (abortSignal?.aborted) {
344
384
  const abortError = new Error("Request aborted");
345
385
  abortError.name = "AbortError";
@@ -347,10 +387,18 @@ or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler conf
347
387
  return;
348
388
  }
349
389
  const isSSL = request.protocol === "https:";
350
- const agent = isSSL ? this.config.httpsAgent : this.config.httpAgent;
390
+ const headers = request.headers ?? {};
391
+ const expectContinue = (headers.Expect ?? headers.expect) === "100-continue";
392
+ let agent = isSSL ? config.httpsAgent : config.httpAgent;
393
+ if (expectContinue && !this.externalAgent) {
394
+ agent = new (isSSL ? hsAgent : hAgent)({
395
+ keepAlive: false,
396
+ maxSockets: Infinity
397
+ });
398
+ }
351
399
  timeouts.push(timing.setTimeout(() => {
352
- this.socketWarningTimestamp = _NodeHttpHandler.checkSocketUsage(agent, this.socketWarningTimestamp, this.config.logger);
353
- }, this.config.socketAcquisitionWarningTimeout ?? (this.config.requestTimeout ?? 2e3) + (this.config.connectionTimeout ?? 1e3)));
400
+ this.socketWarningTimestamp = _NodeHttpHandler.checkSocketUsage(agent, this.socketWarningTimestamp, config.logger);
401
+ }, config.socketAcquisitionWarningTimeout ?? (config.requestTimeout ?? 2e3) + (config.connectionTimeout ?? 1e3)));
354
402
  const queryString = buildQueryString(request.query || {});
355
403
  let auth = void 0;
356
404
  if (request.username != null || request.password != null) {
@@ -412,9 +460,10 @@ or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler conf
412
460
  abortSignal.onabort = onAbort;
413
461
  }
414
462
  }
415
- const effectiveRequestTimeout = requestTimeout ?? this.config.requestTimeout;
416
- timeouts.push(setConnectionTimeout(req, reject, this.config.connectionTimeout));
417
- timeouts.push(setSocketTimeout(req, reject, effectiveRequestTimeout));
463
+ const effectiveRequestTimeout = requestTimeout ?? config.requestTimeout;
464
+ timeouts.push(setConnectionTimeout(req, reject, config.connectionTimeout));
465
+ timeouts.push(setRequestTimeout(req, reject, effectiveRequestTimeout, config.throwOnRequestTimeout, config.logger ?? console));
466
+ timeouts.push(setSocketTimeout(req, reject, config.socketTimeout));
418
467
  const httpAgent = nodeHttpsOptions.agent;
419
468
  if (typeof httpAgent === "object" && "keepAlive" in httpAgent) {
420
469
  timeouts.push(setSocketKeepAlive(req, {
@@ -422,7 +471,7 @@ or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler conf
422
471
  keepAliveMsecs: httpAgent.keepAliveMsecs
423
472
  }));
424
473
  }
425
- writeRequestBodyPromise = writeRequestBody(req, request, effectiveRequestTimeout).catch((e) => {
474
+ writeRequestBodyPromise = writeRequestBody(req, request, effectiveRequestTimeout, this.externalAgent).catch((e) => {
426
475
  timeouts.forEach(timing.clearTimeout);
427
476
  return _reject(e);
428
477
  });
@@ -445,10 +494,7 @@ or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler conf
445
494
  // node_modules/@smithy/node-http-handler/dist-es/stream-collector/collector.js
446
495
  import { Writable } from "stream";
447
496
  var Collector = class extends Writable {
448
- constructor() {
449
- super(...arguments);
450
- this.bufferedBytes = [];
451
- }
497
+ bufferedBytes = [];
452
498
  _write(chunk, encoding, callback) {
453
499
  this.bufferedBytes.push(chunk);
454
500
  callback();
@@ -655,17 +701,6 @@ var fromBase64 = (input) => {
655
701
  return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
656
702
  };
657
703
 
658
- // node_modules/@smithy/util-utf8/dist-es/toUtf8.js
659
- var toUtf8 = (input) => {
660
- if (typeof input === "string") {
661
- return input;
662
- }
663
- if (typeof input !== "object" || typeof input.byteOffset !== "number" || typeof input.byteLength !== "number") {
664
- throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");
665
- }
666
- return fromArrayBuffer(input.buffer, input.byteOffset, input.byteLength).toString("utf8");
667
- };
668
-
669
704
  // node_modules/@smithy/util-base64/dist-es/toBase64.js
670
705
  var toBase64 = (_input) => {
671
706
  let input;
@@ -718,7 +753,6 @@ export {
718
753
  HttpRequest,
719
754
  HttpResponse,
720
755
  fromBase64,
721
- toUtf8,
722
756
  toBase64,
723
757
  escapeUri,
724
758
  NodeHttpHandler,
@@ -736,4 +770,4 @@ export {
736
770
  strictParseShort,
737
771
  strictParseByte
738
772
  };
739
- //# sourceMappingURL=chunk-JI6PVVK3.js.map
773
+ //# sourceMappingURL=chunk-D74LA2XQ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../node_modules/@smithy/protocol-http/dist-es/httpRequest.js","../../node_modules/@smithy/protocol-http/dist-es/httpResponse.js","../../node_modules/@smithy/util-uri-escape/dist-es/escape-uri.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/timing.js","../../node_modules/@smithy/node-http-handler/dist-es/set-connection-timeout.js","../../node_modules/@smithy/node-http-handler/dist-es/set-request-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/core/dist-es/submodules/serde/parse-utils.js","../../node_modules/@smithy/util-base64/dist-es/fromBase64.js","../../node_modules/@smithy/util-base64/dist-es/toBase64.js","../../node_modules/@smithy/util-hex-encoding/dist-es/index.js"],"sourcesContent":["export class HttpRequest {\n method;\n protocol;\n hostname;\n port;\n path;\n query;\n headers;\n username;\n password;\n fragment;\n body;\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","export class HttpResponse {\n statusCode;\n reason;\n headers;\n body;\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","export const escapeUri = (uri) => encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode);\nconst hexEncode = (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`;\n","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","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 { setRequestTimeout } from \"./set-request-timeout\";\nimport { setSocketKeepAlive } from \"./set-socket-keep-alive\";\nimport { setSocketTimeout } from \"./set-socket-timeout\";\nimport { timing } from \"./timing\";\nimport { writeRequestBody } from \"./write-request-body\";\nexport const DEFAULT_REQUEST_TIMEOUT = 0;\nexport class NodeHttpHandler {\n config;\n configProvider;\n socketWarningTimestamp = 0;\n externalAgent = false;\n metadata = { handlerProtocol: \"http/1.1\" };\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 = 15_000;\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.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, socketAcquisitionWarningTimeout, httpAgent, httpsAgent, throwOnRequestTimeout, } = options || {};\n const keepAlive = true;\n const maxSockets = 50;\n return {\n connectionTimeout,\n requestTimeout,\n socketTimeout,\n socketAcquisitionWarningTimeout,\n throwOnRequestTimeout,\n httpAgent: (() => {\n if (httpAgent instanceof hAgent || typeof httpAgent?.destroy === \"function\") {\n this.externalAgent = true;\n return httpAgent;\n }\n return new hAgent({ keepAlive, maxSockets, ...httpAgent });\n })(),\n httpsAgent: (() => {\n if (httpsAgent instanceof hsAgent || typeof httpsAgent?.destroy === \"function\") {\n this.externalAgent = true;\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, requestTimeout } = {}) {\n if (!this.config) {\n this.config = await this.configProvider;\n }\n return new Promise((_resolve, _reject) => {\n const config = this.config;\n let writeRequestBodyPromise = undefined;\n const timeouts = [];\n const resolve = async (arg) => {\n await writeRequestBodyPromise;\n timeouts.forEach(timing.clearTimeout);\n _resolve(arg);\n };\n const reject = async (arg) => {\n await writeRequestBodyPromise;\n timeouts.forEach(timing.clearTimeout);\n _reject(arg);\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 headers = request.headers ?? {};\n const expectContinue = (headers.Expect ?? headers.expect) === \"100-continue\";\n let agent = isSSL ? config.httpsAgent : config.httpAgent;\n if (expectContinue && !this.externalAgent) {\n agent = new (isSSL ? hsAgent : hAgent)({\n keepAlive: false,\n maxSockets: Infinity,\n });\n }\n timeouts.push(timing.setTimeout(() => {\n this.socketWarningTimestamp = NodeHttpHandler.checkSocketUsage(agent, this.socketWarningTimestamp, config.logger);\n }, config.socketAcquisitionWarningTimeout ?? (config.requestTimeout ?? 2000) + (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 let hostname = request.hostname ?? \"\";\n if (hostname[0] === \"[\" && hostname.endsWith(\"]\")) {\n hostname = request.hostname.slice(1, -1);\n }\n else {\n hostname = request.hostname;\n }\n const nodeHttpsOptions = {\n headers: request.headers,\n host: 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 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 effectiveRequestTimeout = requestTimeout ?? config.requestTimeout;\n timeouts.push(setConnectionTimeout(req, reject, config.connectionTimeout));\n timeouts.push(setRequestTimeout(req, reject, effectiveRequestTimeout, config.throwOnRequestTimeout, config.logger ?? console));\n timeouts.push(setSocketTimeout(req, reject, config.socketTimeout));\n const httpAgent = nodeHttpsOptions.agent;\n if (typeof httpAgent === \"object\" && \"keepAlive\" in httpAgent) {\n timeouts.push(setSocketKeepAlive(req, {\n keepAlive: httpAgent.keepAlive,\n keepAliveMsecs: httpAgent.keepAliveMsecs,\n }));\n }\n writeRequestBodyPromise = writeRequestBody(req, request, effectiveRequestTimeout, this.externalAgent).catch((e) => {\n timeouts.forEach(timing.clearTimeout);\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","export const NODEJS_TIMEOUT_ERROR_CODES = [\"ECONNRESET\", \"EPIPE\", \"ETIMEDOUT\"];\n","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","export const timing = {\n setTimeout: (cb, ms) => setTimeout(cb, ms),\n clearTimeout: (timeoutId) => clearTimeout(timeoutId),\n};\n","import { timing } from \"./timing\";\nconst DEFER_EVENT_LISTENER_TIME = 1000;\nexport const setConnectionTimeout = (request, reject, timeoutInMs = 0) => {\n if (!timeoutInMs) {\n return -1;\n }\n const registerTimeout = (offset) => {\n const timeoutId = timing.setTimeout(() => {\n request.destroy();\n reject(Object.assign(new Error(`@smithy/node-http-handler - the request socket did not establish a connection with the server within the configured timeout of ${timeoutInMs} ms.`), {\n name: \"TimeoutError\",\n }));\n }, timeoutInMs - offset);\n const doWithSocket = (socket) => {\n if (socket?.connecting) {\n socket.on(\"connect\", () => {\n timing.clearTimeout(timeoutId);\n });\n }\n else {\n timing.clearTimeout(timeoutId);\n }\n };\n if (request.socket) {\n doWithSocket(request.socket);\n }\n else {\n request.on(\"socket\", doWithSocket);\n }\n };\n if (timeoutInMs < 2000) {\n registerTimeout(0);\n return 0;\n }\n return timing.setTimeout(registerTimeout.bind(null, DEFER_EVENT_LISTENER_TIME), DEFER_EVENT_LISTENER_TIME);\n};\n","import { timing } from \"./timing\";\nexport const setRequestTimeout = (req, reject, timeoutInMs = 0, throwOnRequestTimeout, logger) => {\n if (timeoutInMs) {\n return timing.setTimeout(() => {\n let msg = `@smithy/node-http-handler - [${throwOnRequestTimeout ? \"ERROR\" : \"WARN\"}] a request has exceeded the configured ${timeoutInMs} ms requestTimeout.`;\n if (throwOnRequestTimeout) {\n const error = Object.assign(new Error(msg), {\n name: \"TimeoutError\",\n code: \"ETIMEDOUT\",\n });\n req.destroy(error);\n reject(error);\n }\n else {\n msg += ` Init client requestHandler with throwOnRequestTimeout=true to turn this into an error.`;\n logger?.warn?.(msg);\n }\n }, timeoutInMs);\n }\n return -1;\n};\n","import { timing } from \"./timing\";\nconst DEFER_EVENT_LISTENER_TIME = 3000;\nexport const setSocketKeepAlive = (request, { keepAlive, keepAliveMsecs }, deferTimeMs = DEFER_EVENT_LISTENER_TIME) => {\n if (keepAlive !== true) {\n return -1;\n }\n const registerListener = () => {\n if (request.socket) {\n request.socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);\n }\n else {\n request.on(\"socket\", (socket) => {\n socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);\n });\n }\n };\n if (deferTimeMs === 0) {\n registerListener();\n return 0;\n }\n return timing.setTimeout(registerListener, deferTimeMs);\n};\n","import { timing } from \"./timing\";\nconst DEFER_EVENT_LISTENER_TIME = 3000;\nexport const setSocketTimeout = (request, reject, timeoutInMs = 0) => {\n const registerTimeout = (offset) => {\n const timeout = timeoutInMs - offset;\n const onTimeout = () => {\n request.destroy();\n reject(Object.assign(new Error(`@smithy/node-http-handler - the request socket timed out after ${timeoutInMs} ms of inactivity (configured by client requestHandler).`), { name: \"TimeoutError\" }));\n };\n if (request.socket) {\n request.socket.setTimeout(timeout, onTimeout);\n request.on(\"close\", () => request.socket?.removeListener(\"timeout\", onTimeout));\n }\n else {\n request.setTimeout(timeout, onTimeout);\n }\n };\n if (0 < timeoutInMs && timeoutInMs < 6000) {\n registerTimeout(0);\n return 0;\n }\n return timing.setTimeout(registerTimeout.bind(null, timeoutInMs === 0 ? 0 : DEFER_EVENT_LISTENER_TIME), DEFER_EVENT_LISTENER_TIME);\n};\n","import { Readable } from \"stream\";\nimport { timing } from \"./timing\";\nconst MIN_WAIT_TIME = 6_000;\nexport async function writeRequestBody(httpRequest, request, maxContinueTimeoutMs = MIN_WAIT_TIME, externalAgent = false) {\n const headers = request.headers ?? {};\n const expect = headers.Expect || headers.expect;\n let timeoutId = -1;\n let sendBody = true;\n if (!externalAgent && expect === \"100-continue\") {\n sendBody = await Promise.race([\n new Promise((resolve) => {\n timeoutId = Number(timing.setTimeout(() => resolve(true), Math.max(MIN_WAIT_TIME, maxContinueTimeoutMs)));\n }),\n new Promise((resolve) => {\n httpRequest.on(\"continue\", () => {\n timing.clearTimeout(timeoutId);\n resolve(true);\n });\n httpRequest.on(\"response\", () => {\n timing.clearTimeout(timeoutId);\n resolve(false);\n });\n httpRequest.on(\"error\", () => {\n timing.clearTimeout(timeoutId);\n resolve(false);\n });\n }),\n ]);\n }\n if (sendBody) {\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","import { Writable } from \"stream\";\nexport class Collector extends Writable {\n bufferedBytes = [];\n _write(chunk, encoding, callback) {\n this.bufferedBytes.push(chunk);\n callback();\n }\n}\n","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","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","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","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","const SHORT_TO_HEX = {};\nconst 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}\nexport function 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 }\n else {\n throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);\n }\n }\n return out;\n}\nexport function 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"],"mappings":"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","names":["logger","DEFER_EVENT_LISTENER_TIME","DEFER_EVENT_LISTENER_TIME","logger"]}