@ampless/mcp-server 1.0.0-alpha.17 → 1.0.0-alpha.19

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.
@@ -1,1375 +0,0 @@
1
- #!/usr/bin/env node
2
- import {
3
- HttpRequest,
4
- HttpResponse,
5
- NODE_REGION_CONFIG_FILE_OPTIONS,
6
- NODE_REGION_CONFIG_OPTIONS,
7
- NoOpLogger,
8
- SelectorType,
9
- booleanSelector,
10
- customEndpointFunctions,
11
- isIpAddress,
12
- isValidHostLabel,
13
- loadConfig,
14
- normalizeProvider
15
- } from "./chunk-FM7TW5TD.js";
16
- import {
17
- parseRfc7231DateTime,
18
- v4
19
- } from "./chunk-IKXKDSVH.js";
20
-
21
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/setCredentialFeature.js
22
- function setCredentialFeature(credentials, feature, value) {
23
- if (!credentials.$source) {
24
- credentials.$source = {};
25
- }
26
- credentials.$source[feature] = value;
27
- return credentials;
28
- }
29
-
30
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/service-error-classification/constants.js
31
- var THROTTLING_ERROR_CODES = [
32
- "BandwidthLimitExceeded",
33
- "EC2ThrottledException",
34
- "LimitExceededException",
35
- "PriorRequestNotComplete",
36
- "ProvisionedThroughputExceededException",
37
- "RequestLimitExceeded",
38
- "RequestThrottled",
39
- "RequestThrottledException",
40
- "SlowDown",
41
- "ThrottledException",
42
- "Throttling",
43
- "ThrottlingException",
44
- "TooManyRequestsException",
45
- "TransactionInProgressException"
46
- ];
47
- var TRANSIENT_ERROR_CODES = ["TimeoutError", "RequestTimeout", "RequestTimeoutException"];
48
- var TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504];
49
- var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "ECONNREFUSED", "EPIPE", "ETIMEDOUT"];
50
- var NODEJS_NETWORK_ERROR_CODES = ["EHOSTUNREACH", "ENETUNREACH", "ENOTFOUND"];
51
-
52
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/service-error-classification/service-error-classification.js
53
- var isRetryableByTrait = (error) => error?.$retryable !== void 0;
54
- var isClockSkewCorrectedError = (error) => error.$metadata?.clockSkewCorrected;
55
- var isBrowserNetworkError = (error) => {
56
- const errorMessages = /* @__PURE__ */ new Set([
57
- "Failed to fetch",
58
- "NetworkError when attempting to fetch resource",
59
- "The Internet connection appears to be offline",
60
- "Load failed",
61
- "Network request failed"
62
- ]);
63
- const isValid = error && error instanceof TypeError;
64
- if (!isValid) {
65
- return false;
66
- }
67
- return errorMessages.has(error.message);
68
- };
69
- var isThrottlingError = (error) => error.$metadata?.httpStatusCode === 429 || THROTTLING_ERROR_CODES.includes(error.name) || error.$retryable?.throttling == true;
70
- var isTransientError = (error, depth = 0) => isRetryableByTrait(error) || isClockSkewCorrectedError(error) || error.name === "InvalidSignatureException" && error.message?.includes("Signature expired") || TRANSIENT_ERROR_CODES.includes(error.name) || NODEJS_TIMEOUT_ERROR_CODES.includes(error?.code || "") || NODEJS_NETWORK_ERROR_CODES.includes(error?.code || "") || TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0) || isBrowserNetworkError(error) || isNodeJsHttp2TransientError(error) || error.cause !== void 0 && depth <= 10 && isTransientError(error.cause, depth + 1);
71
- var isServerError = (error) => {
72
- if (error.$metadata?.httpStatusCode !== void 0) {
73
- const statusCode = error.$metadata.httpStatusCode;
74
- if (500 <= statusCode && statusCode <= 599 && !isTransientError(error)) {
75
- return true;
76
- }
77
- return false;
78
- }
79
- return false;
80
- };
81
- function isNodeJsHttp2TransientError(error) {
82
- return error.code === "ERR_HTTP2_STREAM_ERROR" && error.message.includes("NGHTTP2_REFUSED_STREAM");
83
- }
84
-
85
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/util-retry/DefaultRateLimiter.js
86
- var DefaultRateLimiter = class _DefaultRateLimiter {
87
- static setTimeoutFn = setTimeout;
88
- beta;
89
- minCapacity;
90
- minFillRate;
91
- scaleConstant;
92
- smooth;
93
- enabled = false;
94
- availableTokens = 0;
95
- lastMaxRate = 0;
96
- measuredTxRate = 0;
97
- requestCount = 0;
98
- fillRate;
99
- lastThrottleTime;
100
- lastTimestamp = 0;
101
- lastTxRateBucket;
102
- maxCapacity;
103
- timeWindow = 0;
104
- constructor(options) {
105
- this.beta = options?.beta ?? 0.7;
106
- this.minCapacity = options?.minCapacity ?? 1;
107
- this.minFillRate = options?.minFillRate ?? 0.5;
108
- this.scaleConstant = options?.scaleConstant ?? 0.4;
109
- this.smooth = options?.smooth ?? 0.8;
110
- this.lastThrottleTime = this.getCurrentTimeInSeconds();
111
- this.lastTxRateBucket = Math.floor(this.getCurrentTimeInSeconds());
112
- this.fillRate = this.minFillRate;
113
- this.maxCapacity = this.minCapacity;
114
- }
115
- async getSendToken() {
116
- return this.acquireTokenBucket(1);
117
- }
118
- updateClientSendingRate(response) {
119
- let calculatedRate;
120
- this.updateMeasuredRate();
121
- const retryErrorInfo = response;
122
- const isThrottling = retryErrorInfo?.errorType === "THROTTLING" || isThrottlingError(retryErrorInfo?.error ?? response);
123
- if (isThrottling) {
124
- const rateToUse = !this.enabled ? this.measuredTxRate : Math.min(this.measuredTxRate, this.fillRate);
125
- this.lastMaxRate = rateToUse;
126
- this.calculateTimeWindow();
127
- this.lastThrottleTime = this.getCurrentTimeInSeconds();
128
- calculatedRate = this.cubicThrottle(rateToUse);
129
- this.enableTokenBucket();
130
- } else {
131
- this.calculateTimeWindow();
132
- calculatedRate = this.cubicSuccess(this.getCurrentTimeInSeconds());
133
- }
134
- const newRate = Math.min(calculatedRate, 2 * this.measuredTxRate);
135
- this.updateTokenBucketRate(newRate);
136
- }
137
- getCurrentTimeInSeconds() {
138
- return Date.now() / 1e3;
139
- }
140
- async acquireTokenBucket(amount) {
141
- if (!this.enabled) {
142
- return;
143
- }
144
- this.refillTokenBucket();
145
- while (amount > this.availableTokens) {
146
- const delay = (amount - this.availableTokens) / this.fillRate * 1e3;
147
- await new Promise((resolve) => _DefaultRateLimiter.setTimeoutFn(resolve, delay));
148
- this.refillTokenBucket();
149
- }
150
- this.availableTokens = this.availableTokens - amount;
151
- }
152
- refillTokenBucket() {
153
- const timestamp = this.getCurrentTimeInSeconds();
154
- if (!this.lastTimestamp) {
155
- this.lastTimestamp = timestamp;
156
- return;
157
- }
158
- const fillAmount = (timestamp - this.lastTimestamp) * this.fillRate;
159
- this.availableTokens = Math.min(this.maxCapacity, this.availableTokens + fillAmount);
160
- this.lastTimestamp = timestamp;
161
- }
162
- calculateTimeWindow() {
163
- this.timeWindow = this.getPrecise(Math.pow(this.lastMaxRate * (1 - this.beta) / this.scaleConstant, 1 / 3));
164
- }
165
- cubicThrottle(rateToUse) {
166
- return this.getPrecise(rateToUse * this.beta);
167
- }
168
- cubicSuccess(timestamp) {
169
- return this.getPrecise(this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate);
170
- }
171
- enableTokenBucket() {
172
- this.enabled = true;
173
- }
174
- updateTokenBucketRate(newRate) {
175
- this.refillTokenBucket();
176
- this.fillRate = Math.max(newRate, this.minFillRate);
177
- this.maxCapacity = Math.max(newRate, this.minCapacity);
178
- this.availableTokens = Math.min(this.availableTokens, this.maxCapacity);
179
- }
180
- updateMeasuredRate() {
181
- const t = this.getCurrentTimeInSeconds();
182
- const timeBucket = Math.floor(t * 2) / 2;
183
- this.requestCount++;
184
- if (timeBucket > this.lastTxRateBucket) {
185
- const currentRate = this.requestCount / (timeBucket - this.lastTxRateBucket);
186
- this.measuredTxRate = this.getPrecise(currentRate * this.smooth + this.measuredTxRate * (1 - this.smooth));
187
- this.requestCount = 0;
188
- this.lastTxRateBucket = timeBucket;
189
- }
190
- }
191
- getPrecise(num) {
192
- return parseFloat(num.toFixed(8));
193
- }
194
- };
195
-
196
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/util-retry/constants.js
197
- var MAXIMUM_RETRY_DELAY = 20 * 1e3;
198
- var INITIAL_RETRY_TOKENS = 500;
199
- var NO_RETRY_INCREMENT = 1;
200
- var INVOCATION_ID_HEADER = "amz-sdk-invocation-id";
201
- var REQUEST_HEADER = "amz-sdk-request";
202
-
203
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/util-retry/retries-2026-config.js
204
- var Retry = class _Retry {
205
- static v2026 = typeof process !== "undefined" && process.env?.SMITHY_NEW_RETRIES_2026 === "true";
206
- static delay() {
207
- return _Retry.v2026 ? 50 : 100;
208
- }
209
- static throttlingDelay() {
210
- return _Retry.v2026 ? 1e3 : 500;
211
- }
212
- static cost() {
213
- return _Retry.v2026 ? 14 : 5;
214
- }
215
- static throttlingCost() {
216
- return _Retry.v2026 ? 5 : 10;
217
- }
218
- static modifiedCostType() {
219
- return _Retry.v2026 ? "THROTTLING" : "TRANSIENT";
220
- }
221
- };
222
-
223
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/util-retry/DefaultRetryBackoffStrategy.js
224
- var DefaultRetryBackoffStrategy = class {
225
- x = Retry.delay();
226
- computeNextBackoffDelay(i) {
227
- const b = Math.random();
228
- const r = 2;
229
- const t_i = b * Math.min(this.x * r ** i, MAXIMUM_RETRY_DELAY);
230
- return Math.floor(t_i);
231
- }
232
- setDelayBase(delay) {
233
- this.x = delay;
234
- }
235
- };
236
-
237
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/util-retry/DefaultRetryToken.js
238
- var DefaultRetryToken = class {
239
- delay;
240
- count;
241
- cost;
242
- longPoll;
243
- constructor(delay, count, cost, longPoll) {
244
- this.delay = delay;
245
- this.count = count;
246
- this.cost = cost;
247
- this.longPoll = longPoll;
248
- }
249
- getRetryCount() {
250
- return this.count;
251
- }
252
- getRetryDelay() {
253
- return Math.min(MAXIMUM_RETRY_DELAY, this.delay);
254
- }
255
- getRetryCost() {
256
- return this.cost;
257
- }
258
- isLongPoll() {
259
- return this.longPoll;
260
- }
261
- };
262
-
263
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/util-retry/config.js
264
- var RETRY_MODES;
265
- (function(RETRY_MODES2) {
266
- RETRY_MODES2["STANDARD"] = "standard";
267
- RETRY_MODES2["ADAPTIVE"] = "adaptive";
268
- })(RETRY_MODES || (RETRY_MODES = {}));
269
- var DEFAULT_MAX_ATTEMPTS = 3;
270
- var DEFAULT_RETRY_MODE = RETRY_MODES.STANDARD;
271
-
272
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/util-retry/StandardRetryStrategy.js
273
- var refusal = {
274
- incompatible: 1,
275
- attempts: 2,
276
- capacity: 3
277
- };
278
- var StandardRetryStrategy = class {
279
- mode = RETRY_MODES.STANDARD;
280
- capacity = INITIAL_RETRY_TOKENS;
281
- retryBackoffStrategy;
282
- maxAttemptsProvider;
283
- baseDelay;
284
- constructor(arg1) {
285
- if (typeof arg1 === "number") {
286
- this.maxAttemptsProvider = async () => arg1;
287
- } else if (typeof arg1 === "function") {
288
- this.maxAttemptsProvider = arg1;
289
- } else if (arg1 && typeof arg1 === "object") {
290
- this.maxAttemptsProvider = async () => arg1.maxAttempts;
291
- this.baseDelay = arg1.baseDelay;
292
- this.retryBackoffStrategy = arg1.backoff;
293
- }
294
- this.maxAttemptsProvider ??= async () => DEFAULT_MAX_ATTEMPTS;
295
- this.baseDelay ??= Retry.delay();
296
- this.retryBackoffStrategy ??= new DefaultRetryBackoffStrategy();
297
- }
298
- async acquireInitialRetryToken(retryTokenScope) {
299
- return new DefaultRetryToken(Retry.delay(), 0, void 0, Retry.v2026 && retryTokenScope.includes(":longpoll"));
300
- }
301
- async refreshRetryTokenForRetry(token, errorInfo) {
302
- const maxAttempts = await this.getMaxAttempts();
303
- const retryCode = this.retryCode(token, errorInfo, maxAttempts);
304
- const shouldRetry = retryCode === 0;
305
- const isLongPoll = token.isLongPoll?.();
306
- if (shouldRetry || isLongPoll) {
307
- const errorType = errorInfo.errorType;
308
- this.retryBackoffStrategy.setDelayBase(errorType === "THROTTLING" ? Retry.throttlingDelay() : this.baseDelay);
309
- const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount());
310
- let retryDelay = delayFromErrorType;
311
- if (errorInfo.retryAfterHint instanceof Date) {
312
- retryDelay = Math.max(delayFromErrorType, Math.min(errorInfo.retryAfterHint.getTime() - Date.now(), delayFromErrorType + 5e3));
313
- }
314
- if (!shouldRetry) {
315
- throw Object.assign(new Error("No retry token available"), {
316
- $backoff: Retry.v2026 && retryCode === refusal.capacity && isLongPoll ? retryDelay : 0
317
- });
318
- } else {
319
- const capacityCost = this.getCapacityCost(errorType);
320
- this.capacity -= capacityCost;
321
- return new DefaultRetryToken(retryDelay, token.getRetryCount() + 1, capacityCost, token.isLongPoll?.() ?? false);
322
- }
323
- }
324
- throw new Error("No retry token available");
325
- }
326
- recordSuccess(token) {
327
- this.capacity = Math.min(INITIAL_RETRY_TOKENS, this.capacity + (token.getRetryCost() ?? NO_RETRY_INCREMENT));
328
- }
329
- getCapacity() {
330
- return this.capacity;
331
- }
332
- async maxAttempts() {
333
- return this.maxAttemptsProvider();
334
- }
335
- async getMaxAttempts() {
336
- try {
337
- return await this.maxAttemptsProvider();
338
- } catch (error) {
339
- console.warn(`Max attempts provider could not resolve. Using default of ${DEFAULT_MAX_ATTEMPTS}`);
340
- return DEFAULT_MAX_ATTEMPTS;
341
- }
342
- }
343
- retryCode(tokenToRenew, errorInfo, maxAttempts) {
344
- const attempts = tokenToRenew.getRetryCount() + 1;
345
- const retryableStatus = this.isRetryableError(errorInfo.errorType) ? 0 : refusal.incompatible;
346
- const attemptStatus = attempts < maxAttempts ? 0 : refusal.attempts;
347
- const capacityStatus = this.capacity >= this.getCapacityCost(errorInfo.errorType) ? 0 : refusal.capacity;
348
- return retryableStatus || attemptStatus || capacityStatus;
349
- }
350
- getCapacityCost(errorType) {
351
- return errorType === Retry.modifiedCostType() ? Retry.throttlingCost() : Retry.cost();
352
- }
353
- isRetryableError(errorType) {
354
- return errorType === "THROTTLING" || errorType === "TRANSIENT";
355
- }
356
- };
357
-
358
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/util-retry/AdaptiveRetryStrategy.js
359
- var AdaptiveRetryStrategy = class {
360
- mode = RETRY_MODES.ADAPTIVE;
361
- rateLimiter;
362
- standardRetryStrategy;
363
- constructor(maxAttemptsProvider, options) {
364
- const { rateLimiter } = options ?? {};
365
- this.rateLimiter = rateLimiter ?? new DefaultRateLimiter();
366
- this.standardRetryStrategy = options ? new StandardRetryStrategy({
367
- maxAttempts: typeof maxAttemptsProvider === "number" ? maxAttemptsProvider : 3,
368
- ...options
369
- }) : new StandardRetryStrategy(maxAttemptsProvider);
370
- }
371
- async acquireInitialRetryToken(retryTokenScope) {
372
- const token = await this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);
373
- await this.rateLimiter.getSendToken();
374
- return token;
375
- }
376
- async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {
377
- this.rateLimiter.updateClientSendingRate(errorInfo);
378
- const token = await this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);
379
- await this.rateLimiter.getSendToken();
380
- return token;
381
- }
382
- recordSuccess(token) {
383
- this.rateLimiter.updateClientSendingRate({});
384
- this.standardRetryStrategy.recordSuccess(token);
385
- }
386
- async maxAttemptsProvider() {
387
- return this.standardRetryStrategy.maxAttempts();
388
- }
389
- };
390
-
391
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/configurations.js
392
- var ENV_MAX_ATTEMPTS = "AWS_MAX_ATTEMPTS";
393
- var CONFIG_MAX_ATTEMPTS = "max_attempts";
394
- var NODE_MAX_ATTEMPT_CONFIG_OPTIONS = {
395
- environmentVariableSelector: (env2) => {
396
- const value = env2[ENV_MAX_ATTEMPTS];
397
- if (!value)
398
- return void 0;
399
- const maxAttempt = parseInt(value);
400
- if (Number.isNaN(maxAttempt)) {
401
- throw new Error(`Environment variable ${ENV_MAX_ATTEMPTS} mast be a number, got "${value}"`);
402
- }
403
- return maxAttempt;
404
- },
405
- configFileSelector: (profile) => {
406
- const value = profile[CONFIG_MAX_ATTEMPTS];
407
- if (!value)
408
- return void 0;
409
- const maxAttempt = parseInt(value);
410
- if (Number.isNaN(maxAttempt)) {
411
- throw new Error(`Shared config file entry ${CONFIG_MAX_ATTEMPTS} mast be a number, got "${value}"`);
412
- }
413
- return maxAttempt;
414
- },
415
- default: DEFAULT_MAX_ATTEMPTS
416
- };
417
- var resolveRetryConfig = (input) => {
418
- const { retryStrategy, retryMode } = input;
419
- const maxAttempts = normalizeProvider(input.maxAttempts ?? DEFAULT_MAX_ATTEMPTS);
420
- let controller = retryStrategy ? Promise.resolve(retryStrategy) : void 0;
421
- const getDefault = async () => await normalizeProvider(retryMode)() === RETRY_MODES.ADAPTIVE ? new AdaptiveRetryStrategy(maxAttempts) : new StandardRetryStrategy(maxAttempts);
422
- return Object.assign(input, {
423
- maxAttempts,
424
- retryStrategy: () => controller ??= getDefault()
425
- });
426
- };
427
- var ENV_RETRY_MODE = "AWS_RETRY_MODE";
428
- var CONFIG_RETRY_MODE = "retry_mode";
429
- var NODE_RETRY_MODE_CONFIG_OPTIONS = {
430
- environmentVariableSelector: (env2) => env2[ENV_RETRY_MODE],
431
- configFileSelector: (profile) => profile[CONFIG_RETRY_MODE],
432
- default: DEFAULT_RETRY_MODE
433
- };
434
-
435
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/isStreamingPayload/isStreamingPayload.js
436
- import { Readable } from "stream";
437
- var isStreamingPayload = (request) => request?.body instanceof Readable || typeof ReadableStream !== "undefined" && request?.body instanceof ReadableStream;
438
-
439
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/parseRetryAfterHeader.js
440
- function parseRetryAfterHeader(response, logger) {
441
- if (!HttpResponse.isInstance(response)) {
442
- return;
443
- }
444
- for (const header of Object.keys(response.headers)) {
445
- const h = header.toLowerCase();
446
- if (h === "retry-after") {
447
- const retryAfter = response.headers[header];
448
- let retryAfterSeconds = NaN;
449
- if (retryAfter.endsWith("GMT")) {
450
- try {
451
- const date = parseRfc7231DateTime(retryAfter);
452
- retryAfterSeconds = (date.getTime() - Date.now()) / 1e3;
453
- } catch (e) {
454
- logger?.trace?.("Failed to parse retry-after header");
455
- logger?.trace?.(e);
456
- }
457
- } else if (retryAfter.match(/ GMT, ((\d+)|(\d+\.\d+))$/)) {
458
- retryAfterSeconds = Number(retryAfter.match(/ GMT, ([\d.]+)$/)?.[1]);
459
- } else if (retryAfter.match(/^((\d+)|(\d+\.\d+))$/)) {
460
- retryAfterSeconds = Number(retryAfter);
461
- } else if (Date.parse(retryAfter) >= Date.now()) {
462
- retryAfterSeconds = (Date.parse(retryAfter) - Date.now()) / 1e3;
463
- }
464
- if (isNaN(retryAfterSeconds)) {
465
- return;
466
- }
467
- return new Date(Date.now() + retryAfterSeconds * 1e3);
468
- } else if (h === "x-amz-retry-after") {
469
- const v = response.headers[header];
470
- const backoffMilliseconds = Number(v);
471
- if (isNaN(backoffMilliseconds)) {
472
- logger?.trace?.(`Failed to parse x-amz-retry-after=${v}`);
473
- return;
474
- }
475
- return new Date(Date.now() + backoffMilliseconds);
476
- }
477
- }
478
- }
479
-
480
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/util.js
481
- var asSdkError = (error) => {
482
- if (error instanceof Error)
483
- return error;
484
- if (error instanceof Object)
485
- return Object.assign(new Error(), error);
486
- if (typeof error === "string")
487
- return new Error(error);
488
- return new Error(`AWS SDK error wrapper for ${error}`);
489
- };
490
-
491
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/retryMiddleware.js
492
- function bindRetryMiddleware(isStreamingPayload2) {
493
- return (options) => (next, context) => async (args) => {
494
- let retryStrategy = await options.retryStrategy();
495
- const maxAttempts = await options.maxAttempts();
496
- if (isRetryStrategyV2(retryStrategy)) {
497
- retryStrategy = retryStrategy;
498
- let retryToken = await retryStrategy.acquireInitialRetryToken((context["partition_id"] ?? "") + (context.__retryLongPoll ? ":longpoll" : ""));
499
- let lastError = new Error();
500
- let attempts = 0;
501
- let totalRetryDelay = 0;
502
- const { request } = args;
503
- const isRequest = HttpRequest.isInstance(request);
504
- if (isRequest) {
505
- request.headers[INVOCATION_ID_HEADER] = v4();
506
- }
507
- while (true) {
508
- try {
509
- if (isRequest) {
510
- request.headers[REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;
511
- }
512
- const { response, output } = await next(args);
513
- retryStrategy.recordSuccess(retryToken);
514
- output.$metadata.attempts = attempts + 1;
515
- output.$metadata.totalRetryDelay = totalRetryDelay;
516
- return { response, output };
517
- } catch (e) {
518
- const retryErrorInfo = getRetryErrorInfo(e, options.logger);
519
- lastError = asSdkError(e);
520
- if (isRequest && isStreamingPayload2(request)) {
521
- (context.logger instanceof NoOpLogger ? console : context.logger)?.warn("An error was encountered in a non-retryable streaming request.");
522
- throw lastError;
523
- }
524
- try {
525
- retryToken = await retryStrategy.refreshRetryTokenForRetry(retryToken, retryErrorInfo);
526
- } catch (refreshError) {
527
- if (typeof refreshError.$backoff === "number") {
528
- await cooldown(refreshError.$backoff);
529
- }
530
- if (!lastError.$metadata) {
531
- lastError.$metadata = {};
532
- }
533
- lastError.$metadata.attempts = attempts + 1;
534
- lastError.$metadata.totalRetryDelay = totalRetryDelay;
535
- throw lastError;
536
- }
537
- attempts = retryToken.getRetryCount();
538
- const delay = retryToken.getRetryDelay();
539
- totalRetryDelay += delay;
540
- await cooldown(delay);
541
- }
542
- }
543
- } else {
544
- retryStrategy = retryStrategy;
545
- if (retryStrategy?.mode) {
546
- context.userAgent = [...context.userAgent || [], ["cfg/retry-mode", retryStrategy.mode]];
547
- }
548
- return retryStrategy.retry(next, args);
549
- }
550
- };
551
- }
552
- var cooldown = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
553
- var isRetryStrategyV2 = (retryStrategy) => typeof retryStrategy.acquireInitialRetryToken !== "undefined" && typeof retryStrategy.refreshRetryTokenForRetry !== "undefined" && typeof retryStrategy.recordSuccess !== "undefined";
554
- var getRetryErrorInfo = (error, logger) => {
555
- const errorInfo = {
556
- error,
557
- errorType: getRetryErrorType(error)
558
- };
559
- const retryAfterHint = parseRetryAfterHeader(error.$response, logger);
560
- if (retryAfterHint) {
561
- errorInfo.retryAfterHint = retryAfterHint;
562
- }
563
- return errorInfo;
564
- };
565
- var getRetryErrorType = (error) => {
566
- if (isThrottlingError(error))
567
- return "THROTTLING";
568
- if (isTransientError(error))
569
- return "TRANSIENT";
570
- if (isServerError(error))
571
- return "SERVER_ERROR";
572
- return "CLIENT_ERROR";
573
- };
574
- var retryMiddlewareOptions = {
575
- name: "retryMiddleware",
576
- tags: ["RETRY"],
577
- step: "finalizeRequest",
578
- priority: "high",
579
- override: true
580
- };
581
- function bindGetRetryPlugin(isStreamingPayload2) {
582
- const retryMiddleware2 = bindRetryMiddleware(isStreamingPayload2);
583
- return (options) => ({
584
- applyToStack: (clientStack) => {
585
- clientStack.add(retryMiddleware2(options), retryMiddlewareOptions);
586
- }
587
- });
588
- }
589
-
590
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/submodules/retry/index.js
591
- var retryMiddleware = bindRetryMiddleware(isStreamingPayload);
592
- var getRetryPlugin = bindGetRetryPlugin(isStreamingPayload);
593
-
594
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-host-header/hostHeaderMiddleware.js
595
- function resolveHostHeaderConfig(input) {
596
- return input;
597
- }
598
- var hostHeaderMiddleware = (options) => (next) => async (args) => {
599
- if (!HttpRequest.isInstance(args.request))
600
- return next(args);
601
- const { request } = args;
602
- const { handlerProtocol = "" } = options.requestHandler.metadata || {};
603
- if (handlerProtocol.indexOf("h2") >= 0 && !request.headers[":authority"]) {
604
- delete request.headers["host"];
605
- request.headers[":authority"] = request.hostname + (request.port ? ":" + request.port : "");
606
- } else if (!request.headers["host"]) {
607
- let host = request.hostname;
608
- if (request.port != null)
609
- host += `:${request.port}`;
610
- request.headers["host"] = host;
611
- }
612
- return next(args);
613
- };
614
- var hostHeaderMiddlewareOptions = {
615
- name: "hostHeaderMiddleware",
616
- step: "build",
617
- priority: "low",
618
- tags: ["HOST"],
619
- override: true
620
- };
621
- var getHostHeaderPlugin = (options) => ({
622
- applyToStack: (clientStack) => {
623
- clientStack.add(hostHeaderMiddleware(options), hostHeaderMiddlewareOptions);
624
- }
625
- });
626
-
627
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-logger/loggerMiddleware.js
628
- var loggerMiddleware = () => (next, context) => async (args) => {
629
- try {
630
- const response = await next(args);
631
- const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;
632
- const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions;
633
- const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;
634
- const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog ?? context.outputFilterSensitiveLog;
635
- const { $metadata, ...outputWithoutMetadata } = response.output;
636
- logger?.info?.({
637
- clientName,
638
- commandName,
639
- input: inputFilterSensitiveLog(args.input),
640
- output: outputFilterSensitiveLog(outputWithoutMetadata),
641
- metadata: $metadata
642
- });
643
- return response;
644
- } catch (error) {
645
- const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;
646
- const { overrideInputFilterSensitiveLog } = dynamoDbDocumentClientOptions;
647
- const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;
648
- logger?.error?.({
649
- clientName,
650
- commandName,
651
- input: inputFilterSensitiveLog(args.input),
652
- error,
653
- metadata: error.$metadata
654
- });
655
- throw error;
656
- }
657
- };
658
- var loggerMiddlewareOptions = {
659
- name: "loggerMiddleware",
660
- tags: ["LOGGER"],
661
- step: "initialize",
662
- override: true
663
- };
664
- var getLoggerPlugin = (options) => ({
665
- applyToStack: (clientStack) => {
666
- clientStack.add(loggerMiddleware(), loggerMiddlewareOptions);
667
- }
668
- });
669
-
670
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-recursion-detection/configuration.js
671
- var recursionDetectionMiddlewareOptions = {
672
- step: "build",
673
- tags: ["RECURSION_DETECTION"],
674
- name: "recursionDetectionMiddleware",
675
- override: true,
676
- priority: "low"
677
- };
678
-
679
- // ../../node_modules/.pnpm/@aws+lambda-invoke-store@0.2.4/node_modules/@aws/lambda-invoke-store/dist-es/invoke-store.js
680
- var PROTECTED_KEYS = {
681
- REQUEST_ID: /* @__PURE__ */ Symbol.for("_AWS_LAMBDA_REQUEST_ID"),
682
- X_RAY_TRACE_ID: /* @__PURE__ */ Symbol.for("_AWS_LAMBDA_X_RAY_TRACE_ID"),
683
- TENANT_ID: /* @__PURE__ */ Symbol.for("_AWS_LAMBDA_TENANT_ID")
684
- };
685
- var NO_GLOBAL_AWS_LAMBDA = ["true", "1"].includes(process.env?.AWS_LAMBDA_NODEJS_NO_GLOBAL_AWSLAMBDA ?? "");
686
- if (!NO_GLOBAL_AWS_LAMBDA) {
687
- globalThis.awslambda = globalThis.awslambda || {};
688
- }
689
- var InvokeStoreBase = class {
690
- static PROTECTED_KEYS = PROTECTED_KEYS;
691
- isProtectedKey(key) {
692
- return Object.values(PROTECTED_KEYS).includes(key);
693
- }
694
- getRequestId() {
695
- return this.get(PROTECTED_KEYS.REQUEST_ID) ?? "-";
696
- }
697
- getXRayTraceId() {
698
- return this.get(PROTECTED_KEYS.X_RAY_TRACE_ID);
699
- }
700
- getTenantId() {
701
- return this.get(PROTECTED_KEYS.TENANT_ID);
702
- }
703
- };
704
- var InvokeStoreSingle = class extends InvokeStoreBase {
705
- currentContext;
706
- getContext() {
707
- return this.currentContext;
708
- }
709
- hasContext() {
710
- return this.currentContext !== void 0;
711
- }
712
- get(key) {
713
- return this.currentContext?.[key];
714
- }
715
- set(key, value) {
716
- if (this.isProtectedKey(key)) {
717
- throw new Error(`Cannot modify protected Lambda context field: ${String(key)}`);
718
- }
719
- this.currentContext = this.currentContext || {};
720
- this.currentContext[key] = value;
721
- }
722
- run(context, fn) {
723
- this.currentContext = context;
724
- return fn();
725
- }
726
- };
727
- var InvokeStoreMulti = class _InvokeStoreMulti extends InvokeStoreBase {
728
- als;
729
- static async create() {
730
- const instance = new _InvokeStoreMulti();
731
- const asyncHooks = await import("async_hooks");
732
- instance.als = new asyncHooks.AsyncLocalStorage();
733
- return instance;
734
- }
735
- getContext() {
736
- return this.als.getStore();
737
- }
738
- hasContext() {
739
- return this.als.getStore() !== void 0;
740
- }
741
- get(key) {
742
- return this.als.getStore()?.[key];
743
- }
744
- set(key, value) {
745
- if (this.isProtectedKey(key)) {
746
- throw new Error(`Cannot modify protected Lambda context field: ${String(key)}`);
747
- }
748
- const store = this.als.getStore();
749
- if (!store) {
750
- throw new Error("No context available");
751
- }
752
- store[key] = value;
753
- }
754
- run(context, fn) {
755
- return this.als.run(context, fn);
756
- }
757
- };
758
- var InvokeStore;
759
- (function(InvokeStore2) {
760
- let instance = null;
761
- async function getInstanceAsync(forceInvokeStoreMulti) {
762
- if (!instance) {
763
- instance = (async () => {
764
- const isMulti = forceInvokeStoreMulti === true || "AWS_LAMBDA_MAX_CONCURRENCY" in process.env;
765
- const newInstance = isMulti ? await InvokeStoreMulti.create() : new InvokeStoreSingle();
766
- if (!NO_GLOBAL_AWS_LAMBDA && globalThis.awslambda?.InvokeStore) {
767
- return globalThis.awslambda.InvokeStore;
768
- } else if (!NO_GLOBAL_AWS_LAMBDA && globalThis.awslambda) {
769
- globalThis.awslambda.InvokeStore = newInstance;
770
- return newInstance;
771
- } else {
772
- return newInstance;
773
- }
774
- })();
775
- }
776
- return instance;
777
- }
778
- InvokeStore2.getInstanceAsync = getInstanceAsync;
779
- InvokeStore2._testing = process.env.AWS_LAMBDA_BENCHMARK_MODE === "1" ? {
780
- reset: () => {
781
- instance = null;
782
- if (globalThis.awslambda?.InvokeStore) {
783
- delete globalThis.awslambda.InvokeStore;
784
- }
785
- globalThis.awslambda = { InvokeStore: void 0 };
786
- }
787
- } : void 0;
788
- })(InvokeStore || (InvokeStore = {}));
789
-
790
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.js
791
- var TRACE_ID_HEADER_NAME = "X-Amzn-Trace-Id";
792
- var ENV_LAMBDA_FUNCTION_NAME = "AWS_LAMBDA_FUNCTION_NAME";
793
- var ENV_TRACE_ID = "_X_AMZN_TRACE_ID";
794
- var recursionDetectionMiddleware = () => (next) => async (args) => {
795
- const { request } = args;
796
- if (!HttpRequest.isInstance(request)) {
797
- return next(args);
798
- }
799
- const traceIdHeader = Object.keys(request.headers ?? {}).find((h) => h.toLowerCase() === TRACE_ID_HEADER_NAME.toLowerCase()) ?? TRACE_ID_HEADER_NAME;
800
- if (request.headers.hasOwnProperty(traceIdHeader)) {
801
- return next(args);
802
- }
803
- const functionName = process.env[ENV_LAMBDA_FUNCTION_NAME];
804
- const traceIdFromEnv = process.env[ENV_TRACE_ID];
805
- const invokeStore = await InvokeStore.getInstanceAsync();
806
- const traceIdFromInvokeStore = invokeStore?.getXRayTraceId();
807
- const traceId = traceIdFromInvokeStore ?? traceIdFromEnv;
808
- const nonEmptyString = (str) => typeof str === "string" && str.length > 0;
809
- if (nonEmptyString(functionName) && nonEmptyString(traceId)) {
810
- request.headers[TRACE_ID_HEADER_NAME] = traceId;
811
- }
812
- return next({
813
- ...args,
814
- request
815
- });
816
- };
817
-
818
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.js
819
- var getRecursionDetectionPlugin = (options) => ({
820
- applyToStack: (clientStack) => {
821
- clientStack.add(recursionDetectionMiddleware(), recursionDetectionMiddlewareOptions);
822
- }
823
- });
824
-
825
- // ../../node_modules/.pnpm/@smithy+core@3.24.3/node_modules/@smithy/core/dist-es/normalizeProvider.js
826
- var normalizeProvider2 = (input) => {
827
- if (typeof input === "function")
828
- return input;
829
- const promisified = Promise.resolve(input);
830
- return () => promisified;
831
- };
832
-
833
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-user-agent/configurations.js
834
- var DEFAULT_UA_APP_ID = void 0;
835
- function isValidUserAgentAppId(appId) {
836
- if (appId === void 0) {
837
- return true;
838
- }
839
- return typeof appId === "string" && appId.length <= 50;
840
- }
841
- function resolveUserAgentConfig(input) {
842
- const normalizedAppIdProvider = normalizeProvider2(input.userAgentAppId ?? DEFAULT_UA_APP_ID);
843
- const { customUserAgent } = input;
844
- return Object.assign(input, {
845
- customUserAgent: typeof customUserAgent === "string" ? [[customUserAgent]] : customUserAgent,
846
- userAgentAppId: async () => {
847
- const appId = await normalizedAppIdProvider();
848
- if (!isValidUserAgentAppId(appId)) {
849
- const logger = input.logger?.constructor?.name === "NoOpLogger" || !input.logger ? console : input.logger;
850
- if (typeof appId !== "string") {
851
- logger?.warn("userAgentAppId must be a string or undefined.");
852
- } else if (appId.length > 50) {
853
- logger?.warn("The provided userAgentAppId exceeds the maximum length of 50 characters.");
854
- }
855
- }
856
- return appId;
857
- }
858
- });
859
- }
860
-
861
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-endpoints/lib/aws/partitions.js
862
- var partitionsInfo = { "partitions": [{ "id": "aws", "outputs": { "dnsSuffix": "amazonaws.com", "dualStackDnsSuffix": "api.aws", "implicitGlobalRegion": "us-east-1", "name": "aws", "supportsDualStack": true, "supportsFIPS": true }, "regionRegex": "^(us|eu|ap|sa|ca|me|af|il|mx)\\-\\w+\\-\\d+$", "regions": { "af-south-1": { "description": "Africa (Cape Town)" }, "ap-east-1": { "description": "Asia Pacific (Hong Kong)" }, "ap-east-2": { "description": "Asia Pacific (Taipei)" }, "ap-northeast-1": { "description": "Asia Pacific (Tokyo)" }, "ap-northeast-2": { "description": "Asia Pacific (Seoul)" }, "ap-northeast-3": { "description": "Asia Pacific (Osaka)" }, "ap-south-1": { "description": "Asia Pacific (Mumbai)" }, "ap-south-2": { "description": "Asia Pacific (Hyderabad)" }, "ap-southeast-1": { "description": "Asia Pacific (Singapore)" }, "ap-southeast-2": { "description": "Asia Pacific (Sydney)" }, "ap-southeast-3": { "description": "Asia Pacific (Jakarta)" }, "ap-southeast-4": { "description": "Asia Pacific (Melbourne)" }, "ap-southeast-5": { "description": "Asia Pacific (Malaysia)" }, "ap-southeast-6": { "description": "Asia Pacific (New Zealand)" }, "ap-southeast-7": { "description": "Asia Pacific (Thailand)" }, "aws-global": { "description": "aws global region" }, "ca-central-1": { "description": "Canada (Central)" }, "ca-west-1": { "description": "Canada West (Calgary)" }, "eu-central-1": { "description": "Europe (Frankfurt)" }, "eu-central-2": { "description": "Europe (Zurich)" }, "eu-north-1": { "description": "Europe (Stockholm)" }, "eu-south-1": { "description": "Europe (Milan)" }, "eu-south-2": { "description": "Europe (Spain)" }, "eu-west-1": { "description": "Europe (Ireland)" }, "eu-west-2": { "description": "Europe (London)" }, "eu-west-3": { "description": "Europe (Paris)" }, "il-central-1": { "description": "Israel (Tel Aviv)" }, "me-central-1": { "description": "Middle East (UAE)" }, "me-south-1": { "description": "Middle East (Bahrain)" }, "mx-central-1": { "description": "Mexico (Central)" }, "sa-east-1": { "description": "South America (Sao Paulo)" }, "us-east-1": { "description": "US East (N. Virginia)" }, "us-east-2": { "description": "US East (Ohio)" }, "us-west-1": { "description": "US West (N. California)" }, "us-west-2": { "description": "US West (Oregon)" } } }, { "id": "aws-cn", "outputs": { "dnsSuffix": "amazonaws.com.cn", "dualStackDnsSuffix": "api.amazonwebservices.com.cn", "implicitGlobalRegion": "cn-northwest-1", "name": "aws-cn", "supportsDualStack": true, "supportsFIPS": true }, "regionRegex": "^cn\\-\\w+\\-\\d+$", "regions": { "aws-cn-global": { "description": "aws-cn global region" }, "cn-north-1": { "description": "China (Beijing)" }, "cn-northwest-1": { "description": "China (Ningxia)" } } }, { "id": "aws-eusc", "outputs": { "dnsSuffix": "amazonaws.eu", "dualStackDnsSuffix": "api.amazonwebservices.eu", "implicitGlobalRegion": "eusc-de-east-1", "name": "aws-eusc", "supportsDualStack": true, "supportsFIPS": true }, "regionRegex": "^eusc\\-(de)\\-\\w+\\-\\d+$", "regions": { "eusc-de-east-1": { "description": "AWS European Sovereign Cloud (Germany)" } } }, { "id": "aws-iso", "outputs": { "dnsSuffix": "c2s.ic.gov", "dualStackDnsSuffix": "api.aws.ic.gov", "implicitGlobalRegion": "us-iso-east-1", "name": "aws-iso", "supportsDualStack": true, "supportsFIPS": true }, "regionRegex": "^us\\-iso\\-\\w+\\-\\d+$", "regions": { "aws-iso-global": { "description": "aws-iso global region" }, "us-iso-east-1": { "description": "US ISO East" }, "us-iso-west-1": { "description": "US ISO WEST" } } }, { "id": "aws-iso-b", "outputs": { "dnsSuffix": "sc2s.sgov.gov", "dualStackDnsSuffix": "api.aws.scloud", "implicitGlobalRegion": "us-isob-east-1", "name": "aws-iso-b", "supportsDualStack": true, "supportsFIPS": true }, "regionRegex": "^us\\-isob\\-\\w+\\-\\d+$", "regions": { "aws-iso-b-global": { "description": "aws-iso-b global region" }, "us-isob-east-1": { "description": "US ISOB East (Ohio)" }, "us-isob-west-1": { "description": "US ISOB West" } } }, { "id": "aws-iso-e", "outputs": { "dnsSuffix": "cloud.adc-e.uk", "dualStackDnsSuffix": "api.cloud-aws.adc-e.uk", "implicitGlobalRegion": "eu-isoe-west-1", "name": "aws-iso-e", "supportsDualStack": true, "supportsFIPS": true }, "regionRegex": "^eu\\-isoe\\-\\w+\\-\\d+$", "regions": { "aws-iso-e-global": { "description": "aws-iso-e global region" }, "eu-isoe-west-1": { "description": "EU ISOE West" } } }, { "id": "aws-iso-f", "outputs": { "dnsSuffix": "csp.hci.ic.gov", "dualStackDnsSuffix": "api.aws.hci.ic.gov", "implicitGlobalRegion": "us-isof-south-1", "name": "aws-iso-f", "supportsDualStack": true, "supportsFIPS": true }, "regionRegex": "^us\\-isof\\-\\w+\\-\\d+$", "regions": { "aws-iso-f-global": { "description": "aws-iso-f global region" }, "us-isof-east-1": { "description": "US ISOF EAST" }, "us-isof-south-1": { "description": "US ISOF SOUTH" } } }, { "id": "aws-us-gov", "outputs": { "dnsSuffix": "amazonaws.com", "dualStackDnsSuffix": "api.aws", "implicitGlobalRegion": "us-gov-west-1", "name": "aws-us-gov", "supportsDualStack": true, "supportsFIPS": true }, "regionRegex": "^us\\-gov\\-\\w+\\-\\d+$", "regions": { "aws-us-gov-global": { "description": "aws-us-gov global region" }, "us-gov-east-1": { "description": "AWS GovCloud (US-East)" }, "us-gov-west-1": { "description": "AWS GovCloud (US-West)" } } }], "version": "1.1" };
863
-
864
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-endpoints/lib/aws/partition.js
865
- var selectedPartitionsInfo = partitionsInfo;
866
- var selectedUserAgentPrefix = "";
867
- var partition = (value) => {
868
- const { partitions } = selectedPartitionsInfo;
869
- for (const partition2 of partitions) {
870
- const { regions, outputs } = partition2;
871
- for (const [region, regionData] of Object.entries(regions)) {
872
- if (region === value) {
873
- return {
874
- ...outputs,
875
- ...regionData
876
- };
877
- }
878
- }
879
- }
880
- for (const partition2 of partitions) {
881
- const { regionRegex, outputs } = partition2;
882
- if (new RegExp(regionRegex).test(value)) {
883
- return {
884
- ...outputs
885
- };
886
- }
887
- }
888
- const DEFAULT_PARTITION = partitions.find((partition2) => partition2.id === "aws");
889
- if (!DEFAULT_PARTITION) {
890
- throw new Error("Provided region was not found in the partition array or regex, and default partition with id 'aws' doesn't exist.");
891
- }
892
- return {
893
- ...DEFAULT_PARTITION.outputs
894
- };
895
- };
896
- var getUserAgentPrefix = () => selectedUserAgentPrefix;
897
-
898
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/setFeature.js
899
- Retry.v2026 ||= typeof process === "object" && process.env?.AWS_NEW_RETRIES_2026 === "true";
900
- function setFeature(context, feature, value) {
901
- if (!context.__aws_sdk_context) {
902
- context.__aws_sdk_context = {
903
- features: {}
904
- };
905
- } else if (!context.__aws_sdk_context.features) {
906
- context.__aws_sdk_context.features = {};
907
- }
908
- context.__aws_sdk_context.features[feature] = value;
909
- }
910
-
911
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-user-agent/check-features.js
912
- var ACCOUNT_ID_ENDPOINT_REGEX = /\d{12}\.ddb/;
913
- async function checkFeatures(context, config, args) {
914
- const request = args.request;
915
- if (request?.headers?.["smithy-protocol"] === "rpc-v2-cbor") {
916
- setFeature(context, "PROTOCOL_RPC_V2_CBOR", "M");
917
- }
918
- if (typeof config.retryStrategy === "function") {
919
- const retryStrategy = await config.retryStrategy();
920
- if (typeof retryStrategy.mode === "string") {
921
- switch (retryStrategy.mode) {
922
- case RETRY_MODES.ADAPTIVE:
923
- setFeature(context, "RETRY_MODE_ADAPTIVE", "F");
924
- break;
925
- case RETRY_MODES.STANDARD:
926
- setFeature(context, "RETRY_MODE_STANDARD", "E");
927
- break;
928
- }
929
- }
930
- }
931
- if (typeof config.accountIdEndpointMode === "function") {
932
- const endpointV2 = context.endpointV2;
933
- if (String(endpointV2?.url?.hostname).match(ACCOUNT_ID_ENDPOINT_REGEX)) {
934
- setFeature(context, "ACCOUNT_ID_ENDPOINT", "O");
935
- }
936
- switch (await config.accountIdEndpointMode?.()) {
937
- case "disabled":
938
- setFeature(context, "ACCOUNT_ID_MODE_DISABLED", "Q");
939
- break;
940
- case "preferred":
941
- setFeature(context, "ACCOUNT_ID_MODE_PREFERRED", "P");
942
- break;
943
- case "required":
944
- setFeature(context, "ACCOUNT_ID_MODE_REQUIRED", "R");
945
- break;
946
- }
947
- }
948
- const identity = context.__smithy_context?.selectedHttpAuthScheme?.identity;
949
- if (identity?.$source) {
950
- const credentials = identity;
951
- if (credentials.accountId) {
952
- setFeature(context, "RESOLVED_ACCOUNT_ID", "T");
953
- }
954
- for (const [key, value] of Object.entries(credentials.$source ?? {})) {
955
- setFeature(context, key, value);
956
- }
957
- }
958
- }
959
-
960
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-user-agent/constants.js
961
- var USER_AGENT = "user-agent";
962
- var X_AMZ_USER_AGENT = "x-amz-user-agent";
963
- var SPACE = " ";
964
- var UA_NAME_SEPARATOR = "/";
965
- var UA_NAME_ESCAPE_REGEX = /[^!$%&'*+\-.^_`|~\w]/g;
966
- var UA_VALUE_ESCAPE_REGEX = /[^!$%&'*+\-.^_`|~\w#]/g;
967
- var UA_ESCAPE_CHAR = "-";
968
-
969
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-user-agent/encode-features.js
970
- var BYTE_LIMIT = 1024;
971
- function encodeFeatures(features) {
972
- let buffer = "";
973
- for (const key in features) {
974
- const val = features[key];
975
- if (buffer.length + val.length + 1 <= BYTE_LIMIT) {
976
- if (buffer.length) {
977
- buffer += "," + val;
978
- } else {
979
- buffer += val;
980
- }
981
- continue;
982
- }
983
- break;
984
- }
985
- return buffer;
986
- }
987
-
988
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-user-agent/user-agent-middleware.js
989
- var userAgentMiddleware = (options) => (next, context) => async (args) => {
990
- const { request } = args;
991
- if (!HttpRequest.isInstance(request)) {
992
- return next(args);
993
- }
994
- const { headers } = request;
995
- const userAgent = context?.userAgent?.map(escapeUserAgent) || [];
996
- const defaultUserAgent2 = (await options.defaultUserAgentProvider()).map(escapeUserAgent);
997
- await checkFeatures(context, options, args);
998
- const awsContext = context;
999
- defaultUserAgent2.push(`m/${encodeFeatures(Object.assign({}, context.__smithy_context?.features, awsContext.__aws_sdk_context?.features))}`);
1000
- const customUserAgent = options?.customUserAgent?.map(escapeUserAgent) || [];
1001
- const appId = await options.userAgentAppId();
1002
- if (appId) {
1003
- defaultUserAgent2.push(escapeUserAgent([`app`, `${appId}`]));
1004
- }
1005
- const prefix = getUserAgentPrefix();
1006
- const sdkUserAgentValue = (prefix ? [prefix] : []).concat([...defaultUserAgent2, ...userAgent, ...customUserAgent]).join(SPACE);
1007
- const normalUAValue = [
1008
- ...defaultUserAgent2.filter((section) => section.startsWith("aws-sdk-")),
1009
- ...customUserAgent
1010
- ].join(SPACE);
1011
- if (options.runtime !== "browser") {
1012
- if (normalUAValue) {
1013
- headers[X_AMZ_USER_AGENT] = headers[X_AMZ_USER_AGENT] ? `${headers[USER_AGENT]} ${normalUAValue}` : normalUAValue;
1014
- }
1015
- headers[USER_AGENT] = sdkUserAgentValue;
1016
- } else {
1017
- headers[X_AMZ_USER_AGENT] = sdkUserAgentValue;
1018
- }
1019
- return next({
1020
- ...args,
1021
- request
1022
- });
1023
- };
1024
- var escapeUserAgent = (userAgentPair) => {
1025
- const name = userAgentPair[0].split(UA_NAME_SEPARATOR).map((part) => part.replace(UA_NAME_ESCAPE_REGEX, UA_ESCAPE_CHAR)).join(UA_NAME_SEPARATOR);
1026
- const version = userAgentPair[1]?.replace(UA_VALUE_ESCAPE_REGEX, UA_ESCAPE_CHAR);
1027
- const prefixSeparatorIndex = name.indexOf(UA_NAME_SEPARATOR);
1028
- const prefix = name.substring(0, prefixSeparatorIndex);
1029
- let uaName = name.substring(prefixSeparatorIndex + 1);
1030
- if (prefix === "api") {
1031
- uaName = uaName.toLowerCase();
1032
- }
1033
- return [prefix, uaName, version].filter((item) => item && item.length > 0).reduce((acc, item, index) => {
1034
- switch (index) {
1035
- case 0:
1036
- return item;
1037
- case 1:
1038
- return `${acc}/${item}`;
1039
- default:
1040
- return `${acc}#${item}`;
1041
- }
1042
- }, "");
1043
- };
1044
- var getUserAgentMiddlewareOptions = {
1045
- name: "getUserAgentMiddleware",
1046
- step: "build",
1047
- priority: "low",
1048
- tags: ["SET_USER_AGENT", "USER_AGENT"],
1049
- override: true
1050
- };
1051
- var getUserAgentPlugin = (config) => ({
1052
- applyToStack: (clientStack) => {
1053
- clientStack.add(userAgentMiddleware(config), getUserAgentMiddlewareOptions);
1054
- }
1055
- });
1056
-
1057
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js
1058
- var state = {
1059
- warningEmitted: false
1060
- };
1061
- var emitWarningIfUnsupportedVersion = (version) => {
1062
- if (version && !state.warningEmitted) {
1063
- if (process.env.AWS_SDK_JS_NODE_VERSION_SUPPORT_WARNING_DISABLED === "true") {
1064
- state.warningEmitted = true;
1065
- return;
1066
- }
1067
- const userMajorVersion = parseInt(version.substring(1, version.indexOf(".")));
1068
- const vv = 22;
1069
- if (userMajorVersion < vv) {
1070
- state.warningEmitted = true;
1071
- process.emitWarning(`NodeVersionSupportWarning: The AWS SDK for JavaScript (v3)
1072
- versions published after the first week of January 2027
1073
- will require node >=${vv}. You are running node ${version}.
1074
-
1075
- To continue receiving updates to AWS services, bug fixes,
1076
- and security updates please upgrade to node >=${vv}.
1077
-
1078
- More information can be found at: https://a.co/c895JFp`);
1079
- }
1080
- }
1081
- };
1082
-
1083
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/defaultUserAgent.js
1084
- import { platform, release } from "os";
1085
- import { env } from "process";
1086
-
1087
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/getRuntimeUserAgentPair.js
1088
- import { versions } from "process";
1089
- var getRuntimeUserAgentPair = () => {
1090
- const runtimesToCheck = ["deno", "bun", "llrt"];
1091
- for (const runtime of runtimesToCheck) {
1092
- if (versions[runtime]) {
1093
- return [`md/${runtime}`, versions[runtime]];
1094
- }
1095
- }
1096
- return ["md/nodejs", versions.node];
1097
- };
1098
-
1099
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/getTypeScriptUserAgentPair.js
1100
- import { readFile } from "fs/promises";
1101
- import { join } from "path";
1102
-
1103
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/getNodeModulesParentDirs.js
1104
- import { normalize, sep } from "path";
1105
- var getNodeModulesParentDirs = (dirname) => {
1106
- const cwd = process.cwd();
1107
- if (!dirname) {
1108
- return [cwd];
1109
- }
1110
- const normalizedPath = normalize(dirname);
1111
- const parts = normalizedPath.split(sep);
1112
- const nodeModulesIndex = parts.indexOf("node_modules");
1113
- const parentDir = nodeModulesIndex !== -1 ? parts.slice(0, nodeModulesIndex).join(sep) : normalizedPath;
1114
- if (cwd === parentDir) {
1115
- return [cwd];
1116
- }
1117
- return [parentDir, cwd];
1118
- };
1119
-
1120
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/getSanitizedTypeScriptVersion.js
1121
- var SEMVER_REGEX = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*)?$/;
1122
- var getSanitizedTypeScriptVersion = (version = "") => {
1123
- const match = version.match(SEMVER_REGEX);
1124
- if (!match) {
1125
- return void 0;
1126
- }
1127
- const [major, minor, patch, prerelease] = [match[1], match[2], match[3], match[4]];
1128
- return prerelease ? `${major}.${minor}.${patch}-${prerelease}` : `${major}.${minor}.${patch}`;
1129
- };
1130
-
1131
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/getSanitizedDevTypeScriptVersion.js
1132
- var ALLOWED_PREFIXES = ["^", "~", ">=", "<=", ">", "<"];
1133
- var ALLOWED_DIST_TAGS = ["latest", "beta", "dev", "rc", "insiders", "next"];
1134
- var getSanitizedDevTypeScriptVersion = (version = "") => {
1135
- if (ALLOWED_DIST_TAGS.includes(version)) {
1136
- return version;
1137
- }
1138
- const prefix = ALLOWED_PREFIXES.find((p) => version.startsWith(p)) ?? "";
1139
- const sanitizedTypeScriptVersion = getSanitizedTypeScriptVersion(version.slice(prefix.length));
1140
- if (!sanitizedTypeScriptVersion) {
1141
- return void 0;
1142
- }
1143
- return `${prefix}${sanitizedTypeScriptVersion}`;
1144
- };
1145
-
1146
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/getTypeScriptUserAgentPair.js
1147
- var tscVersion;
1148
- var TS_PACKAGE_JSON = join("node_modules", "typescript", "package.json");
1149
- var getTypeScriptUserAgentPair = async () => {
1150
- if (tscVersion === null) {
1151
- return void 0;
1152
- } else if (typeof tscVersion === "string") {
1153
- return ["md/tsc", tscVersion];
1154
- }
1155
- let isTypeScriptDetectionDisabled = false;
1156
- try {
1157
- isTypeScriptDetectionDisabled = booleanSelector(process.env, "AWS_SDK_JS_TYPESCRIPT_DETECTION_DISABLED", SelectorType.ENV) || false;
1158
- } catch {
1159
- }
1160
- if (isTypeScriptDetectionDisabled) {
1161
- tscVersion = null;
1162
- return void 0;
1163
- }
1164
- const dirname = typeof __dirname !== "undefined" ? __dirname : void 0;
1165
- const nodeModulesParentDirs = getNodeModulesParentDirs(dirname);
1166
- let versionFromApp;
1167
- for (const nodeModulesParentDir of nodeModulesParentDirs) {
1168
- try {
1169
- const appPackageJsonPath = join(nodeModulesParentDir, "package.json");
1170
- const packageJson = await readFile(appPackageJsonPath, "utf-8");
1171
- const { dependencies, devDependencies } = JSON.parse(packageJson);
1172
- const version = devDependencies?.typescript ?? dependencies?.typescript;
1173
- if (typeof version !== "string") {
1174
- continue;
1175
- }
1176
- versionFromApp = version;
1177
- break;
1178
- } catch {
1179
- }
1180
- }
1181
- if (!versionFromApp) {
1182
- tscVersion = null;
1183
- return void 0;
1184
- }
1185
- let versionFromNodeModules;
1186
- for (const nodeModulesParentDir of nodeModulesParentDirs) {
1187
- try {
1188
- const tsPackageJsonPath = join(nodeModulesParentDir, TS_PACKAGE_JSON);
1189
- const packageJson = await readFile(tsPackageJsonPath, "utf-8");
1190
- const { version } = JSON.parse(packageJson);
1191
- const sanitizedVersion2 = getSanitizedTypeScriptVersion(version);
1192
- if (typeof sanitizedVersion2 !== "string") {
1193
- continue;
1194
- }
1195
- versionFromNodeModules = sanitizedVersion2;
1196
- break;
1197
- } catch {
1198
- }
1199
- }
1200
- if (versionFromNodeModules) {
1201
- tscVersion = versionFromNodeModules;
1202
- return ["md/tsc", tscVersion];
1203
- }
1204
- const sanitizedVersion = getSanitizedDevTypeScriptVersion(versionFromApp);
1205
- if (typeof sanitizedVersion !== "string") {
1206
- tscVersion = null;
1207
- return void 0;
1208
- }
1209
- tscVersion = `dev_${sanitizedVersion}`;
1210
- return ["md/tsc", tscVersion];
1211
- };
1212
-
1213
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/crt-availability.js
1214
- var crtAvailability = {
1215
- isCrtAvailable: false
1216
- };
1217
-
1218
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/is-crt-available.js
1219
- var isCrtAvailable = () => {
1220
- if (crtAvailability.isCrtAvailable) {
1221
- return ["md/crt-avail"];
1222
- }
1223
- return null;
1224
- };
1225
-
1226
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/defaultUserAgent.js
1227
- var createDefaultUserAgentProvider = ({ serviceId, clientVersion }) => {
1228
- const runtimeUserAgentPair = getRuntimeUserAgentPair();
1229
- return async (config) => {
1230
- const sections = [
1231
- ["aws-sdk-js", clientVersion],
1232
- ["ua", "2.1"],
1233
- [`os/${platform()}`, release()],
1234
- ["lang/js"],
1235
- runtimeUserAgentPair
1236
- ];
1237
- const typescriptUserAgentPair = await getTypeScriptUserAgentPair();
1238
- if (typescriptUserAgentPair) {
1239
- sections.push(typescriptUserAgentPair);
1240
- }
1241
- const crtAvailable = isCrtAvailable();
1242
- if (crtAvailable) {
1243
- sections.push(crtAvailable);
1244
- }
1245
- if (serviceId) {
1246
- sections.push([`api/${serviceId}`, clientVersion]);
1247
- }
1248
- if (env.AWS_EXECUTION_ENV) {
1249
- sections.push([`exec-env/${env.AWS_EXECUTION_ENV}`]);
1250
- }
1251
- const appId = await config?.userAgentAppId?.();
1252
- const resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections];
1253
- return resolvedUserAgent;
1254
- };
1255
- };
1256
-
1257
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/nodeAppIdConfigOptions.js
1258
- var UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID";
1259
- var UA_APP_ID_INI_NAME = "sdk_ua_app_id";
1260
- var UA_APP_ID_INI_NAME_DEPRECATED = "sdk-ua-app-id";
1261
- var NODE_APP_ID_CONFIG_OPTIONS = {
1262
- environmentVariableSelector: (env2) => env2[UA_APP_ID_ENV_NAME],
1263
- configFileSelector: (profile) => profile[UA_APP_ID_INI_NAME] ?? profile[UA_APP_ID_INI_NAME_DEPRECATED],
1264
- default: DEFAULT_UA_APP_ID
1265
- };
1266
-
1267
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-endpoints/lib/aws/isVirtualHostableS3Bucket.js
1268
- var isVirtualHostableS3Bucket = (value, allowSubDomains = false) => {
1269
- if (allowSubDomains) {
1270
- for (const label of value.split(".")) {
1271
- if (!isVirtualHostableS3Bucket(label)) {
1272
- return false;
1273
- }
1274
- }
1275
- return true;
1276
- }
1277
- if (!isValidHostLabel(value)) {
1278
- return false;
1279
- }
1280
- if (value.length < 3 || value.length > 63) {
1281
- return false;
1282
- }
1283
- if (value !== value.toLowerCase()) {
1284
- return false;
1285
- }
1286
- if (isIpAddress(value)) {
1287
- return false;
1288
- }
1289
- return true;
1290
- };
1291
-
1292
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-endpoints/lib/aws/parseArn.js
1293
- var ARN_DELIMITER = ":";
1294
- var RESOURCE_DELIMITER = "/";
1295
- var parseArn = (value) => {
1296
- const segments = value.split(ARN_DELIMITER);
1297
- if (segments.length < 6)
1298
- return null;
1299
- const [arn, partition2, service, region, accountId, ...resourcePath] = segments;
1300
- if (arn !== "arn" || partition2 === "" || service === "" || resourcePath.join(ARN_DELIMITER) === "")
1301
- return null;
1302
- const resourceId = resourcePath.map((resource) => resource.split(RESOURCE_DELIMITER)).flat();
1303
- return {
1304
- partition: partition2,
1305
- service,
1306
- region,
1307
- accountId,
1308
- resourceId
1309
- };
1310
- };
1311
-
1312
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/util-endpoints/aws.js
1313
- var awsEndpointFunctions = {
1314
- isVirtualHostableS3Bucket,
1315
- parseArn,
1316
- partition
1317
- };
1318
- customEndpointFunctions.aws = awsEndpointFunctions;
1319
-
1320
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/region-config-resolver/stsRegionDefaultResolver.js
1321
- function stsRegionDefaultResolver(loaderConfig = {}) {
1322
- return loadConfig({
1323
- ...NODE_REGION_CONFIG_OPTIONS,
1324
- async default() {
1325
- if (!warning.silence) {
1326
- console.warn("@aws-sdk - WARN - default STS region of us-east-1 used. See @aws-sdk/credential-providers README and set a region explicitly.");
1327
- }
1328
- return "us-east-1";
1329
- }
1330
- }, { ...NODE_REGION_CONFIG_FILE_OPTIONS, ...loaderConfig });
1331
- }
1332
- var warning = {
1333
- silence: false
1334
- };
1335
-
1336
- // ../../node_modules/.pnpm/@aws-sdk+core@3.974.13/node_modules/@aws-sdk/core/dist-es/submodules/client/region-config-resolver/extensions.js
1337
- var getAwsRegionExtensionConfiguration = (runtimeConfig) => {
1338
- return {
1339
- setRegion(region) {
1340
- runtimeConfig.region = region;
1341
- },
1342
- region() {
1343
- return runtimeConfig.region;
1344
- }
1345
- };
1346
- };
1347
- var resolveAwsRegionExtensionConfiguration = (awsRegionExtensionConfiguration) => {
1348
- return {
1349
- region: awsRegionExtensionConfiguration.region()
1350
- };
1351
- };
1352
-
1353
- export {
1354
- emitWarningIfUnsupportedVersion,
1355
- setCredentialFeature,
1356
- DEFAULT_RETRY_MODE,
1357
- NODE_MAX_ATTEMPT_CONFIG_OPTIONS,
1358
- resolveRetryConfig,
1359
- NODE_RETRY_MODE_CONFIG_OPTIONS,
1360
- getRetryPlugin,
1361
- setFeature,
1362
- resolveHostHeaderConfig,
1363
- getHostHeaderPlugin,
1364
- getLoggerPlugin,
1365
- getRecursionDetectionPlugin,
1366
- normalizeProvider2 as normalizeProvider,
1367
- resolveUserAgentConfig,
1368
- getUserAgentPlugin,
1369
- createDefaultUserAgentProvider,
1370
- NODE_APP_ID_CONFIG_OPTIONS,
1371
- awsEndpointFunctions,
1372
- stsRegionDefaultResolver,
1373
- getAwsRegionExtensionConfiguration,
1374
- resolveAwsRegionExtensionConfiguration
1375
- };