@etainabl/nodejs-sdk 1.3.110 → 1.3.112

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 (49) hide show
  1. package/dist/esm/chunk-3YGWW265.js +64 -0
  2. package/dist/esm/chunk-3YGWW265.js.map +1 -0
  3. package/dist/esm/chunk-BIVFO5LG.js +2476 -0
  4. package/dist/esm/chunk-BIVFO5LG.js.map +1 -0
  5. package/dist/esm/chunk-CIKXN3GS.js +64 -0
  6. package/dist/esm/chunk-CIKXN3GS.js.map +1 -0
  7. package/dist/esm/chunk-E6O4HVLA.js +121 -0
  8. package/dist/esm/chunk-E6O4HVLA.js.map +1 -0
  9. package/dist/esm/chunk-HAEAETXR.js +210 -0
  10. package/dist/esm/chunk-HAEAETXR.js.map +1 -0
  11. package/dist/esm/chunk-ITSE4X2J.js +1733 -0
  12. package/dist/esm/chunk-ITSE4X2J.js.map +1 -0
  13. package/dist/esm/chunk-OWL7NKW5.js +47 -0
  14. package/dist/esm/chunk-OWL7NKW5.js.map +1 -0
  15. package/dist/esm/chunk-R63LRFTI.js +153 -0
  16. package/dist/esm/chunk-R63LRFTI.js.map +1 -0
  17. package/dist/esm/chunk-UFTVLHTW.js +114 -0
  18. package/dist/esm/chunk-UFTVLHTW.js.map +1 -0
  19. package/dist/esm/chunk-UZGMBQZB.js +13 -0
  20. package/dist/esm/chunk-UZGMBQZB.js.map +1 -0
  21. package/dist/esm/chunk-XXAWQ5GA.js +3359 -0
  22. package/dist/esm/chunk-XXAWQ5GA.js.map +1 -0
  23. package/dist/esm/dist-es-4ZHJVMJ4.js +21 -0
  24. package/dist/esm/dist-es-4ZHJVMJ4.js.map +1 -0
  25. package/dist/esm/dist-es-FD7XXZCE.js +305 -0
  26. package/dist/esm/dist-es-FD7XXZCE.js.map +1 -0
  27. package/dist/esm/dist-es-MXGFLXV2.js +379 -0
  28. package/dist/esm/dist-es-MXGFLXV2.js.map +1 -0
  29. package/dist/esm/dist-es-QPNGCVTW.js +67 -0
  30. package/dist/esm/dist-es-QPNGCVTW.js.map +1 -0
  31. package/dist/esm/dist-es-RHLCSE2G.js +200 -0
  32. package/dist/esm/dist-es-RHLCSE2G.js.map +1 -0
  33. package/dist/esm/dist-es-X5IH3XCT.js +88 -0
  34. package/dist/esm/dist-es-X5IH3XCT.js.map +1 -0
  35. package/dist/esm/dist-es-XEM2CDDP.js +163 -0
  36. package/dist/esm/dist-es-XEM2CDDP.js.map +1 -0
  37. package/dist/esm/index.js +4299 -81
  38. package/dist/esm/index.js.map +1 -1
  39. package/dist/esm/loadSso-3QBKTJF3.js +655 -0
  40. package/dist/esm/loadSso-3QBKTJF3.js.map +1 -0
  41. package/dist/esm/sso-oidc-GZ3LZ3MF.js +827 -0
  42. package/dist/esm/sso-oidc-GZ3LZ3MF.js.map +1 -0
  43. package/dist/esm/sts-CIQKG7FB.js +1162 -0
  44. package/dist/esm/sts-CIQKG7FB.js.map +1 -0
  45. package/dist/index.d.cts +176 -82
  46. package/dist/index.d.ts +176 -82
  47. package/dist/index.js +21923 -1147
  48. package/dist/index.js.map +1 -1
  49. package/package.json +4 -2
package/dist/esm/index.js CHANGED
@@ -1,8 +1,125 @@
1
- var __defProp = Object.defineProperty;
2
- var __export = (target, all) => {
3
- for (var name in all)
4
- __defProp(target, name, { get: all[name], enumerable: true });
5
- };
1
+ import {
2
+ ENV_KEY,
3
+ ENV_SECRET,
4
+ fromEnv
5
+ } from "./chunk-OWL7NKW5.js";
6
+ import {
7
+ loadRestXmlErrorCode,
8
+ parseXmlBody,
9
+ parseXmlErrorBody
10
+ } from "./chunk-ITSE4X2J.js";
11
+ import {
12
+ AwsSdkSigV4ASigner,
13
+ AwsSdkSigV4Signer,
14
+ DEFAULT_RETRY_MODE,
15
+ DefaultIdentityProviderConfig,
16
+ EndpointCache,
17
+ Hash,
18
+ NODE_APP_ID_CONFIG_OPTIONS,
19
+ NODE_AUTH_SCHEME_PREFERENCE_OPTIONS,
20
+ NODE_MAX_ATTEMPT_CONFIG_OPTIONS,
21
+ NODE_REGION_CONFIG_FILE_OPTIONS,
22
+ NODE_REGION_CONFIG_OPTIONS,
23
+ NODE_RETRY_MODE_CONFIG_OPTIONS,
24
+ NODE_SIGV4A_CONFIG_OPTIONS,
25
+ NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,
26
+ NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,
27
+ SelectorType,
28
+ SignatureV4,
29
+ awsEndpointFunctions,
30
+ booleanSelector,
31
+ calculateBodyLength,
32
+ createDefaultUserAgentProvider,
33
+ customEndpointFunctions,
34
+ emitWarningIfUnsupportedVersion,
35
+ getAwsRegionExtensionConfiguration,
36
+ getContentLengthPlugin,
37
+ getEndpointPlugin,
38
+ getHostHeaderPlugin,
39
+ getHttpAuthSchemeEndpointRuleSetPlugin,
40
+ getHttpSigningPlugin,
41
+ getLoggerPlugin,
42
+ getRecursionDetectionPlugin,
43
+ getRetryPlugin,
44
+ getSerdePlugin,
45
+ getUserAgentPlugin,
46
+ httpSigningMiddlewareOptions,
47
+ resolveAwsRegionExtensionConfiguration,
48
+ resolveAwsSdkSigV4AConfig,
49
+ resolveAwsSdkSigV4Config,
50
+ resolveDefaultsModeConfig,
51
+ resolveEndpoint,
52
+ resolveEndpointConfig,
53
+ resolveHostHeaderConfig,
54
+ resolveParams,
55
+ resolveRegionConfig,
56
+ resolveRetryConfig,
57
+ resolveUserAgentConfig,
58
+ setFeature,
59
+ signatureV4aContainer
60
+ } from "./chunk-XXAWQ5GA.js";
61
+ import {
62
+ loadConfig,
63
+ parseUrl
64
+ } from "./chunk-UFTVLHTW.js";
65
+ import {
66
+ Client,
67
+ Command,
68
+ HttpRequest,
69
+ HttpResponse,
70
+ NoOpLogger,
71
+ NodeHttpHandler,
72
+ SENSITIVE_STRING,
73
+ ServiceException,
74
+ collectBody,
75
+ createBufferedReadable,
76
+ createChecksumStream,
77
+ dateToUtcString,
78
+ decorateServiceException,
79
+ emitWarningIfUnsupportedVersion as emitWarningIfUnsupportedVersion2,
80
+ expectNonNull,
81
+ expectObject,
82
+ expectString,
83
+ fromBase64,
84
+ fromHex,
85
+ fromUtf8,
86
+ getAwsChunkedEncodingStream,
87
+ getDefaultExtensionConfiguration,
88
+ getHttpHandlerExtensionConfiguration,
89
+ getSmithyContext,
90
+ headStream,
91
+ isArrayBuffer,
92
+ isSerializableHeaderValue,
93
+ loadConfigsForDefaultMode,
94
+ map,
95
+ normalizeProvider,
96
+ parseBoolean,
97
+ parseRfc3339DateTimeWithOffset,
98
+ requestBuilder,
99
+ resolveDefaultRuntimeConfig,
100
+ resolveHttpHandlerRuntimeConfig,
101
+ sdkStreamMixin,
102
+ serializeDateTime,
103
+ splitStream,
104
+ streamCollector,
105
+ strictParseLong,
106
+ toBase64,
107
+ toHex,
108
+ toUint8Array,
109
+ toUtf8,
110
+ withBaseException
111
+ } from "./chunk-BIVFO5LG.js";
112
+ import {
113
+ ENV_PROFILE
114
+ } from "./chunk-HAEAETXR.js";
115
+ import "./chunk-UZGMBQZB.js";
116
+ import "./chunk-3YGWW265.js";
117
+ import {
118
+ CredentialsProviderError,
119
+ __export,
120
+ chain,
121
+ memoize
122
+ } from "./chunk-R63LRFTI.js";
6
123
 
7
124
  // src/api.ts
8
125
  import axios from "axios";
@@ -54,9 +171,9 @@ var factory = {
54
171
  let res;
55
172
  try {
56
173
  res = await etainablApi.get(req.url, options);
57
- } catch (e) {
58
- if (e.response?.data) throw new Error(`API error response: ${JSON.stringify(e.response.data)}`);
59
- throw e;
174
+ } catch (e2) {
175
+ if (e2.response?.data) throw new Error(`API error response: ${JSON.stringify(e2.response.data)}`);
176
+ throw e2;
60
177
  }
61
178
  console.log(`API Response: ${req.method} ${process.env.ETAINABL_API_URL}/${req.url}`);
62
179
  _handleResponse(req, res);
@@ -71,9 +188,9 @@ var factory = {
71
188
  let res;
72
189
  try {
73
190
  res = await etainablApi.get(req.url, options);
74
- } catch (e) {
75
- if (e.response?.data) throw new Error(`API error response: ${JSON.stringify(e.response.data)}`);
76
- throw e;
191
+ } catch (e2) {
192
+ if (e2.response?.data) throw new Error(`API error response: ${JSON.stringify(e2.response.data)}`);
193
+ throw e2;
77
194
  }
78
195
  console.log(`API Response: ${req.method} ${process.env.ETAINABL_API_URL}/${req.url}`);
79
196
  _handleResponse(req, res);
@@ -88,9 +205,9 @@ var factory = {
88
205
  let res;
89
206
  try {
90
207
  res = await etainablApi.get(req.url, options);
91
- } catch (e) {
92
- if (e.response?.data) throw new Error(`API error response: ${JSON.stringify(e.response.data)}`);
93
- throw e;
208
+ } catch (e2) {
209
+ if (e2.response?.data) throw new Error(`API error response: ${JSON.stringify(e2.response.data)}`);
210
+ throw e2;
94
211
  }
95
212
  console.log(`API Response: ${req.method} ${process.env.ETAINABL_API_URL}/${req.url}`);
96
213
  _handleResponse(req, res, true);
@@ -105,9 +222,9 @@ var factory = {
105
222
  let res;
106
223
  try {
107
224
  res = await etainablApi.patch(req.url, data, options);
108
- } catch (e) {
109
- if (e.response?.data) throw new Error(`API error response: ${JSON.stringify(e.response.data)}`);
110
- throw e;
225
+ } catch (e2) {
226
+ if (e2.response?.data) throw new Error(`API error response: ${JSON.stringify(e2.response.data)}`);
227
+ throw e2;
111
228
  }
112
229
  _handleResponse(req, res);
113
230
  return res.data;
@@ -121,9 +238,9 @@ var factory = {
121
238
  let res;
122
239
  try {
123
240
  res = await etainablApi.post(req.url, data, options);
124
- } catch (e) {
125
- if (e.response?.data) throw new Error(`API error response: ${JSON.stringify(e.response.data)}`);
126
- throw e;
241
+ } catch (e2) {
242
+ if (e2.response?.data) throw new Error(`API error response: ${JSON.stringify(e2.response.data)}`);
243
+ throw e2;
127
244
  }
128
245
  _handleResponse(req, res);
129
246
  return res.data;
@@ -137,9 +254,9 @@ var factory = {
137
254
  log.info(`API Request: ${req.method} ${process.env.ETAINABL_API_URL}/${req.url}`);
138
255
  try {
139
256
  res = await etainablApi.delete(req.url, options);
140
- } catch (e) {
141
- if (e.response?.data) throw new Error(`API error response: ${JSON.stringify(e.response.data)}`);
142
- throw e;
257
+ } catch (e2) {
258
+ if (e2.response?.data) throw new Error(`API error response: ${JSON.stringify(e2.response.data)}`);
259
+ throw e2;
143
260
  }
144
261
  _handleResponse(req, res);
145
262
  return res.data;
@@ -155,9 +272,9 @@ var factory = {
155
272
  let res;
156
273
  try {
157
274
  res = await etainablApi.request(req);
158
- } catch (e) {
159
- if (e.response?.data) throw new Error(`API error response: ${JSON.stringify(e.response.data)}`);
160
- throw e;
275
+ } catch (e2) {
276
+ if (e2.response?.data) throw new Error(`API error response: ${JSON.stringify(e2.response.data)}`);
277
+ throw e2;
161
278
  }
162
279
  _handleResponse(req, res);
163
280
  return res.data;
@@ -355,9 +472,9 @@ var api_default = (auth, instanceOptions = {}) => {
355
472
  // global search
356
473
  globalSearch: factory.get(etainablApi, "global-search", "search")
357
474
  };
358
- } catch (e) {
359
- log.error(e);
360
- throw e;
475
+ } catch (e2) {
476
+ log.error(e2);
477
+ throw e2;
361
478
  }
362
479
  };
363
480
 
@@ -595,12 +712,12 @@ async function connectToDatabase(retryAttempt = 1) {
595
712
  log2.debug("Connected successfully to MongoDB server! (Auth: AWS)");
596
713
  cachedDb = client.db("etainabl");
597
714
  return cachedDb;
598
- } catch (e) {
715
+ } catch (e2) {
599
716
  if (retryAttempt > 5) {
600
717
  console.log(`Error connecting to MongoDB server after 5 attempts...`);
601
- throw e;
718
+ throw e2;
602
719
  }
603
- console.log(`MongoDB Connection error: ${e.message}`);
720
+ console.log(`MongoDB Connection error: ${e2.message}`);
604
721
  console.log(`Error connecting to MongoDB server... Retrying in 3 seconds... (Attempt ${retryAttempt})`);
605
722
  return connectToDatabase(retryAttempt + 1);
606
723
  }
@@ -810,8 +927,8 @@ var sendHeartbeat = async () => {
810
927
  try {
811
928
  await axios3.post(process.env.HEARTBEAT_URL);
812
929
  return true;
813
- } catch (e) {
814
- log3.warn(`Failed to send heartbeat: ${e.message || e}`);
930
+ } catch (e2) {
931
+ log3.warn(`Failed to send heartbeat: ${e2.message || e2}`);
815
932
  return false;
816
933
  }
817
934
  };
@@ -882,13 +999,14 @@ var utils_exports = {};
882
999
  __export(utils_exports, {
883
1000
  automationServices: () => automationServices,
884
1001
  automationSources: () => automationSources,
1002
+ getMeterPointNumberBottomLine: () => getMeterPointNumberBottomLine,
885
1003
  units: () => units,
886
1004
  utilityTypes: () => utilityTypes,
887
1005
  wasteCategories: () => wasteCategories
888
1006
  });
889
1007
 
890
1008
  // src/utils/automation.ts
891
- var automationSources = ["ftp", "email", "s3"];
1009
+ var automationSources = ["ftp", "email", "s3", "manual"];
892
1010
  var automationServices = [
893
1011
  {
894
1012
  friendly: "Account Status",
@@ -1177,6 +1295,17 @@ var units = [
1177
1295
  { name: "ppb (Parts per Billion)", value: "ppb", types: ["voc"], defaultTypes: ["voc"] },
1178
1296
  { name: "count (Number of People Detected)", value: "count", types: ["occupancy"], defaultTypes: ["occupancy"] }
1179
1297
  ];
1298
+ var getMeterPointNumberBottomLine = (meterPointNumber) => {
1299
+ if (!meterPointNumber) return "";
1300
+ const mpan = String(meterPointNumber).replace(/\s/g, "");
1301
+ if (mpan.length === 21) {
1302
+ return mpan.substring(8, 21);
1303
+ }
1304
+ if (mpan.length === 13) {
1305
+ return mpan;
1306
+ }
1307
+ return "";
1308
+ };
1180
1309
 
1181
1310
  // src/openai/index.ts
1182
1311
  var openai_exports = {};
@@ -1315,9 +1444,9 @@ ${additionalInstructions.join("\n\n")}`,
1315
1444
  promptedAt,
1316
1445
  duration: (/* @__PURE__ */ new Date()).getTime() - promptedAt.getTime()
1317
1446
  };
1318
- } catch (e) {
1447
+ } catch (e2) {
1319
1448
  this.log.error("Error parsing prompt response:", {
1320
- error: e,
1449
+ error: e2,
1321
1450
  response: response.output_text,
1322
1451
  dmg,
1323
1452
  inputTokens,
@@ -1331,60 +1460,4149 @@ ${additionalInstructions.join("\n\n")}`,
1331
1460
  // src/integrations.ts
1332
1461
  var integrations_exports = {};
1333
1462
  __export(integrations_exports, {
1334
- sendToDLQ: () => sendToDLQ
1463
+ collectionTypes: () => collectionTypes,
1464
+ createCsv: () => createCsv,
1465
+ errorCodes: () => errorCodes,
1466
+ sendToDLQ: () => sendToDLQ,
1467
+ uploadCsv: () => uploadCsv
1335
1468
  });
1336
- import { SendMessageCommand } from "@aws-sdk/client-sqs";
1337
- async function sendToDLQ({ QueueUrl, payload, dlqClient }) {
1338
- if (!QueueUrl) {
1339
- throw new Error("QueueUrl is required");
1469
+ import { stringify } from "csv-stringify/sync";
1470
+
1471
+ // node_modules/@aws-sdk/middleware-expect-continue/dist-es/index.js
1472
+ function addExpectContinueMiddleware(options) {
1473
+ return (next) => async (args) => {
1474
+ const { request } = args;
1475
+ if (HttpRequest.isInstance(request) && request.body && options.runtime === "node") {
1476
+ if (options.requestHandler?.constructor?.name !== "FetchHttpHandler") {
1477
+ request.headers = {
1478
+ ...request.headers,
1479
+ Expect: "100-continue"
1480
+ };
1481
+ }
1482
+ }
1483
+ return next({
1484
+ ...args,
1485
+ request
1486
+ });
1487
+ };
1488
+ }
1489
+ var addExpectContinueMiddlewareOptions = {
1490
+ step: "build",
1491
+ tags: ["SET_EXPECT_HEADER", "EXPECT_HEADER"],
1492
+ name: "addExpectContinueMiddleware",
1493
+ override: true
1494
+ };
1495
+ var getAddExpectContinuePlugin = (options) => ({
1496
+ applyToStack: (clientStack) => {
1497
+ clientStack.add(addExpectContinueMiddleware(options), addExpectContinueMiddlewareOptions);
1340
1498
  }
1341
- if (!payload || !payload.account) {
1342
- throw new Error("Payload and account information are required");
1499
+ });
1500
+
1501
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/constants.js
1502
+ var RequestChecksumCalculation = {
1503
+ WHEN_SUPPORTED: "WHEN_SUPPORTED",
1504
+ WHEN_REQUIRED: "WHEN_REQUIRED"
1505
+ };
1506
+ var DEFAULT_REQUEST_CHECKSUM_CALCULATION = RequestChecksumCalculation.WHEN_SUPPORTED;
1507
+ var ResponseChecksumValidation = {
1508
+ WHEN_SUPPORTED: "WHEN_SUPPORTED",
1509
+ WHEN_REQUIRED: "WHEN_REQUIRED"
1510
+ };
1511
+ var DEFAULT_RESPONSE_CHECKSUM_VALIDATION = RequestChecksumCalculation.WHEN_SUPPORTED;
1512
+ var ChecksumAlgorithm;
1513
+ (function(ChecksumAlgorithm2) {
1514
+ ChecksumAlgorithm2["MD5"] = "MD5";
1515
+ ChecksumAlgorithm2["CRC32"] = "CRC32";
1516
+ ChecksumAlgorithm2["CRC32C"] = "CRC32C";
1517
+ ChecksumAlgorithm2["CRC64NVME"] = "CRC64NVME";
1518
+ ChecksumAlgorithm2["SHA1"] = "SHA1";
1519
+ ChecksumAlgorithm2["SHA256"] = "SHA256";
1520
+ })(ChecksumAlgorithm || (ChecksumAlgorithm = {}));
1521
+ var ChecksumLocation;
1522
+ (function(ChecksumLocation2) {
1523
+ ChecksumLocation2["HEADER"] = "header";
1524
+ ChecksumLocation2["TRAILER"] = "trailer";
1525
+ })(ChecksumLocation || (ChecksumLocation = {}));
1526
+ var DEFAULT_CHECKSUM_ALGORITHM = ChecksumAlgorithm.CRC32;
1527
+
1528
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/stringUnionSelector.js
1529
+ var SelectorType2;
1530
+ (function(SelectorType3) {
1531
+ SelectorType3["ENV"] = "env";
1532
+ SelectorType3["CONFIG"] = "shared config entry";
1533
+ })(SelectorType2 || (SelectorType2 = {}));
1534
+ var stringUnionSelector = (obj, key, union, type) => {
1535
+ if (!(key in obj))
1536
+ return void 0;
1537
+ const value = obj[key].toUpperCase();
1538
+ if (!Object.values(union).includes(value)) {
1539
+ throw new TypeError(`Cannot load ${type} '${key}'. Expected one of ${Object.values(union)}, got '${obj[key]}'.`);
1343
1540
  }
1344
- const { automation, account, context, error, metadata } = payload;
1345
- if (!context || !context.messageId || !context.processingStage) {
1346
- throw new Error("Context with messageId and processingStage is required");
1541
+ return value;
1542
+ };
1543
+
1544
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/NODE_REQUEST_CHECKSUM_CALCULATION_CONFIG_OPTIONS.js
1545
+ var ENV_REQUEST_CHECKSUM_CALCULATION = "AWS_REQUEST_CHECKSUM_CALCULATION";
1546
+ var CONFIG_REQUEST_CHECKSUM_CALCULATION = "request_checksum_calculation";
1547
+ var NODE_REQUEST_CHECKSUM_CALCULATION_CONFIG_OPTIONS = {
1548
+ environmentVariableSelector: (env) => stringUnionSelector(env, ENV_REQUEST_CHECKSUM_CALCULATION, RequestChecksumCalculation, SelectorType2.ENV),
1549
+ configFileSelector: (profile) => stringUnionSelector(profile, CONFIG_REQUEST_CHECKSUM_CALCULATION, RequestChecksumCalculation, SelectorType2.CONFIG),
1550
+ default: DEFAULT_REQUEST_CHECKSUM_CALCULATION
1551
+ };
1552
+
1553
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/NODE_RESPONSE_CHECKSUM_VALIDATION_CONFIG_OPTIONS.js
1554
+ var ENV_RESPONSE_CHECKSUM_VALIDATION = "AWS_RESPONSE_CHECKSUM_VALIDATION";
1555
+ var CONFIG_RESPONSE_CHECKSUM_VALIDATION = "response_checksum_validation";
1556
+ var NODE_RESPONSE_CHECKSUM_VALIDATION_CONFIG_OPTIONS = {
1557
+ environmentVariableSelector: (env) => stringUnionSelector(env, ENV_RESPONSE_CHECKSUM_VALIDATION, ResponseChecksumValidation, SelectorType2.ENV),
1558
+ configFileSelector: (profile) => stringUnionSelector(profile, CONFIG_RESPONSE_CHECKSUM_VALIDATION, ResponseChecksumValidation, SelectorType2.CONFIG),
1559
+ default: DEFAULT_RESPONSE_CHECKSUM_VALIDATION
1560
+ };
1561
+
1562
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/crc64-nvme-crt-container.js
1563
+ var crc64NvmeCrtContainer = {
1564
+ CrtCrc64Nvme: null
1565
+ };
1566
+
1567
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/types.js
1568
+ var CLIENT_SUPPORTED_ALGORITHMS = [
1569
+ ChecksumAlgorithm.CRC32,
1570
+ ChecksumAlgorithm.CRC32C,
1571
+ ChecksumAlgorithm.CRC64NVME,
1572
+ ChecksumAlgorithm.SHA1,
1573
+ ChecksumAlgorithm.SHA256
1574
+ ];
1575
+ var PRIORITY_ORDER_ALGORITHMS = [
1576
+ ChecksumAlgorithm.SHA256,
1577
+ ChecksumAlgorithm.SHA1,
1578
+ ChecksumAlgorithm.CRC32,
1579
+ ChecksumAlgorithm.CRC32C,
1580
+ ChecksumAlgorithm.CRC64NVME
1581
+ ];
1582
+
1583
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/getChecksumAlgorithmForRequest.js
1584
+ var getChecksumAlgorithmForRequest = (input, { requestChecksumRequired, requestAlgorithmMember, requestChecksumCalculation }) => {
1585
+ if (!requestAlgorithmMember) {
1586
+ return requestChecksumCalculation === RequestChecksumCalculation.WHEN_SUPPORTED || requestChecksumRequired ? DEFAULT_CHECKSUM_ALGORITHM : void 0;
1347
1587
  }
1348
- if (!metadata || !metadata.service) {
1349
- throw new Error("Metadata with service information is required");
1588
+ if (!input[requestAlgorithmMember]) {
1589
+ return void 0;
1350
1590
  }
1351
- if (!account || !account._id) {
1352
- throw new Error("Account information with _id is required");
1591
+ const checksumAlgorithm = input[requestAlgorithmMember];
1592
+ if (!CLIENT_SUPPORTED_ALGORITHMS.includes(checksumAlgorithm)) {
1593
+ throw new Error(`The checksum algorithm "${checksumAlgorithm}" is not supported by the client. Select one of ${CLIENT_SUPPORTED_ALGORITHMS}.`);
1353
1594
  }
1354
- if (!error || !error.message || !error.timestamp) {
1355
- throw new Error("Error information with message and timestamp is required");
1595
+ return checksumAlgorithm;
1596
+ };
1597
+
1598
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/getChecksumLocationName.js
1599
+ var getChecksumLocationName = (algorithm) => algorithm === ChecksumAlgorithm.MD5 ? "content-md5" : `x-amz-checksum-${algorithm.toLowerCase()}`;
1600
+
1601
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/hasHeader.js
1602
+ var hasHeader = (header, headers) => {
1603
+ const soughtHeader = header.toLowerCase();
1604
+ for (const headerName of Object.keys(headers)) {
1605
+ if (soughtHeader === headerName.toLowerCase()) {
1606
+ return true;
1607
+ }
1356
1608
  }
1357
- if (!automation || !automation._id) {
1358
- throw new Error("Automation information with _id is required");
1609
+ return false;
1610
+ };
1611
+
1612
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/hasHeaderWithPrefix.js
1613
+ var hasHeaderWithPrefix = (headerPrefix, headers) => {
1614
+ const soughtHeaderPrefix = headerPrefix.toLowerCase();
1615
+ for (const headerName of Object.keys(headers)) {
1616
+ if (headerName.toLowerCase().startsWith(soughtHeaderPrefix)) {
1617
+ return true;
1618
+ }
1359
1619
  }
1360
- await dlqClient.send(
1361
- new SendMessageCommand({
1362
- QueueUrl,
1363
- MessageBody: JSON.stringify(payload),
1364
- MessageAttributes: {
1365
- service: {
1366
- DataType: "String",
1367
- StringValue: metadata.service
1368
- },
1369
- accountId: {
1370
- DataType: "String",
1371
- StringValue: account._id || "unknown"
1372
- },
1373
- automationId: {
1374
- DataType: "String",
1375
- StringValue: automation._id || "unknown"
1376
- },
1377
- processingStage: {
1378
- DataType: "String",
1379
- StringValue: context.processingStage
1380
- },
1381
- timestamp: {
1382
- DataType: "String",
1383
- StringValue: error.timestamp
1620
+ return false;
1621
+ };
1622
+
1623
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/isStreaming.js
1624
+ var isStreaming = (body) => body !== void 0 && typeof body !== "string" && !ArrayBuffer.isView(body) && !isArrayBuffer(body);
1625
+
1626
+ // node_modules/tslib/tslib.es6.mjs
1627
+ function __awaiter(thisArg, _arguments, P2, generator) {
1628
+ function adopt(value) {
1629
+ return value instanceof P2 ? value : new P2(function(resolve) {
1630
+ resolve(value);
1631
+ });
1632
+ }
1633
+ return new (P2 || (P2 = Promise))(function(resolve, reject) {
1634
+ function fulfilled(value) {
1635
+ try {
1636
+ step(generator.next(value));
1637
+ } catch (e2) {
1638
+ reject(e2);
1639
+ }
1640
+ }
1641
+ function rejected(value) {
1642
+ try {
1643
+ step(generator["throw"](value));
1644
+ } catch (e2) {
1645
+ reject(e2);
1646
+ }
1647
+ }
1648
+ function step(result) {
1649
+ result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
1650
+ }
1651
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
1652
+ });
1653
+ }
1654
+ function __generator(thisArg, body) {
1655
+ var _ = { label: 0, sent: function() {
1656
+ if (t2[0] & 1) throw t2[1];
1657
+ return t2[1];
1658
+ }, trys: [], ops: [] }, f2, y2, t2, g2 = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
1659
+ return g2.next = verb(0), g2["throw"] = verb(1), g2["return"] = verb(2), typeof Symbol === "function" && (g2[Symbol.iterator] = function() {
1660
+ return this;
1661
+ }), g2;
1662
+ function verb(n2) {
1663
+ return function(v2) {
1664
+ return step([n2, v2]);
1665
+ };
1666
+ }
1667
+ function step(op) {
1668
+ if (f2) throw new TypeError("Generator is already executing.");
1669
+ while (g2 && (g2 = 0, op[0] && (_ = 0)), _) try {
1670
+ if (f2 = 1, y2 && (t2 = op[0] & 2 ? y2["return"] : op[0] ? y2["throw"] || ((t2 = y2["return"]) && t2.call(y2), 0) : y2.next) && !(t2 = t2.call(y2, op[1])).done) return t2;
1671
+ if (y2 = 0, t2) op = [op[0] & 2, t2.value];
1672
+ switch (op[0]) {
1673
+ case 0:
1674
+ case 1:
1675
+ t2 = op;
1676
+ break;
1677
+ case 4:
1678
+ _.label++;
1679
+ return { value: op[1], done: false };
1680
+ case 5:
1681
+ _.label++;
1682
+ y2 = op[1];
1683
+ op = [0];
1684
+ continue;
1685
+ case 7:
1686
+ op = _.ops.pop();
1687
+ _.trys.pop();
1688
+ continue;
1689
+ default:
1690
+ if (!(t2 = _.trys, t2 = t2.length > 0 && t2[t2.length - 1]) && (op[0] === 6 || op[0] === 2)) {
1691
+ _ = 0;
1692
+ continue;
1693
+ }
1694
+ if (op[0] === 3 && (!t2 || op[1] > t2[0] && op[1] < t2[3])) {
1695
+ _.label = op[1];
1696
+ break;
1697
+ }
1698
+ if (op[0] === 6 && _.label < t2[1]) {
1699
+ _.label = t2[1];
1700
+ t2 = op;
1701
+ break;
1702
+ }
1703
+ if (t2 && _.label < t2[2]) {
1704
+ _.label = t2[2];
1705
+ _.ops.push(op);
1706
+ break;
1707
+ }
1708
+ if (t2[2]) _.ops.pop();
1709
+ _.trys.pop();
1710
+ continue;
1711
+ }
1712
+ op = body.call(thisArg, _);
1713
+ } catch (e2) {
1714
+ op = [6, e2];
1715
+ y2 = 0;
1716
+ } finally {
1717
+ f2 = t2 = 0;
1718
+ }
1719
+ if (op[0] & 5) throw op[1];
1720
+ return { value: op[0] ? op[1] : void 0, done: true };
1721
+ }
1722
+ }
1723
+ function __values(o2) {
1724
+ var s2 = typeof Symbol === "function" && Symbol.iterator, m2 = s2 && o2[s2], i2 = 0;
1725
+ if (m2) return m2.call(o2);
1726
+ if (o2 && typeof o2.length === "number") return {
1727
+ next: function() {
1728
+ if (o2 && i2 >= o2.length) o2 = void 0;
1729
+ return { value: o2 && o2[i2++], done: !o2 };
1730
+ }
1731
+ };
1732
+ throw new TypeError(s2 ? "Object is not iterable." : "Symbol.iterator is not defined.");
1733
+ }
1734
+
1735
+ // node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from/dist-es/index.js
1736
+ import { Buffer as Buffer2 } from "buffer";
1737
+ var fromString = (input, encoding) => {
1738
+ if (typeof input !== "string") {
1739
+ throw new TypeError(`The "input" argument must be of type string. Received type ${typeof input} (${input})`);
1740
+ }
1741
+ return encoding ? Buffer2.from(input, encoding) : Buffer2.from(input);
1742
+ };
1743
+
1744
+ // node_modules/@aws-crypto/util/node_modules/@smithy/util-utf8/dist-es/fromUtf8.js
1745
+ var fromUtf82 = (input) => {
1746
+ const buf = fromString(input, "utf8");
1747
+ return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT);
1748
+ };
1749
+
1750
+ // node_modules/@aws-crypto/util/build/module/convertToBuffer.js
1751
+ var fromUtf83 = typeof Buffer !== "undefined" && Buffer.from ? function(input) {
1752
+ return Buffer.from(input, "utf8");
1753
+ } : fromUtf82;
1754
+ function convertToBuffer(data) {
1755
+ if (data instanceof Uint8Array)
1756
+ return data;
1757
+ if (typeof data === "string") {
1758
+ return fromUtf83(data);
1759
+ }
1760
+ if (ArrayBuffer.isView(data)) {
1761
+ return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);
1762
+ }
1763
+ return new Uint8Array(data);
1764
+ }
1765
+
1766
+ // node_modules/@aws-crypto/util/build/module/isEmptyData.js
1767
+ function isEmptyData(data) {
1768
+ if (typeof data === "string") {
1769
+ return data.length === 0;
1770
+ }
1771
+ return data.byteLength === 0;
1772
+ }
1773
+
1774
+ // node_modules/@aws-crypto/util/build/module/numToUint8.js
1775
+ function numToUint8(num) {
1776
+ return new Uint8Array([
1777
+ (num & 4278190080) >> 24,
1778
+ (num & 16711680) >> 16,
1779
+ (num & 65280) >> 8,
1780
+ num & 255
1781
+ ]);
1782
+ }
1783
+
1784
+ // node_modules/@aws-crypto/util/build/module/uint32ArrayFrom.js
1785
+ function uint32ArrayFrom(a_lookUpTable2) {
1786
+ if (!Uint32Array.from) {
1787
+ var return_array = new Uint32Array(a_lookUpTable2.length);
1788
+ var a_index = 0;
1789
+ while (a_index < a_lookUpTable2.length) {
1790
+ return_array[a_index] = a_lookUpTable2[a_index];
1791
+ a_index += 1;
1792
+ }
1793
+ return return_array;
1794
+ }
1795
+ return Uint32Array.from(a_lookUpTable2);
1796
+ }
1797
+
1798
+ // node_modules/@aws-crypto/crc32c/build/module/aws_crc32c.js
1799
+ var AwsCrc32c = (
1800
+ /** @class */
1801
+ function() {
1802
+ function AwsCrc32c2() {
1803
+ this.crc32c = new Crc32c();
1804
+ }
1805
+ AwsCrc32c2.prototype.update = function(toHash) {
1806
+ if (isEmptyData(toHash))
1807
+ return;
1808
+ this.crc32c.update(convertToBuffer(toHash));
1809
+ };
1810
+ AwsCrc32c2.prototype.digest = function() {
1811
+ return __awaiter(this, void 0, void 0, function() {
1812
+ return __generator(this, function(_a) {
1813
+ return [2, numToUint8(this.crc32c.digest())];
1814
+ });
1815
+ });
1816
+ };
1817
+ AwsCrc32c2.prototype.reset = function() {
1818
+ this.crc32c = new Crc32c();
1819
+ };
1820
+ return AwsCrc32c2;
1821
+ }()
1822
+ );
1823
+
1824
+ // node_modules/@aws-crypto/crc32c/build/module/index.js
1825
+ var Crc32c = (
1826
+ /** @class */
1827
+ function() {
1828
+ function Crc32c2() {
1829
+ this.checksum = 4294967295;
1830
+ }
1831
+ Crc32c2.prototype.update = function(data) {
1832
+ var e_1, _a;
1833
+ try {
1834
+ for (var data_1 = __values(data), data_1_1 = data_1.next(); !data_1_1.done; data_1_1 = data_1.next()) {
1835
+ var byte = data_1_1.value;
1836
+ this.checksum = this.checksum >>> 8 ^ lookupTable[(this.checksum ^ byte) & 255];
1837
+ }
1838
+ } catch (e_1_1) {
1839
+ e_1 = { error: e_1_1 };
1840
+ } finally {
1841
+ try {
1842
+ if (data_1_1 && !data_1_1.done && (_a = data_1.return)) _a.call(data_1);
1843
+ } finally {
1844
+ if (e_1) throw e_1.error;
1384
1845
  }
1385
1846
  }
1386
- })
1387
- );
1847
+ return this;
1848
+ };
1849
+ Crc32c2.prototype.digest = function() {
1850
+ return (this.checksum ^ 4294967295) >>> 0;
1851
+ };
1852
+ return Crc32c2;
1853
+ }()
1854
+ );
1855
+ var a_lookupTable = [
1856
+ 0,
1857
+ 4067132163,
1858
+ 3778769143,
1859
+ 324072436,
1860
+ 3348797215,
1861
+ 904991772,
1862
+ 648144872,
1863
+ 3570033899,
1864
+ 2329499855,
1865
+ 2024987596,
1866
+ 1809983544,
1867
+ 2575936315,
1868
+ 1296289744,
1869
+ 3207089363,
1870
+ 2893594407,
1871
+ 1578318884,
1872
+ 274646895,
1873
+ 3795141740,
1874
+ 4049975192,
1875
+ 51262619,
1876
+ 3619967088,
1877
+ 632279923,
1878
+ 922689671,
1879
+ 3298075524,
1880
+ 2592579488,
1881
+ 1760304291,
1882
+ 2075979607,
1883
+ 2312596564,
1884
+ 1562183871,
1885
+ 2943781820,
1886
+ 3156637768,
1887
+ 1313733451,
1888
+ 549293790,
1889
+ 3537243613,
1890
+ 3246849577,
1891
+ 871202090,
1892
+ 3878099393,
1893
+ 357341890,
1894
+ 102525238,
1895
+ 4101499445,
1896
+ 2858735121,
1897
+ 1477399826,
1898
+ 1264559846,
1899
+ 3107202533,
1900
+ 1845379342,
1901
+ 2677391885,
1902
+ 2361733625,
1903
+ 2125378298,
1904
+ 820201905,
1905
+ 3263744690,
1906
+ 3520608582,
1907
+ 598981189,
1908
+ 4151959214,
1909
+ 85089709,
1910
+ 373468761,
1911
+ 3827903834,
1912
+ 3124367742,
1913
+ 1213305469,
1914
+ 1526817161,
1915
+ 2842354314,
1916
+ 2107672161,
1917
+ 2412447074,
1918
+ 2627466902,
1919
+ 1861252501,
1920
+ 1098587580,
1921
+ 3004210879,
1922
+ 2688576843,
1923
+ 1378610760,
1924
+ 2262928035,
1925
+ 1955203488,
1926
+ 1742404180,
1927
+ 2511436119,
1928
+ 3416409459,
1929
+ 969524848,
1930
+ 714683780,
1931
+ 3639785095,
1932
+ 205050476,
1933
+ 4266873199,
1934
+ 3976438427,
1935
+ 526918040,
1936
+ 1361435347,
1937
+ 2739821008,
1938
+ 2954799652,
1939
+ 1114974503,
1940
+ 2529119692,
1941
+ 1691668175,
1942
+ 2005155131,
1943
+ 2247081528,
1944
+ 3690758684,
1945
+ 697762079,
1946
+ 986182379,
1947
+ 3366744552,
1948
+ 476452099,
1949
+ 3993867776,
1950
+ 4250756596,
1951
+ 255256311,
1952
+ 1640403810,
1953
+ 2477592673,
1954
+ 2164122517,
1955
+ 1922457750,
1956
+ 2791048317,
1957
+ 1412925310,
1958
+ 1197962378,
1959
+ 3037525897,
1960
+ 3944729517,
1961
+ 427051182,
1962
+ 170179418,
1963
+ 4165941337,
1964
+ 746937522,
1965
+ 3740196785,
1966
+ 3451792453,
1967
+ 1070968646,
1968
+ 1905808397,
1969
+ 2213795598,
1970
+ 2426610938,
1971
+ 1657317369,
1972
+ 3053634322,
1973
+ 1147748369,
1974
+ 1463399397,
1975
+ 2773627110,
1976
+ 4215344322,
1977
+ 153784257,
1978
+ 444234805,
1979
+ 3893493558,
1980
+ 1021025245,
1981
+ 3467647198,
1982
+ 3722505002,
1983
+ 797665321,
1984
+ 2197175160,
1985
+ 1889384571,
1986
+ 1674398607,
1987
+ 2443626636,
1988
+ 1164749927,
1989
+ 3070701412,
1990
+ 2757221520,
1991
+ 1446797203,
1992
+ 137323447,
1993
+ 4198817972,
1994
+ 3910406976,
1995
+ 461344835,
1996
+ 3484808360,
1997
+ 1037989803,
1998
+ 781091935,
1999
+ 3705997148,
2000
+ 2460548119,
2001
+ 1623424788,
2002
+ 1939049696,
2003
+ 2180517859,
2004
+ 1429367560,
2005
+ 2807687179,
2006
+ 3020495871,
2007
+ 1180866812,
2008
+ 410100952,
2009
+ 3927582683,
2010
+ 4182430767,
2011
+ 186734380,
2012
+ 3756733383,
2013
+ 763408580,
2014
+ 1053836080,
2015
+ 3434856499,
2016
+ 2722870694,
2017
+ 1344288421,
2018
+ 1131464017,
2019
+ 2971354706,
2020
+ 1708204729,
2021
+ 2545590714,
2022
+ 2229949006,
2023
+ 1988219213,
2024
+ 680717673,
2025
+ 3673779818,
2026
+ 3383336350,
2027
+ 1002577565,
2028
+ 4010310262,
2029
+ 493091189,
2030
+ 238226049,
2031
+ 4233660802,
2032
+ 2987750089,
2033
+ 1082061258,
2034
+ 1395524158,
2035
+ 2705686845,
2036
+ 1972364758,
2037
+ 2279892693,
2038
+ 2494862625,
2039
+ 1725896226,
2040
+ 952904198,
2041
+ 3399985413,
2042
+ 3656866545,
2043
+ 731699698,
2044
+ 4283874585,
2045
+ 222117402,
2046
+ 510512622,
2047
+ 3959836397,
2048
+ 3280807620,
2049
+ 837199303,
2050
+ 582374963,
2051
+ 3504198960,
2052
+ 68661723,
2053
+ 4135334616,
2054
+ 3844915500,
2055
+ 390545967,
2056
+ 1230274059,
2057
+ 3141532936,
2058
+ 2825850620,
2059
+ 1510247935,
2060
+ 2395924756,
2061
+ 2091215383,
2062
+ 1878366691,
2063
+ 2644384480,
2064
+ 3553878443,
2065
+ 565732008,
2066
+ 854102364,
2067
+ 3229815391,
2068
+ 340358836,
2069
+ 3861050807,
2070
+ 4117890627,
2071
+ 119113024,
2072
+ 1493875044,
2073
+ 2875275879,
2074
+ 3090270611,
2075
+ 1247431312,
2076
+ 2660249211,
2077
+ 1828433272,
2078
+ 2141937292,
2079
+ 2378227087,
2080
+ 3811616794,
2081
+ 291187481,
2082
+ 34330861,
2083
+ 4032846830,
2084
+ 615137029,
2085
+ 3603020806,
2086
+ 3314634738,
2087
+ 939183345,
2088
+ 1776939221,
2089
+ 2609017814,
2090
+ 2295496738,
2091
+ 2058945313,
2092
+ 2926798794,
2093
+ 1545135305,
2094
+ 1330124605,
2095
+ 3173225534,
2096
+ 4084100981,
2097
+ 17165430,
2098
+ 307568514,
2099
+ 3762199681,
2100
+ 888469610,
2101
+ 3332340585,
2102
+ 3587147933,
2103
+ 665062302,
2104
+ 2042050490,
2105
+ 2346497209,
2106
+ 2559330125,
2107
+ 1793573966,
2108
+ 3190661285,
2109
+ 1279665062,
2110
+ 1595330642,
2111
+ 2910671697
2112
+ ];
2113
+ var lookupTable = uint32ArrayFrom(a_lookupTable);
2114
+
2115
+ // node_modules/@aws-crypto/crc32/build/module/aws_crc32.js
2116
+ var AwsCrc32 = (
2117
+ /** @class */
2118
+ function() {
2119
+ function AwsCrc322() {
2120
+ this.crc32 = new Crc32();
2121
+ }
2122
+ AwsCrc322.prototype.update = function(toHash) {
2123
+ if (isEmptyData(toHash))
2124
+ return;
2125
+ this.crc32.update(convertToBuffer(toHash));
2126
+ };
2127
+ AwsCrc322.prototype.digest = function() {
2128
+ return __awaiter(this, void 0, void 0, function() {
2129
+ return __generator(this, function(_a) {
2130
+ return [2, numToUint8(this.crc32.digest())];
2131
+ });
2132
+ });
2133
+ };
2134
+ AwsCrc322.prototype.reset = function() {
2135
+ this.crc32 = new Crc32();
2136
+ };
2137
+ return AwsCrc322;
2138
+ }()
2139
+ );
2140
+
2141
+ // node_modules/@aws-crypto/crc32/build/module/index.js
2142
+ var Crc32 = (
2143
+ /** @class */
2144
+ function() {
2145
+ function Crc322() {
2146
+ this.checksum = 4294967295;
2147
+ }
2148
+ Crc322.prototype.update = function(data) {
2149
+ var e_1, _a;
2150
+ try {
2151
+ for (var data_1 = __values(data), data_1_1 = data_1.next(); !data_1_1.done; data_1_1 = data_1.next()) {
2152
+ var byte = data_1_1.value;
2153
+ this.checksum = this.checksum >>> 8 ^ lookupTable2[(this.checksum ^ byte) & 255];
2154
+ }
2155
+ } catch (e_1_1) {
2156
+ e_1 = { error: e_1_1 };
2157
+ } finally {
2158
+ try {
2159
+ if (data_1_1 && !data_1_1.done && (_a = data_1.return)) _a.call(data_1);
2160
+ } finally {
2161
+ if (e_1) throw e_1.error;
2162
+ }
2163
+ }
2164
+ return this;
2165
+ };
2166
+ Crc322.prototype.digest = function() {
2167
+ return (this.checksum ^ 4294967295) >>> 0;
2168
+ };
2169
+ return Crc322;
2170
+ }()
2171
+ );
2172
+ var a_lookUpTable = [
2173
+ 0,
2174
+ 1996959894,
2175
+ 3993919788,
2176
+ 2567524794,
2177
+ 124634137,
2178
+ 1886057615,
2179
+ 3915621685,
2180
+ 2657392035,
2181
+ 249268274,
2182
+ 2044508324,
2183
+ 3772115230,
2184
+ 2547177864,
2185
+ 162941995,
2186
+ 2125561021,
2187
+ 3887607047,
2188
+ 2428444049,
2189
+ 498536548,
2190
+ 1789927666,
2191
+ 4089016648,
2192
+ 2227061214,
2193
+ 450548861,
2194
+ 1843258603,
2195
+ 4107580753,
2196
+ 2211677639,
2197
+ 325883990,
2198
+ 1684777152,
2199
+ 4251122042,
2200
+ 2321926636,
2201
+ 335633487,
2202
+ 1661365465,
2203
+ 4195302755,
2204
+ 2366115317,
2205
+ 997073096,
2206
+ 1281953886,
2207
+ 3579855332,
2208
+ 2724688242,
2209
+ 1006888145,
2210
+ 1258607687,
2211
+ 3524101629,
2212
+ 2768942443,
2213
+ 901097722,
2214
+ 1119000684,
2215
+ 3686517206,
2216
+ 2898065728,
2217
+ 853044451,
2218
+ 1172266101,
2219
+ 3705015759,
2220
+ 2882616665,
2221
+ 651767980,
2222
+ 1373503546,
2223
+ 3369554304,
2224
+ 3218104598,
2225
+ 565507253,
2226
+ 1454621731,
2227
+ 3485111705,
2228
+ 3099436303,
2229
+ 671266974,
2230
+ 1594198024,
2231
+ 3322730930,
2232
+ 2970347812,
2233
+ 795835527,
2234
+ 1483230225,
2235
+ 3244367275,
2236
+ 3060149565,
2237
+ 1994146192,
2238
+ 31158534,
2239
+ 2563907772,
2240
+ 4023717930,
2241
+ 1907459465,
2242
+ 112637215,
2243
+ 2680153253,
2244
+ 3904427059,
2245
+ 2013776290,
2246
+ 251722036,
2247
+ 2517215374,
2248
+ 3775830040,
2249
+ 2137656763,
2250
+ 141376813,
2251
+ 2439277719,
2252
+ 3865271297,
2253
+ 1802195444,
2254
+ 476864866,
2255
+ 2238001368,
2256
+ 4066508878,
2257
+ 1812370925,
2258
+ 453092731,
2259
+ 2181625025,
2260
+ 4111451223,
2261
+ 1706088902,
2262
+ 314042704,
2263
+ 2344532202,
2264
+ 4240017532,
2265
+ 1658658271,
2266
+ 366619977,
2267
+ 2362670323,
2268
+ 4224994405,
2269
+ 1303535960,
2270
+ 984961486,
2271
+ 2747007092,
2272
+ 3569037538,
2273
+ 1256170817,
2274
+ 1037604311,
2275
+ 2765210733,
2276
+ 3554079995,
2277
+ 1131014506,
2278
+ 879679996,
2279
+ 2909243462,
2280
+ 3663771856,
2281
+ 1141124467,
2282
+ 855842277,
2283
+ 2852801631,
2284
+ 3708648649,
2285
+ 1342533948,
2286
+ 654459306,
2287
+ 3188396048,
2288
+ 3373015174,
2289
+ 1466479909,
2290
+ 544179635,
2291
+ 3110523913,
2292
+ 3462522015,
2293
+ 1591671054,
2294
+ 702138776,
2295
+ 2966460450,
2296
+ 3352799412,
2297
+ 1504918807,
2298
+ 783551873,
2299
+ 3082640443,
2300
+ 3233442989,
2301
+ 3988292384,
2302
+ 2596254646,
2303
+ 62317068,
2304
+ 1957810842,
2305
+ 3939845945,
2306
+ 2647816111,
2307
+ 81470997,
2308
+ 1943803523,
2309
+ 3814918930,
2310
+ 2489596804,
2311
+ 225274430,
2312
+ 2053790376,
2313
+ 3826175755,
2314
+ 2466906013,
2315
+ 167816743,
2316
+ 2097651377,
2317
+ 4027552580,
2318
+ 2265490386,
2319
+ 503444072,
2320
+ 1762050814,
2321
+ 4150417245,
2322
+ 2154129355,
2323
+ 426522225,
2324
+ 1852507879,
2325
+ 4275313526,
2326
+ 2312317920,
2327
+ 282753626,
2328
+ 1742555852,
2329
+ 4189708143,
2330
+ 2394877945,
2331
+ 397917763,
2332
+ 1622183637,
2333
+ 3604390888,
2334
+ 2714866558,
2335
+ 953729732,
2336
+ 1340076626,
2337
+ 3518719985,
2338
+ 2797360999,
2339
+ 1068828381,
2340
+ 1219638859,
2341
+ 3624741850,
2342
+ 2936675148,
2343
+ 906185462,
2344
+ 1090812512,
2345
+ 3747672003,
2346
+ 2825379669,
2347
+ 829329135,
2348
+ 1181335161,
2349
+ 3412177804,
2350
+ 3160834842,
2351
+ 628085408,
2352
+ 1382605366,
2353
+ 3423369109,
2354
+ 3138078467,
2355
+ 570562233,
2356
+ 1426400815,
2357
+ 3317316542,
2358
+ 2998733608,
2359
+ 733239954,
2360
+ 1555261956,
2361
+ 3268935591,
2362
+ 3050360625,
2363
+ 752459403,
2364
+ 1541320221,
2365
+ 2607071920,
2366
+ 3965973030,
2367
+ 1969922972,
2368
+ 40735498,
2369
+ 2617837225,
2370
+ 3943577151,
2371
+ 1913087877,
2372
+ 83908371,
2373
+ 2512341634,
2374
+ 3803740692,
2375
+ 2075208622,
2376
+ 213261112,
2377
+ 2463272603,
2378
+ 3855990285,
2379
+ 2094854071,
2380
+ 198958881,
2381
+ 2262029012,
2382
+ 4057260610,
2383
+ 1759359992,
2384
+ 534414190,
2385
+ 2176718541,
2386
+ 4139329115,
2387
+ 1873836001,
2388
+ 414664567,
2389
+ 2282248934,
2390
+ 4279200368,
2391
+ 1711684554,
2392
+ 285281116,
2393
+ 2405801727,
2394
+ 4167216745,
2395
+ 1634467795,
2396
+ 376229701,
2397
+ 2685067896,
2398
+ 3608007406,
2399
+ 1308918612,
2400
+ 956543938,
2401
+ 2808555105,
2402
+ 3495958263,
2403
+ 1231636301,
2404
+ 1047427035,
2405
+ 2932959818,
2406
+ 3654703836,
2407
+ 1088359270,
2408
+ 936918e3,
2409
+ 2847714899,
2410
+ 3736837829,
2411
+ 1202900863,
2412
+ 817233897,
2413
+ 3183342108,
2414
+ 3401237130,
2415
+ 1404277552,
2416
+ 615818150,
2417
+ 3134207493,
2418
+ 3453421203,
2419
+ 1423857449,
2420
+ 601450431,
2421
+ 3009837614,
2422
+ 3294710456,
2423
+ 1567103746,
2424
+ 711928724,
2425
+ 3020668471,
2426
+ 3272380065,
2427
+ 1510334235,
2428
+ 755167117
2429
+ ];
2430
+ var lookupTable2 = uint32ArrayFrom(a_lookUpTable);
2431
+
2432
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/getCrc32ChecksumAlgorithmFunction.js
2433
+ import * as zlib from "zlib";
2434
+ var NodeCrc32 = class {
2435
+ checksum = 0;
2436
+ update(data) {
2437
+ this.checksum = zlib.crc32(data, this.checksum);
2438
+ }
2439
+ async digest() {
2440
+ return numToUint8(this.checksum);
2441
+ }
2442
+ reset() {
2443
+ this.checksum = 0;
2444
+ }
2445
+ };
2446
+ var getCrc32ChecksumAlgorithmFunction = () => {
2447
+ if (typeof zlib.crc32 === "undefined") {
2448
+ return AwsCrc32;
2449
+ }
2450
+ return NodeCrc32;
2451
+ };
2452
+
2453
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/selectChecksumAlgorithmFunction.js
2454
+ var selectChecksumAlgorithmFunction = (checksumAlgorithm, config) => {
2455
+ switch (checksumAlgorithm) {
2456
+ case ChecksumAlgorithm.MD5:
2457
+ return config.md5;
2458
+ case ChecksumAlgorithm.CRC32:
2459
+ return getCrc32ChecksumAlgorithmFunction();
2460
+ case ChecksumAlgorithm.CRC32C:
2461
+ return AwsCrc32c;
2462
+ case ChecksumAlgorithm.CRC64NVME:
2463
+ if (typeof crc64NvmeCrtContainer.CrtCrc64Nvme !== "function") {
2464
+ throw new Error(`Please check whether you have installed the "@aws-sdk/crc64-nvme-crt" package explicitly.
2465
+ You must also register the package by calling [require("@aws-sdk/crc64-nvme-crt");] or an ESM equivalent such as [import "@aws-sdk/crc64-nvme-crt";].
2466
+ For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt`);
2467
+ }
2468
+ return crc64NvmeCrtContainer.CrtCrc64Nvme;
2469
+ case ChecksumAlgorithm.SHA1:
2470
+ return config.sha1;
2471
+ case ChecksumAlgorithm.SHA256:
2472
+ return config.sha256;
2473
+ default:
2474
+ throw new Error(`Unsupported checksum algorithm: ${checksumAlgorithm}`);
2475
+ }
2476
+ };
2477
+
2478
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/stringHasher.js
2479
+ var stringHasher = (checksumAlgorithmFn, body) => {
2480
+ const hash = new checksumAlgorithmFn();
2481
+ hash.update(toUint8Array(body || ""));
2482
+ return hash.digest();
2483
+ };
2484
+
2485
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/flexibleChecksumsMiddleware.js
2486
+ var flexibleChecksumsMiddlewareOptions = {
2487
+ name: "flexibleChecksumsMiddleware",
2488
+ step: "build",
2489
+ tags: ["BODY_CHECKSUM"],
2490
+ override: true
2491
+ };
2492
+ var flexibleChecksumsMiddleware = (config, middlewareConfig) => (next, context) => async (args) => {
2493
+ if (!HttpRequest.isInstance(args.request)) {
2494
+ return next(args);
2495
+ }
2496
+ if (hasHeaderWithPrefix("x-amz-checksum-", args.request.headers)) {
2497
+ return next(args);
2498
+ }
2499
+ const { request, input } = args;
2500
+ const { body: requestBody, headers } = request;
2501
+ const { base64Encoder, streamHasher } = config;
2502
+ const { requestChecksumRequired, requestAlgorithmMember } = middlewareConfig;
2503
+ const requestChecksumCalculation = await config.requestChecksumCalculation();
2504
+ const requestAlgorithmMemberName = requestAlgorithmMember?.name;
2505
+ const requestAlgorithmMemberHttpHeader = requestAlgorithmMember?.httpHeader;
2506
+ if (requestAlgorithmMemberName && !input[requestAlgorithmMemberName]) {
2507
+ if (requestChecksumCalculation === RequestChecksumCalculation.WHEN_SUPPORTED || requestChecksumRequired) {
2508
+ input[requestAlgorithmMemberName] = DEFAULT_CHECKSUM_ALGORITHM;
2509
+ if (requestAlgorithmMemberHttpHeader) {
2510
+ headers[requestAlgorithmMemberHttpHeader] = DEFAULT_CHECKSUM_ALGORITHM;
2511
+ }
2512
+ }
2513
+ }
2514
+ const checksumAlgorithm = getChecksumAlgorithmForRequest(input, {
2515
+ requestChecksumRequired,
2516
+ requestAlgorithmMember: requestAlgorithmMember?.name,
2517
+ requestChecksumCalculation
2518
+ });
2519
+ let updatedBody = requestBody;
2520
+ let updatedHeaders = headers;
2521
+ if (checksumAlgorithm) {
2522
+ switch (checksumAlgorithm) {
2523
+ case ChecksumAlgorithm.CRC32:
2524
+ setFeature(context, "FLEXIBLE_CHECKSUMS_REQ_CRC32", "U");
2525
+ break;
2526
+ case ChecksumAlgorithm.CRC32C:
2527
+ setFeature(context, "FLEXIBLE_CHECKSUMS_REQ_CRC32C", "V");
2528
+ break;
2529
+ case ChecksumAlgorithm.CRC64NVME:
2530
+ setFeature(context, "FLEXIBLE_CHECKSUMS_REQ_CRC64", "W");
2531
+ break;
2532
+ case ChecksumAlgorithm.SHA1:
2533
+ setFeature(context, "FLEXIBLE_CHECKSUMS_REQ_SHA1", "X");
2534
+ break;
2535
+ case ChecksumAlgorithm.SHA256:
2536
+ setFeature(context, "FLEXIBLE_CHECKSUMS_REQ_SHA256", "Y");
2537
+ break;
2538
+ }
2539
+ const checksumLocationName = getChecksumLocationName(checksumAlgorithm);
2540
+ const checksumAlgorithmFn = selectChecksumAlgorithmFunction(checksumAlgorithm, config);
2541
+ if (isStreaming(requestBody)) {
2542
+ const { getAwsChunkedEncodingStream: getAwsChunkedEncodingStream2, bodyLengthChecker } = config;
2543
+ updatedBody = getAwsChunkedEncodingStream2(typeof config.requestStreamBufferSize === "number" && config.requestStreamBufferSize >= 8 * 1024 ? createBufferedReadable(requestBody, config.requestStreamBufferSize, context.logger) : requestBody, {
2544
+ base64Encoder,
2545
+ bodyLengthChecker,
2546
+ checksumLocationName,
2547
+ checksumAlgorithmFn,
2548
+ streamHasher
2549
+ });
2550
+ updatedHeaders = {
2551
+ ...headers,
2552
+ "content-encoding": headers["content-encoding"] ? `${headers["content-encoding"]},aws-chunked` : "aws-chunked",
2553
+ "transfer-encoding": "chunked",
2554
+ "x-amz-decoded-content-length": headers["content-length"],
2555
+ "x-amz-content-sha256": "STREAMING-UNSIGNED-PAYLOAD-TRAILER",
2556
+ "x-amz-trailer": checksumLocationName
2557
+ };
2558
+ delete updatedHeaders["content-length"];
2559
+ } else if (!hasHeader(checksumLocationName, headers)) {
2560
+ const rawChecksum = await stringHasher(checksumAlgorithmFn, requestBody);
2561
+ updatedHeaders = {
2562
+ ...headers,
2563
+ [checksumLocationName]: base64Encoder(rawChecksum)
2564
+ };
2565
+ }
2566
+ }
2567
+ const result = await next({
2568
+ ...args,
2569
+ request: {
2570
+ ...request,
2571
+ headers: updatedHeaders,
2572
+ body: updatedBody
2573
+ }
2574
+ });
2575
+ return result;
2576
+ };
2577
+
2578
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/flexibleChecksumsInputMiddleware.js
2579
+ var flexibleChecksumsInputMiddlewareOptions = {
2580
+ name: "flexibleChecksumsInputMiddleware",
2581
+ toMiddleware: "serializerMiddleware",
2582
+ relation: "before",
2583
+ tags: ["BODY_CHECKSUM"],
2584
+ override: true
2585
+ };
2586
+ var flexibleChecksumsInputMiddleware = (config, middlewareConfig) => (next, context) => async (args) => {
2587
+ const input = args.input;
2588
+ const { requestValidationModeMember } = middlewareConfig;
2589
+ const requestChecksumCalculation = await config.requestChecksumCalculation();
2590
+ const responseChecksumValidation = await config.responseChecksumValidation();
2591
+ switch (requestChecksumCalculation) {
2592
+ case RequestChecksumCalculation.WHEN_REQUIRED:
2593
+ setFeature(context, "FLEXIBLE_CHECKSUMS_REQ_WHEN_REQUIRED", "a");
2594
+ break;
2595
+ case RequestChecksumCalculation.WHEN_SUPPORTED:
2596
+ setFeature(context, "FLEXIBLE_CHECKSUMS_REQ_WHEN_SUPPORTED", "Z");
2597
+ break;
2598
+ }
2599
+ switch (responseChecksumValidation) {
2600
+ case ResponseChecksumValidation.WHEN_REQUIRED:
2601
+ setFeature(context, "FLEXIBLE_CHECKSUMS_RES_WHEN_REQUIRED", "c");
2602
+ break;
2603
+ case ResponseChecksumValidation.WHEN_SUPPORTED:
2604
+ setFeature(context, "FLEXIBLE_CHECKSUMS_RES_WHEN_SUPPORTED", "b");
2605
+ break;
2606
+ }
2607
+ if (requestValidationModeMember && !input[requestValidationModeMember]) {
2608
+ if (responseChecksumValidation === ResponseChecksumValidation.WHEN_SUPPORTED) {
2609
+ input[requestValidationModeMember] = "ENABLED";
2610
+ }
2611
+ }
2612
+ return next(args);
2613
+ };
2614
+
2615
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/getChecksumAlgorithmListForResponse.js
2616
+ var getChecksumAlgorithmListForResponse = (responseAlgorithms = []) => {
2617
+ const validChecksumAlgorithms = [];
2618
+ for (const algorithm of PRIORITY_ORDER_ALGORITHMS) {
2619
+ if (!responseAlgorithms.includes(algorithm) || !CLIENT_SUPPORTED_ALGORITHMS.includes(algorithm)) {
2620
+ continue;
2621
+ }
2622
+ validChecksumAlgorithms.push(algorithm);
2623
+ }
2624
+ return validChecksumAlgorithms;
2625
+ };
2626
+
2627
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/isChecksumWithPartNumber.js
2628
+ var isChecksumWithPartNumber = (checksum) => {
2629
+ const lastHyphenIndex = checksum.lastIndexOf("-");
2630
+ if (lastHyphenIndex !== -1) {
2631
+ const numberPart = checksum.slice(lastHyphenIndex + 1);
2632
+ if (!numberPart.startsWith("0")) {
2633
+ const number = parseInt(numberPart, 10);
2634
+ if (!isNaN(number) && number >= 1 && number <= 1e4) {
2635
+ return true;
2636
+ }
2637
+ }
2638
+ }
2639
+ return false;
2640
+ };
2641
+
2642
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/getChecksum.js
2643
+ var getChecksum = async (body, { checksumAlgorithmFn, base64Encoder }) => base64Encoder(await stringHasher(checksumAlgorithmFn, body));
2644
+
2645
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/validateChecksumFromResponse.js
2646
+ var validateChecksumFromResponse = async (response, { config, responseAlgorithms, logger }) => {
2647
+ const checksumAlgorithms = getChecksumAlgorithmListForResponse(responseAlgorithms);
2648
+ const { body: responseBody, headers: responseHeaders } = response;
2649
+ for (const algorithm of checksumAlgorithms) {
2650
+ const responseHeader = getChecksumLocationName(algorithm);
2651
+ const checksumFromResponse = responseHeaders[responseHeader];
2652
+ if (checksumFromResponse) {
2653
+ let checksumAlgorithmFn;
2654
+ try {
2655
+ checksumAlgorithmFn = selectChecksumAlgorithmFunction(algorithm, config);
2656
+ } catch (error) {
2657
+ if (algorithm === ChecksumAlgorithm.CRC64NVME) {
2658
+ logger?.warn(`Skipping ${ChecksumAlgorithm.CRC64NVME} checksum validation: ${error.message}`);
2659
+ continue;
2660
+ }
2661
+ throw error;
2662
+ }
2663
+ const { base64Encoder } = config;
2664
+ if (isStreaming(responseBody)) {
2665
+ response.body = createChecksumStream({
2666
+ expectedChecksum: checksumFromResponse,
2667
+ checksumSourceLocation: responseHeader,
2668
+ checksum: new checksumAlgorithmFn(),
2669
+ source: responseBody,
2670
+ base64Encoder
2671
+ });
2672
+ return;
2673
+ }
2674
+ const checksum = await getChecksum(responseBody, { checksumAlgorithmFn, base64Encoder });
2675
+ if (checksum === checksumFromResponse) {
2676
+ break;
2677
+ }
2678
+ throw new Error(`Checksum mismatch: expected "${checksum}" but received "${checksumFromResponse}" in response header "${responseHeader}".`);
2679
+ }
2680
+ }
2681
+ };
2682
+
2683
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/flexibleChecksumsResponseMiddleware.js
2684
+ var flexibleChecksumsResponseMiddlewareOptions = {
2685
+ name: "flexibleChecksumsResponseMiddleware",
2686
+ toMiddleware: "deserializerMiddleware",
2687
+ relation: "after",
2688
+ tags: ["BODY_CHECKSUM"],
2689
+ override: true
2690
+ };
2691
+ var flexibleChecksumsResponseMiddleware = (config, middlewareConfig) => (next, context) => async (args) => {
2692
+ if (!HttpRequest.isInstance(args.request)) {
2693
+ return next(args);
2694
+ }
2695
+ const input = args.input;
2696
+ const result = await next(args);
2697
+ const response = result.response;
2698
+ const { requestValidationModeMember, responseAlgorithms } = middlewareConfig;
2699
+ if (requestValidationModeMember && input[requestValidationModeMember] === "ENABLED") {
2700
+ const { clientName, commandName } = context;
2701
+ const isS3WholeObjectMultipartGetResponseChecksum = clientName === "S3Client" && commandName === "GetObjectCommand" && getChecksumAlgorithmListForResponse(responseAlgorithms).every((algorithm) => {
2702
+ const responseHeader = getChecksumLocationName(algorithm);
2703
+ const checksumFromResponse = response.headers[responseHeader];
2704
+ return !checksumFromResponse || isChecksumWithPartNumber(checksumFromResponse);
2705
+ });
2706
+ if (isS3WholeObjectMultipartGetResponseChecksum) {
2707
+ return result;
2708
+ }
2709
+ await validateChecksumFromResponse(response, {
2710
+ config,
2711
+ responseAlgorithms,
2712
+ logger: context.logger
2713
+ });
2714
+ }
2715
+ return result;
2716
+ };
2717
+
2718
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/getFlexibleChecksumsPlugin.js
2719
+ var getFlexibleChecksumsPlugin = (config, middlewareConfig) => ({
2720
+ applyToStack: (clientStack) => {
2721
+ clientStack.add(flexibleChecksumsMiddleware(config, middlewareConfig), flexibleChecksumsMiddlewareOptions);
2722
+ clientStack.addRelativeTo(flexibleChecksumsInputMiddleware(config, middlewareConfig), flexibleChecksumsInputMiddlewareOptions);
2723
+ clientStack.addRelativeTo(flexibleChecksumsResponseMiddleware(config, middlewareConfig), flexibleChecksumsResponseMiddlewareOptions);
2724
+ }
2725
+ });
2726
+
2727
+ // node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/resolveFlexibleChecksumsConfig.js
2728
+ var resolveFlexibleChecksumsConfig = (input) => {
2729
+ const { requestChecksumCalculation, responseChecksumValidation, requestStreamBufferSize } = input;
2730
+ return Object.assign(input, {
2731
+ requestChecksumCalculation: normalizeProvider(requestChecksumCalculation ?? DEFAULT_REQUEST_CHECKSUM_CALCULATION),
2732
+ responseChecksumValidation: normalizeProvider(responseChecksumValidation ?? DEFAULT_RESPONSE_CHECKSUM_VALIDATION),
2733
+ requestStreamBufferSize: Number(requestStreamBufferSize ?? 0)
2734
+ });
2735
+ };
2736
+
2737
+ // node_modules/@aws-sdk/middleware-sdk-s3/dist-es/check-content-length-header.js
2738
+ var CONTENT_LENGTH_HEADER = "content-length";
2739
+ var DECODED_CONTENT_LENGTH_HEADER = "x-amz-decoded-content-length";
2740
+ function checkContentLengthHeader() {
2741
+ return (next, context) => async (args) => {
2742
+ const { request } = args;
2743
+ if (HttpRequest.isInstance(request)) {
2744
+ if (!(CONTENT_LENGTH_HEADER in request.headers) && !(DECODED_CONTENT_LENGTH_HEADER in request.headers)) {
2745
+ const message = `Are you using a Stream of unknown length as the Body of a PutObject request? Consider using Upload instead from @aws-sdk/lib-storage.`;
2746
+ if (typeof context?.logger?.warn === "function" && !(context.logger instanceof NoOpLogger)) {
2747
+ context.logger.warn(message);
2748
+ } else {
2749
+ console.warn(message);
2750
+ }
2751
+ }
2752
+ }
2753
+ return next({ ...args });
2754
+ };
2755
+ }
2756
+ var checkContentLengthHeaderMiddlewareOptions = {
2757
+ step: "finalizeRequest",
2758
+ tags: ["CHECK_CONTENT_LENGTH_HEADER"],
2759
+ name: "getCheckContentLengthHeaderPlugin",
2760
+ override: true
2761
+ };
2762
+ var getCheckContentLengthHeaderPlugin = (unused) => ({
2763
+ applyToStack: (clientStack) => {
2764
+ clientStack.add(checkContentLengthHeader(), checkContentLengthHeaderMiddlewareOptions);
2765
+ }
2766
+ });
2767
+
2768
+ // node_modules/@aws-sdk/middleware-sdk-s3/dist-es/region-redirect-endpoint-middleware.js
2769
+ var regionRedirectEndpointMiddleware = (config) => {
2770
+ return (next, context) => async (args) => {
2771
+ const originalRegion = await config.region();
2772
+ const regionProviderRef = config.region;
2773
+ let unlock = () => {
2774
+ };
2775
+ if (context.__s3RegionRedirect) {
2776
+ Object.defineProperty(config, "region", {
2777
+ writable: false,
2778
+ value: async () => {
2779
+ return context.__s3RegionRedirect;
2780
+ }
2781
+ });
2782
+ unlock = () => Object.defineProperty(config, "region", {
2783
+ writable: true,
2784
+ value: regionProviderRef
2785
+ });
2786
+ }
2787
+ try {
2788
+ const result = await next(args);
2789
+ if (context.__s3RegionRedirect) {
2790
+ unlock();
2791
+ const region = await config.region();
2792
+ if (originalRegion !== region) {
2793
+ throw new Error("Region was not restored following S3 region redirect.");
2794
+ }
2795
+ }
2796
+ return result;
2797
+ } catch (e2) {
2798
+ unlock();
2799
+ throw e2;
2800
+ }
2801
+ };
2802
+ };
2803
+ var regionRedirectEndpointMiddlewareOptions = {
2804
+ tags: ["REGION_REDIRECT", "S3"],
2805
+ name: "regionRedirectEndpointMiddleware",
2806
+ override: true,
2807
+ relation: "before",
2808
+ toMiddleware: "endpointV2Middleware"
2809
+ };
2810
+
2811
+ // node_modules/@aws-sdk/middleware-sdk-s3/dist-es/region-redirect-middleware.js
2812
+ function regionRedirectMiddleware(clientConfig) {
2813
+ return (next, context) => async (args) => {
2814
+ try {
2815
+ return await next(args);
2816
+ } catch (err) {
2817
+ if (clientConfig.followRegionRedirects) {
2818
+ if (err?.$metadata?.httpStatusCode === 301 || err?.$metadata?.httpStatusCode === 400 && err?.name === "IllegalLocationConstraintException") {
2819
+ try {
2820
+ const actualRegion = err.$response.headers["x-amz-bucket-region"];
2821
+ context.logger?.debug(`Redirecting from ${await clientConfig.region()} to ${actualRegion}`);
2822
+ context.__s3RegionRedirect = actualRegion;
2823
+ } catch (e2) {
2824
+ throw new Error("Region redirect failed: " + e2);
2825
+ }
2826
+ return next(args);
2827
+ }
2828
+ }
2829
+ throw err;
2830
+ }
2831
+ };
2832
+ }
2833
+ var regionRedirectMiddlewareOptions = {
2834
+ step: "initialize",
2835
+ tags: ["REGION_REDIRECT", "S3"],
2836
+ name: "regionRedirectMiddleware",
2837
+ override: true
2838
+ };
2839
+ var getRegionRedirectMiddlewarePlugin = (clientConfig) => ({
2840
+ applyToStack: (clientStack) => {
2841
+ clientStack.add(regionRedirectMiddleware(clientConfig), regionRedirectMiddlewareOptions);
2842
+ clientStack.addRelativeTo(regionRedirectEndpointMiddleware(clientConfig), regionRedirectEndpointMiddlewareOptions);
2843
+ }
2844
+ });
2845
+
2846
+ // node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/S3ExpressIdentityCache.js
2847
+ var S3ExpressIdentityCache = class _S3ExpressIdentityCache {
2848
+ data;
2849
+ lastPurgeTime = Date.now();
2850
+ static EXPIRED_CREDENTIAL_PURGE_INTERVAL_MS = 3e4;
2851
+ constructor(data = {}) {
2852
+ this.data = data;
2853
+ }
2854
+ get(key) {
2855
+ const entry = this.data[key];
2856
+ if (!entry) {
2857
+ return;
2858
+ }
2859
+ return entry;
2860
+ }
2861
+ set(key, entry) {
2862
+ this.data[key] = entry;
2863
+ return entry;
2864
+ }
2865
+ delete(key) {
2866
+ delete this.data[key];
2867
+ }
2868
+ async purgeExpired() {
2869
+ const now = Date.now();
2870
+ if (this.lastPurgeTime + _S3ExpressIdentityCache.EXPIRED_CREDENTIAL_PURGE_INTERVAL_MS > now) {
2871
+ return;
2872
+ }
2873
+ for (const key in this.data) {
2874
+ const entry = this.data[key];
2875
+ if (!entry.isRefreshing) {
2876
+ const credential = await entry.identity;
2877
+ if (credential.expiration) {
2878
+ if (credential.expiration.getTime() < now) {
2879
+ delete this.data[key];
2880
+ }
2881
+ }
2882
+ }
2883
+ }
2884
+ }
2885
+ };
2886
+
2887
+ // node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/S3ExpressIdentityCacheEntry.js
2888
+ var S3ExpressIdentityCacheEntry = class {
2889
+ _identity;
2890
+ isRefreshing;
2891
+ accessed;
2892
+ constructor(_identity, isRefreshing = false, accessed = Date.now()) {
2893
+ this._identity = _identity;
2894
+ this.isRefreshing = isRefreshing;
2895
+ this.accessed = accessed;
2896
+ }
2897
+ get identity() {
2898
+ this.accessed = Date.now();
2899
+ return this._identity;
2900
+ }
2901
+ };
2902
+
2903
+ // node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/S3ExpressIdentityProviderImpl.js
2904
+ var S3ExpressIdentityProviderImpl = class _S3ExpressIdentityProviderImpl {
2905
+ createSessionFn;
2906
+ cache;
2907
+ static REFRESH_WINDOW_MS = 6e4;
2908
+ constructor(createSessionFn, cache2 = new S3ExpressIdentityCache()) {
2909
+ this.createSessionFn = createSessionFn;
2910
+ this.cache = cache2;
2911
+ }
2912
+ async getS3ExpressIdentity(awsIdentity, identityProperties) {
2913
+ const key = identityProperties.Bucket;
2914
+ const { cache: cache2 } = this;
2915
+ const entry = cache2.get(key);
2916
+ if (entry) {
2917
+ return entry.identity.then((identity) => {
2918
+ const isExpired = (identity.expiration?.getTime() ?? 0) < Date.now();
2919
+ if (isExpired) {
2920
+ return cache2.set(key, new S3ExpressIdentityCacheEntry(this.getIdentity(key))).identity;
2921
+ }
2922
+ const isExpiringSoon = (identity.expiration?.getTime() ?? 0) < Date.now() + _S3ExpressIdentityProviderImpl.REFRESH_WINDOW_MS;
2923
+ if (isExpiringSoon && !entry.isRefreshing) {
2924
+ entry.isRefreshing = true;
2925
+ this.getIdentity(key).then((id) => {
2926
+ cache2.set(key, new S3ExpressIdentityCacheEntry(Promise.resolve(id)));
2927
+ });
2928
+ }
2929
+ return identity;
2930
+ });
2931
+ }
2932
+ return cache2.set(key, new S3ExpressIdentityCacheEntry(this.getIdentity(key))).identity;
2933
+ }
2934
+ async getIdentity(key) {
2935
+ await this.cache.purgeExpired().catch((error) => {
2936
+ console.warn("Error while clearing expired entries in S3ExpressIdentityCache: \n" + error);
2937
+ });
2938
+ const session = await this.createSessionFn(key);
2939
+ if (!session.Credentials?.AccessKeyId || !session.Credentials?.SecretAccessKey) {
2940
+ throw new Error("s3#createSession response credential missing AccessKeyId or SecretAccessKey.");
2941
+ }
2942
+ const identity = {
2943
+ accessKeyId: session.Credentials.AccessKeyId,
2944
+ secretAccessKey: session.Credentials.SecretAccessKey,
2945
+ sessionToken: session.Credentials.SessionToken,
2946
+ expiration: session.Credentials.Expiration ? new Date(session.Credentials.Expiration) : void 0
2947
+ };
2948
+ return identity;
2949
+ }
2950
+ };
2951
+
2952
+ // node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/constants.js
2953
+ var S3_EXPRESS_BUCKET_TYPE = "Directory";
2954
+ var S3_EXPRESS_BACKEND = "S3Express";
2955
+ var S3_EXPRESS_AUTH_SCHEME = "sigv4-s3express";
2956
+ var SESSION_TOKEN_QUERY_PARAM = "X-Amz-S3session-Token";
2957
+ var SESSION_TOKEN_HEADER = SESSION_TOKEN_QUERY_PARAM.toLowerCase();
2958
+ var NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_ENV_NAME = "AWS_S3_DISABLE_EXPRESS_SESSION_AUTH";
2959
+ var NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_INI_NAME = "s3_disable_express_session_auth";
2960
+ var NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS = {
2961
+ environmentVariableSelector: (env) => booleanSelector(env, NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_ENV_NAME, SelectorType.ENV),
2962
+ configFileSelector: (profile) => booleanSelector(profile, NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_INI_NAME, SelectorType.CONFIG),
2963
+ default: false
2964
+ };
2965
+
2966
+ // node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/SignatureV4S3Express.js
2967
+ var SignatureV4S3Express = class extends SignatureV4 {
2968
+ async signWithCredentials(requestToSign, credentials, options) {
2969
+ const credentialsWithoutSessionToken = getCredentialsWithoutSessionToken(credentials);
2970
+ requestToSign.headers[SESSION_TOKEN_HEADER] = credentials.sessionToken;
2971
+ const privateAccess = this;
2972
+ setSingleOverride(privateAccess, credentialsWithoutSessionToken);
2973
+ return privateAccess.signRequest(requestToSign, options ?? {});
2974
+ }
2975
+ async presignWithCredentials(requestToSign, credentials, options) {
2976
+ const credentialsWithoutSessionToken = getCredentialsWithoutSessionToken(credentials);
2977
+ delete requestToSign.headers[SESSION_TOKEN_HEADER];
2978
+ requestToSign.headers[SESSION_TOKEN_QUERY_PARAM] = credentials.sessionToken;
2979
+ requestToSign.query = requestToSign.query ?? {};
2980
+ requestToSign.query[SESSION_TOKEN_QUERY_PARAM] = credentials.sessionToken;
2981
+ const privateAccess = this;
2982
+ setSingleOverride(privateAccess, credentialsWithoutSessionToken);
2983
+ return this.presign(requestToSign, options);
2984
+ }
2985
+ };
2986
+ function getCredentialsWithoutSessionToken(credentials) {
2987
+ const credentialsWithoutSessionToken = {
2988
+ accessKeyId: credentials.accessKeyId,
2989
+ secretAccessKey: credentials.secretAccessKey,
2990
+ expiration: credentials.expiration
2991
+ };
2992
+ return credentialsWithoutSessionToken;
2993
+ }
2994
+ function setSingleOverride(privateAccess, credentialsWithoutSessionToken) {
2995
+ const id = setTimeout(() => {
2996
+ throw new Error("SignatureV4S3Express credential override was created but not called.");
2997
+ }, 10);
2998
+ const currentCredentialProvider = privateAccess.credentialProvider;
2999
+ const overrideCredentialsProviderOnce = () => {
3000
+ clearTimeout(id);
3001
+ privateAccess.credentialProvider = currentCredentialProvider;
3002
+ return Promise.resolve(credentialsWithoutSessionToken);
3003
+ };
3004
+ privateAccess.credentialProvider = overrideCredentialsProviderOnce;
3005
+ }
3006
+
3007
+ // node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/functions/s3ExpressMiddleware.js
3008
+ var s3ExpressMiddleware = (options) => {
3009
+ return (next, context) => async (args) => {
3010
+ if (context.endpointV2) {
3011
+ const endpoint = context.endpointV2;
3012
+ const isS3ExpressAuth = endpoint.properties?.authSchemes?.[0]?.name === S3_EXPRESS_AUTH_SCHEME;
3013
+ const isS3ExpressBucket = endpoint.properties?.backend === S3_EXPRESS_BACKEND || endpoint.properties?.bucketType === S3_EXPRESS_BUCKET_TYPE;
3014
+ if (isS3ExpressBucket) {
3015
+ setFeature(context, "S3_EXPRESS_BUCKET", "J");
3016
+ context.isS3ExpressBucket = true;
3017
+ }
3018
+ if (isS3ExpressAuth) {
3019
+ const requestBucket = args.input.Bucket;
3020
+ if (requestBucket) {
3021
+ const s3ExpressIdentity = await options.s3ExpressIdentityProvider.getS3ExpressIdentity(await options.credentials(), {
3022
+ Bucket: requestBucket
3023
+ });
3024
+ context.s3ExpressIdentity = s3ExpressIdentity;
3025
+ if (HttpRequest.isInstance(args.request) && s3ExpressIdentity.sessionToken) {
3026
+ args.request.headers[SESSION_TOKEN_HEADER] = s3ExpressIdentity.sessionToken;
3027
+ }
3028
+ }
3029
+ }
3030
+ }
3031
+ return next(args);
3032
+ };
3033
+ };
3034
+ var s3ExpressMiddlewareOptions = {
3035
+ name: "s3ExpressMiddleware",
3036
+ step: "build",
3037
+ tags: ["S3", "S3_EXPRESS"],
3038
+ override: true
3039
+ };
3040
+ var getS3ExpressPlugin = (options) => ({
3041
+ applyToStack: (clientStack) => {
3042
+ clientStack.add(s3ExpressMiddleware(options), s3ExpressMiddlewareOptions);
3043
+ }
3044
+ });
3045
+
3046
+ // node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/functions/signS3Express.js
3047
+ var signS3Express = async (s3ExpressIdentity, signingOptions, request, sigV4MultiRegionSigner) => {
3048
+ const signedRequest = await sigV4MultiRegionSigner.signWithCredentials(request, s3ExpressIdentity, {});
3049
+ if (signedRequest.headers["X-Amz-Security-Token"] || signedRequest.headers["x-amz-security-token"]) {
3050
+ throw new Error("X-Amz-Security-Token must not be set for s3-express requests.");
3051
+ }
3052
+ return signedRequest;
3053
+ };
3054
+
3055
+ // node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/functions/s3ExpressHttpSigningMiddleware.js
3056
+ var defaultErrorHandler = (signingProperties) => (error) => {
3057
+ throw error;
3058
+ };
3059
+ var defaultSuccessHandler = (httpResponse, signingProperties) => {
3060
+ };
3061
+ var s3ExpressHttpSigningMiddleware = (config) => (next, context) => async (args) => {
3062
+ if (!HttpRequest.isInstance(args.request)) {
3063
+ return next(args);
3064
+ }
3065
+ const smithyContext = getSmithyContext(context);
3066
+ const scheme = smithyContext.selectedHttpAuthScheme;
3067
+ if (!scheme) {
3068
+ throw new Error(`No HttpAuthScheme was selected: unable to sign request`);
3069
+ }
3070
+ const { httpAuthOption: { signingProperties = {} }, identity, signer } = scheme;
3071
+ let request;
3072
+ if (context.s3ExpressIdentity) {
3073
+ request = await signS3Express(context.s3ExpressIdentity, signingProperties, args.request, await config.signer());
3074
+ } else {
3075
+ request = await signer.sign(args.request, identity, signingProperties);
3076
+ }
3077
+ const output = await next({
3078
+ ...args,
3079
+ request
3080
+ }).catch((signer.errorHandler || defaultErrorHandler)(signingProperties));
3081
+ (signer.successHandler || defaultSuccessHandler)(output.response, signingProperties);
3082
+ return output;
3083
+ };
3084
+ var getS3ExpressHttpSigningPlugin = (config) => ({
3085
+ applyToStack: (clientStack) => {
3086
+ clientStack.addRelativeTo(s3ExpressHttpSigningMiddleware(config), httpSigningMiddlewareOptions);
3087
+ }
3088
+ });
3089
+
3090
+ // node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3Configuration.js
3091
+ var resolveS3Config = (input, { session }) => {
3092
+ const [s3ClientProvider, CreateSessionCommandCtor] = session;
3093
+ const { forcePathStyle, useAccelerateEndpoint, disableMultiregionAccessPoints, followRegionRedirects, s3ExpressIdentityProvider, bucketEndpoint } = input;
3094
+ return Object.assign(input, {
3095
+ forcePathStyle: forcePathStyle ?? false,
3096
+ useAccelerateEndpoint: useAccelerateEndpoint ?? false,
3097
+ disableMultiregionAccessPoints: disableMultiregionAccessPoints ?? false,
3098
+ followRegionRedirects: followRegionRedirects ?? false,
3099
+ s3ExpressIdentityProvider: s3ExpressIdentityProvider ?? new S3ExpressIdentityProviderImpl(async (key) => s3ClientProvider().send(new CreateSessionCommandCtor({
3100
+ Bucket: key
3101
+ }))),
3102
+ bucketEndpoint: bucketEndpoint ?? false
3103
+ });
3104
+ };
3105
+
3106
+ // node_modules/@aws-sdk/middleware-sdk-s3/dist-es/throw-200-exceptions.js
3107
+ var THROW_IF_EMPTY_BODY = {
3108
+ CopyObjectCommand: true,
3109
+ UploadPartCopyCommand: true,
3110
+ CompleteMultipartUploadCommand: true
3111
+ };
3112
+ var MAX_BYTES_TO_INSPECT = 3e3;
3113
+ var throw200ExceptionsMiddleware = (config) => (next, context) => async (args) => {
3114
+ const result = await next(args);
3115
+ const { response } = result;
3116
+ if (!HttpResponse.isInstance(response)) {
3117
+ return result;
3118
+ }
3119
+ const { statusCode, body: sourceBody } = response;
3120
+ if (statusCode < 200 || statusCode >= 300) {
3121
+ return result;
3122
+ }
3123
+ const isSplittableStream = typeof sourceBody?.stream === "function" || typeof sourceBody?.pipe === "function" || typeof sourceBody?.tee === "function";
3124
+ if (!isSplittableStream) {
3125
+ return result;
3126
+ }
3127
+ let bodyCopy = sourceBody;
3128
+ let body = sourceBody;
3129
+ if (sourceBody && typeof sourceBody === "object" && !(sourceBody instanceof Uint8Array)) {
3130
+ [bodyCopy, body] = await splitStream(sourceBody);
3131
+ }
3132
+ response.body = body;
3133
+ const bodyBytes = await collectBody2(bodyCopy, {
3134
+ streamCollector: async (stream) => {
3135
+ return headStream(stream, MAX_BYTES_TO_INSPECT);
3136
+ }
3137
+ });
3138
+ if (typeof bodyCopy?.destroy === "function") {
3139
+ bodyCopy.destroy();
3140
+ }
3141
+ const bodyStringTail = config.utf8Encoder(bodyBytes.subarray(bodyBytes.length - 16));
3142
+ if (bodyBytes.length === 0 && THROW_IF_EMPTY_BODY[context.commandName]) {
3143
+ const err = new Error("S3 aborted request");
3144
+ err.name = "InternalError";
3145
+ throw err;
3146
+ }
3147
+ if (bodyStringTail && bodyStringTail.endsWith("</Error>")) {
3148
+ response.statusCode = 400;
3149
+ }
3150
+ return result;
3151
+ };
3152
+ var collectBody2 = (streamBody = new Uint8Array(), context) => {
3153
+ if (streamBody instanceof Uint8Array) {
3154
+ return Promise.resolve(streamBody);
3155
+ }
3156
+ return context.streamCollector(streamBody) || Promise.resolve(new Uint8Array());
3157
+ };
3158
+ var throw200ExceptionsMiddlewareOptions = {
3159
+ relation: "after",
3160
+ toMiddleware: "deserializerMiddleware",
3161
+ tags: ["THROW_200_EXCEPTIONS", "S3"],
3162
+ name: "throw200ExceptionsMiddleware",
3163
+ override: true
3164
+ };
3165
+ var getThrow200ExceptionsPlugin = (config) => ({
3166
+ applyToStack: (clientStack) => {
3167
+ clientStack.addRelativeTo(throw200ExceptionsMiddleware(config), throw200ExceptionsMiddlewareOptions);
3168
+ }
3169
+ });
3170
+
3171
+ // node_modules/@aws-sdk/util-arn-parser/dist-es/index.js
3172
+ var validate = (str) => typeof str === "string" && str.indexOf("arn:") === 0 && str.split(":").length >= 6;
3173
+
3174
+ // node_modules/@aws-sdk/middleware-sdk-s3/dist-es/bucket-endpoint-middleware.js
3175
+ function bucketEndpointMiddleware(options) {
3176
+ return (next, context) => async (args) => {
3177
+ if (options.bucketEndpoint) {
3178
+ const endpoint = context.endpointV2;
3179
+ if (endpoint) {
3180
+ const bucket = args.input.Bucket;
3181
+ if (typeof bucket === "string") {
3182
+ try {
3183
+ const bucketEndpointUrl = new URL(bucket);
3184
+ context.endpointV2 = {
3185
+ ...endpoint,
3186
+ url: bucketEndpointUrl
3187
+ };
3188
+ } catch (e2) {
3189
+ const warning = `@aws-sdk/middleware-sdk-s3: bucketEndpoint=true was set but Bucket=${bucket} could not be parsed as URL.`;
3190
+ if (context.logger?.constructor?.name === "NoOpLogger") {
3191
+ console.warn(warning);
3192
+ } else {
3193
+ context.logger?.warn?.(warning);
3194
+ }
3195
+ throw e2;
3196
+ }
3197
+ }
3198
+ }
3199
+ }
3200
+ return next(args);
3201
+ };
3202
+ }
3203
+ var bucketEndpointMiddlewareOptions = {
3204
+ name: "bucketEndpointMiddleware",
3205
+ override: true,
3206
+ relation: "after",
3207
+ toMiddleware: "endpointV2Middleware"
3208
+ };
3209
+
3210
+ // node_modules/@aws-sdk/middleware-sdk-s3/dist-es/validate-bucket-name.js
3211
+ function validateBucketNameMiddleware({ bucketEndpoint }) {
3212
+ return (next) => async (args) => {
3213
+ const { input: { Bucket } } = args;
3214
+ if (!bucketEndpoint && typeof Bucket === "string" && !validate(Bucket) && Bucket.indexOf("/") >= 0) {
3215
+ const err = new Error(`Bucket name shouldn't contain '/', received '${Bucket}'`);
3216
+ err.name = "InvalidBucketName";
3217
+ throw err;
3218
+ }
3219
+ return next({ ...args });
3220
+ };
3221
+ }
3222
+ var validateBucketNameMiddlewareOptions = {
3223
+ step: "initialize",
3224
+ tags: ["VALIDATE_BUCKET_NAME"],
3225
+ name: "validateBucketNameMiddleware",
3226
+ override: true
3227
+ };
3228
+ var getValidateBucketNamePlugin = (options) => ({
3229
+ applyToStack: (clientStack) => {
3230
+ clientStack.add(validateBucketNameMiddleware(options), validateBucketNameMiddlewareOptions);
3231
+ clientStack.addRelativeTo(bucketEndpointMiddleware(options), bucketEndpointMiddlewareOptions);
3232
+ }
3233
+ });
3234
+
3235
+ // node_modules/@smithy/eventstream-serde-config-resolver/dist-es/EventStreamSerdeConfig.js
3236
+ var resolveEventStreamSerdeConfig = (input) => Object.assign(input, {
3237
+ eventStreamMarshaller: input.eventStreamSerdeProvider(input)
3238
+ });
3239
+
3240
+ // node_modules/@aws-sdk/signature-v4-multi-region/dist-es/signature-v4-crt-container.js
3241
+ var signatureV4CrtContainer = {
3242
+ CrtSignerV4: null
3243
+ };
3244
+
3245
+ // node_modules/@aws-sdk/signature-v4-multi-region/dist-es/SignatureV4MultiRegion.js
3246
+ var SignatureV4MultiRegion = class {
3247
+ sigv4aSigner;
3248
+ sigv4Signer;
3249
+ signerOptions;
3250
+ static sigv4aDependency() {
3251
+ if (typeof signatureV4CrtContainer.CrtSignerV4 === "function") {
3252
+ return "crt";
3253
+ } else if (typeof signatureV4aContainer.SignatureV4a === "function") {
3254
+ return "js";
3255
+ }
3256
+ return "none";
3257
+ }
3258
+ constructor(options) {
3259
+ this.sigv4Signer = new SignatureV4S3Express(options);
3260
+ this.signerOptions = options;
3261
+ }
3262
+ async sign(requestToSign, options = {}) {
3263
+ if (options.signingRegion === "*") {
3264
+ return this.getSigv4aSigner().sign(requestToSign, options);
3265
+ }
3266
+ return this.sigv4Signer.sign(requestToSign, options);
3267
+ }
3268
+ async signWithCredentials(requestToSign, credentials, options = {}) {
3269
+ if (options.signingRegion === "*") {
3270
+ const signer = this.getSigv4aSigner();
3271
+ const CrtSignerV4 = signatureV4CrtContainer.CrtSignerV4;
3272
+ if (CrtSignerV4 && signer instanceof CrtSignerV4) {
3273
+ return signer.signWithCredentials(requestToSign, credentials, options);
3274
+ } else {
3275
+ throw new Error(`signWithCredentials with signingRegion '*' is only supported when using the CRT dependency @aws-sdk/signature-v4-crt. Please check whether you have installed the "@aws-sdk/signature-v4-crt" package explicitly. You must also register the package by calling [require("@aws-sdk/signature-v4-crt");] or an ESM equivalent such as [import "@aws-sdk/signature-v4-crt";]. For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt`);
3276
+ }
3277
+ }
3278
+ return this.sigv4Signer.signWithCredentials(requestToSign, credentials, options);
3279
+ }
3280
+ async presign(originalRequest, options = {}) {
3281
+ if (options.signingRegion === "*") {
3282
+ const signer = this.getSigv4aSigner();
3283
+ const CrtSignerV4 = signatureV4CrtContainer.CrtSignerV4;
3284
+ if (CrtSignerV4 && signer instanceof CrtSignerV4) {
3285
+ return signer.presign(originalRequest, options);
3286
+ } else {
3287
+ throw new Error(`presign with signingRegion '*' is only supported when using the CRT dependency @aws-sdk/signature-v4-crt. Please check whether you have installed the "@aws-sdk/signature-v4-crt" package explicitly. You must also register the package by calling [require("@aws-sdk/signature-v4-crt");] or an ESM equivalent such as [import "@aws-sdk/signature-v4-crt";]. For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt`);
3288
+ }
3289
+ }
3290
+ return this.sigv4Signer.presign(originalRequest, options);
3291
+ }
3292
+ async presignWithCredentials(originalRequest, credentials, options = {}) {
3293
+ if (options.signingRegion === "*") {
3294
+ throw new Error("Method presignWithCredentials is not supported for [signingRegion=*].");
3295
+ }
3296
+ return this.sigv4Signer.presignWithCredentials(originalRequest, credentials, options);
3297
+ }
3298
+ getSigv4aSigner() {
3299
+ if (!this.sigv4aSigner) {
3300
+ const CrtSignerV4 = signatureV4CrtContainer.CrtSignerV4;
3301
+ const JsSigV4aSigner = signatureV4aContainer.SignatureV4a;
3302
+ if (this.signerOptions.runtime === "node") {
3303
+ if (!CrtSignerV4 && !JsSigV4aSigner) {
3304
+ throw new Error("Neither CRT nor JS SigV4a implementation is available. Please load either @aws-sdk/signature-v4-crt or @aws-sdk/signature-v4a. For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt");
3305
+ }
3306
+ if (CrtSignerV4 && typeof CrtSignerV4 === "function") {
3307
+ this.sigv4aSigner = new CrtSignerV4({
3308
+ ...this.signerOptions,
3309
+ signingAlgorithm: 1
3310
+ });
3311
+ } else if (JsSigV4aSigner && typeof JsSigV4aSigner === "function") {
3312
+ this.sigv4aSigner = new JsSigV4aSigner({
3313
+ ...this.signerOptions
3314
+ });
3315
+ } else {
3316
+ throw new Error("Available SigV4a implementation is not a valid constructor. Please ensure you've properly imported @aws-sdk/signature-v4-crt or @aws-sdk/signature-v4a.For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt");
3317
+ }
3318
+ } else {
3319
+ if (!JsSigV4aSigner || typeof JsSigV4aSigner !== "function") {
3320
+ throw new Error("JS SigV4a implementation is not available or not a valid constructor. Please check whether you have installed the @aws-sdk/signature-v4a package explicitly. The CRT implementation is not available for browsers. You must also register the package by calling [require('@aws-sdk/signature-v4a');] or an ESM equivalent such as [import '@aws-sdk/signature-v4a';]. For more information please go to https://github.com/aws/aws-sdk-js-v3#using-javascript-non-crt-implementation-of-sigv4a");
3321
+ }
3322
+ this.sigv4aSigner = new JsSigV4aSigner({
3323
+ ...this.signerOptions
3324
+ });
3325
+ }
3326
+ }
3327
+ return this.sigv4aSigner;
3328
+ }
3329
+ };
3330
+
3331
+ // node_modules/@aws-sdk/client-s3/dist-es/endpoint/ruleset.js
3332
+ var cp = "required";
3333
+ var cq = "type";
3334
+ var cr = "rules";
3335
+ var cs = "conditions";
3336
+ var ct = "fn";
3337
+ var cu = "argv";
3338
+ var cv = "ref";
3339
+ var cw = "assign";
3340
+ var cx = "url";
3341
+ var cy = "properties";
3342
+ var cz = "backend";
3343
+ var cA = "authSchemes";
3344
+ var cB = "disableDoubleEncoding";
3345
+ var cC = "signingName";
3346
+ var cD = "signingRegion";
3347
+ var cE = "headers";
3348
+ var cF = "signingRegionSet";
3349
+ var a = 6;
3350
+ var b = false;
3351
+ var c = true;
3352
+ var d = "isSet";
3353
+ var e = "booleanEquals";
3354
+ var f = "error";
3355
+ var g = "aws.partition";
3356
+ var h = "stringEquals";
3357
+ var i = "getAttr";
3358
+ var j = "name";
3359
+ var k = "substring";
3360
+ var l = "bucketSuffix";
3361
+ var m = "parseURL";
3362
+ var n = "endpoint";
3363
+ var o = "tree";
3364
+ var p = "aws.isVirtualHostableS3Bucket";
3365
+ var q = "{url#scheme}://{Bucket}.{url#authority}{url#path}";
3366
+ var r = "not";
3367
+ var s = "accessPointSuffix";
3368
+ var t = "{url#scheme}://{url#authority}{url#path}";
3369
+ var u = "hardwareType";
3370
+ var v = "regionPrefix";
3371
+ var w = "bucketAliasSuffix";
3372
+ var x = "outpostId";
3373
+ var y = "isValidHostLabel";
3374
+ var z2 = "sigv4a";
3375
+ var A = "s3-outposts";
3376
+ var B = "s3";
3377
+ var C = "{url#scheme}://{url#authority}{url#normalizedPath}{Bucket}";
3378
+ var D = "https://{Bucket}.s3-accelerate.{partitionResult#dnsSuffix}";
3379
+ var E = "https://{Bucket}.s3.{partitionResult#dnsSuffix}";
3380
+ var F = "aws.parseArn";
3381
+ var G = "bucketArn";
3382
+ var H = "arnType";
3383
+ var I = "";
3384
+ var J = "s3-object-lambda";
3385
+ var K = "accesspoint";
3386
+ var L = "accessPointName";
3387
+ var M = "{url#scheme}://{accessPointName}-{bucketArn#accountId}.{url#authority}{url#path}";
3388
+ var N = "mrapPartition";
3389
+ var O = "outpostType";
3390
+ var P = "arnPrefix";
3391
+ var Q = "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}";
3392
+ var R = "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}";
3393
+ var S = "https://s3.{partitionResult#dnsSuffix}";
3394
+ var T = { [cp]: false, [cq]: "String" };
3395
+ var U = { [cp]: true, "default": false, [cq]: "Boolean" };
3396
+ var V = { [cp]: false, [cq]: "Boolean" };
3397
+ var W = { [ct]: e, [cu]: [{ [cv]: "Accelerate" }, true] };
3398
+ var X = { [ct]: e, [cu]: [{ [cv]: "UseFIPS" }, true] };
3399
+ var Y = { [ct]: e, [cu]: [{ [cv]: "UseDualStack" }, true] };
3400
+ var Z = { [ct]: d, [cu]: [{ [cv]: "Endpoint" }] };
3401
+ var aa = { [ct]: g, [cu]: [{ [cv]: "Region" }], [cw]: "partitionResult" };
3402
+ var ab = { [ct]: h, [cu]: [{ [ct]: i, [cu]: [{ [cv]: "partitionResult" }, j] }, "aws-cn"] };
3403
+ var ac = { [ct]: d, [cu]: [{ [cv]: "Bucket" }] };
3404
+ var ad = { [cv]: "Bucket" };
3405
+ var ae = { [cs]: [Y], [f]: "S3Express does not support Dual-stack.", [cq]: f };
3406
+ var af = { [cs]: [W], [f]: "S3Express does not support S3 Accelerate.", [cq]: f };
3407
+ var ag = { [cs]: [Z, { [ct]: m, [cu]: [{ [cv]: "Endpoint" }], [cw]: "url" }], [cr]: [{ [cs]: [{ [ct]: d, [cu]: [{ [cv]: "DisableS3ExpressSessionAuth" }] }, { [ct]: e, [cu]: [{ [cv]: "DisableS3ExpressSessionAuth" }, true] }], [cr]: [{ [cs]: [{ [ct]: e, [cu]: [{ [ct]: i, [cu]: [{ [cv]: "url" }, "isIp"] }, true] }], [cr]: [{ [cs]: [{ [ct]: "uriEncode", [cu]: [ad], [cw]: "uri_encoded_bucket" }], [cr]: [{ [n]: { [cx]: "{url#scheme}://{url#authority}/{uri_encoded_bucket}{url#path}", [cy]: { [cz]: "S3Express", [cA]: [{ [cB]: true, [j]: "sigv4", [cC]: "s3express", [cD]: "{Region}" }] }, [cE]: {} }, [cq]: n }], [cq]: o }], [cq]: o }, { [cs]: [{ [ct]: p, [cu]: [ad, false] }], [cr]: [{ [n]: { [cx]: q, [cy]: { [cz]: "S3Express", [cA]: [{ [cB]: true, [j]: "sigv4", [cC]: "s3express", [cD]: "{Region}" }] }, [cE]: {} }, [cq]: n }], [cq]: o }, { [f]: "S3Express bucket name is not a valid virtual hostable name.", [cq]: f }], [cq]: o }, { [cs]: [{ [ct]: e, [cu]: [{ [ct]: i, [cu]: [{ [cv]: "url" }, "isIp"] }, true] }], [cr]: [{ [cs]: [{ [ct]: "uriEncode", [cu]: [ad], [cw]: "uri_encoded_bucket" }], [cr]: [{ [n]: { [cx]: "{url#scheme}://{url#authority}/{uri_encoded_bucket}{url#path}", [cy]: { [cz]: "S3Express", [cA]: [{ [cB]: true, [j]: "sigv4-s3express", [cC]: "s3express", [cD]: "{Region}" }] }, [cE]: {} }, [cq]: n }], [cq]: o }], [cq]: o }, { [cs]: [{ [ct]: p, [cu]: [ad, false] }], [cr]: [{ [n]: { [cx]: q, [cy]: { [cz]: "S3Express", [cA]: [{ [cB]: true, [j]: "sigv4-s3express", [cC]: "s3express", [cD]: "{Region}" }] }, [cE]: {} }, [cq]: n }], [cq]: o }, { [f]: "S3Express bucket name is not a valid virtual hostable name.", [cq]: f }], [cq]: o };
3408
+ var ah = { [ct]: m, [cu]: [{ [cv]: "Endpoint" }], [cw]: "url" };
3409
+ var ai = { [ct]: e, [cu]: [{ [ct]: i, [cu]: [{ [cv]: "url" }, "isIp"] }, true] };
3410
+ var aj = { [cv]: "url" };
3411
+ var ak = { [ct]: "uriEncode", [cu]: [ad], [cw]: "uri_encoded_bucket" };
3412
+ var al = { [cz]: "S3Express", [cA]: [{ [cB]: true, [j]: "sigv4", [cC]: "s3express", [cD]: "{Region}" }] };
3413
+ var am = {};
3414
+ var an = { [ct]: p, [cu]: [ad, false] };
3415
+ var ao = { [f]: "S3Express bucket name is not a valid virtual hostable name.", [cq]: f };
3416
+ var ap = { [ct]: d, [cu]: [{ [cv]: "UseS3ExpressControlEndpoint" }] };
3417
+ var aq = { [ct]: e, [cu]: [{ [cv]: "UseS3ExpressControlEndpoint" }, true] };
3418
+ var ar = { [ct]: r, [cu]: [Z] };
3419
+ var as = { [f]: "Unrecognized S3Express bucket name format.", [cq]: f };
3420
+ var at = { [ct]: r, [cu]: [ac] };
3421
+ var au = { [cv]: u };
3422
+ var av = { [cs]: [ar], [f]: "Expected a endpoint to be specified but no endpoint was found", [cq]: f };
3423
+ var aw = { [cA]: [{ [cB]: true, [j]: z2, [cC]: A, [cF]: ["*"] }, { [cB]: true, [j]: "sigv4", [cC]: A, [cD]: "{Region}" }] };
3424
+ var ax = { [ct]: e, [cu]: [{ [cv]: "ForcePathStyle" }, false] };
3425
+ var ay = { [cv]: "ForcePathStyle" };
3426
+ var az = { [ct]: e, [cu]: [{ [cv]: "Accelerate" }, false] };
3427
+ var aA = { [ct]: h, [cu]: [{ [cv]: "Region" }, "aws-global"] };
3428
+ var aB = { [cA]: [{ [cB]: true, [j]: "sigv4", [cC]: B, [cD]: "us-east-1" }] };
3429
+ var aC = { [ct]: r, [cu]: [aA] };
3430
+ var aD = { [ct]: e, [cu]: [{ [cv]: "UseGlobalEndpoint" }, true] };
3431
+ var aE = { [cx]: "https://{Bucket}.s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", [cy]: { [cA]: [{ [cB]: true, [j]: "sigv4", [cC]: B, [cD]: "{Region}" }] }, [cE]: {} };
3432
+ var aF = { [cA]: [{ [cB]: true, [j]: "sigv4", [cC]: B, [cD]: "{Region}" }] };
3433
+ var aG = { [ct]: e, [cu]: [{ [cv]: "UseGlobalEndpoint" }, false] };
3434
+ var aH = { [ct]: e, [cu]: [{ [cv]: "UseDualStack" }, false] };
3435
+ var aI = { [cx]: "https://{Bucket}.s3-fips.{Region}.{partitionResult#dnsSuffix}", [cy]: aF, [cE]: {} };
3436
+ var aJ = { [ct]: e, [cu]: [{ [cv]: "UseFIPS" }, false] };
3437
+ var aK = { [cx]: "https://{Bucket}.s3-accelerate.dualstack.{partitionResult#dnsSuffix}", [cy]: aF, [cE]: {} };
3438
+ var aL = { [cx]: "https://{Bucket}.s3.dualstack.{Region}.{partitionResult#dnsSuffix}", [cy]: aF, [cE]: {} };
3439
+ var aM = { [ct]: e, [cu]: [{ [ct]: i, [cu]: [aj, "isIp"] }, false] };
3440
+ var aN = { [cx]: C, [cy]: aF, [cE]: {} };
3441
+ var aO = { [cx]: q, [cy]: aF, [cE]: {} };
3442
+ var aP = { [n]: aO, [cq]: n };
3443
+ var aQ = { [cx]: D, [cy]: aF, [cE]: {} };
3444
+ var aR = { [cx]: "https://{Bucket}.s3.{Region}.{partitionResult#dnsSuffix}", [cy]: aF, [cE]: {} };
3445
+ var aS = { [f]: "Invalid region: region was not a valid DNS name.", [cq]: f };
3446
+ var aT = { [cv]: G };
3447
+ var aU = { [cv]: H };
3448
+ var aV = { [ct]: i, [cu]: [aT, "service"] };
3449
+ var aW = { [cv]: L };
3450
+ var aX = { [cs]: [Y], [f]: "S3 Object Lambda does not support Dual-stack", [cq]: f };
3451
+ var aY = { [cs]: [W], [f]: "S3 Object Lambda does not support S3 Accelerate", [cq]: f };
3452
+ var aZ = { [cs]: [{ [ct]: d, [cu]: [{ [cv]: "DisableAccessPoints" }] }, { [ct]: e, [cu]: [{ [cv]: "DisableAccessPoints" }, true] }], [f]: "Access points are not supported for this operation", [cq]: f };
3453
+ var ba = { [cs]: [{ [ct]: d, [cu]: [{ [cv]: "UseArnRegion" }] }, { [ct]: e, [cu]: [{ [cv]: "UseArnRegion" }, false] }, { [ct]: r, [cu]: [{ [ct]: h, [cu]: [{ [ct]: i, [cu]: [aT, "region"] }, "{Region}"] }] }], [f]: "Invalid configuration: region from ARN `{bucketArn#region}` does not match client region `{Region}` and UseArnRegion is `false`", [cq]: f };
3454
+ var bb = { [ct]: i, [cu]: [{ [cv]: "bucketPartition" }, j] };
3455
+ var bc = { [ct]: i, [cu]: [aT, "accountId"] };
3456
+ var bd = { [cA]: [{ [cB]: true, [j]: "sigv4", [cC]: J, [cD]: "{bucketArn#region}" }] };
3457
+ var be = { [f]: "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `{accessPointName}`", [cq]: f };
3458
+ var bf = { [f]: "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`", [cq]: f };
3459
+ var bg = { [f]: "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)", [cq]: f };
3460
+ var bh = { [f]: "Client was configured for partition `{partitionResult#name}` but ARN (`{Bucket}`) has `{bucketPartition#name}`", [cq]: f };
3461
+ var bi = { [f]: "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`.", [cq]: f };
3462
+ var bj = { [f]: "Invalid ARN: Expected a resource of the format `accesspoint:<accesspoint name>` but no name was provided", [cq]: f };
3463
+ var bk = { [cA]: [{ [cB]: true, [j]: "sigv4", [cC]: B, [cD]: "{bucketArn#region}" }] };
3464
+ var bl = { [cA]: [{ [cB]: true, [j]: z2, [cC]: A, [cF]: ["*"] }, { [cB]: true, [j]: "sigv4", [cC]: A, [cD]: "{bucketArn#region}" }] };
3465
+ var bm = { [ct]: F, [cu]: [ad] };
3466
+ var bn = { [cx]: "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [cy]: aF, [cE]: {} };
3467
+ var bo = { [cx]: "https://s3-fips.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [cy]: aF, [cE]: {} };
3468
+ var bp = { [cx]: "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [cy]: aF, [cE]: {} };
3469
+ var bq = { [cx]: Q, [cy]: aF, [cE]: {} };
3470
+ var br = { [cx]: "https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [cy]: aF, [cE]: {} };
3471
+ var bs = { [cv]: "UseObjectLambdaEndpoint" };
3472
+ var bt = { [cA]: [{ [cB]: true, [j]: "sigv4", [cC]: J, [cD]: "{Region}" }] };
3473
+ var bu = { [cx]: "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", [cy]: aF, [cE]: {} };
3474
+ var bv = { [cx]: "https://s3-fips.{Region}.{partitionResult#dnsSuffix}", [cy]: aF, [cE]: {} };
3475
+ var bw = { [cx]: "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}", [cy]: aF, [cE]: {} };
3476
+ var bx = { [cx]: t, [cy]: aF, [cE]: {} };
3477
+ var by = { [cx]: "https://s3.{Region}.{partitionResult#dnsSuffix}", [cy]: aF, [cE]: {} };
3478
+ var bz = [{ [cv]: "Region" }];
3479
+ var bA = [{ [cv]: "Endpoint" }];
3480
+ var bB = [ad];
3481
+ var bC = [Y];
3482
+ var bD = [W];
3483
+ var bE = [Z, ah];
3484
+ var bF = [{ [ct]: d, [cu]: [{ [cv]: "DisableS3ExpressSessionAuth" }] }, { [ct]: e, [cu]: [{ [cv]: "DisableS3ExpressSessionAuth" }, true] }];
3485
+ var bG = [ak];
3486
+ var bH = [an];
3487
+ var bI = [aa];
3488
+ var bJ = [X];
3489
+ var bK = [{ [ct]: k, [cu]: [ad, 6, 14, true], [cw]: "s3expressAvailabilityZoneId" }, { [ct]: k, [cu]: [ad, 14, 16, true], [cw]: "s3expressAvailabilityZoneDelim" }, { [ct]: h, [cu]: [{ [cv]: "s3expressAvailabilityZoneDelim" }, "--"] }];
3490
+ var bL = [{ [cs]: [X], [n]: { [cx]: "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", [cy]: al, [cE]: {} }, [cq]: n }, { [n]: { [cx]: "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", [cy]: al, [cE]: {} }, [cq]: n }];
3491
+ var bM = [{ [ct]: k, [cu]: [ad, 6, 15, true], [cw]: "s3expressAvailabilityZoneId" }, { [ct]: k, [cu]: [ad, 15, 17, true], [cw]: "s3expressAvailabilityZoneDelim" }, { [ct]: h, [cu]: [{ [cv]: "s3expressAvailabilityZoneDelim" }, "--"] }];
3492
+ var bN = [{ [ct]: k, [cu]: [ad, 6, 19, true], [cw]: "s3expressAvailabilityZoneId" }, { [ct]: k, [cu]: [ad, 19, 21, true], [cw]: "s3expressAvailabilityZoneDelim" }, { [ct]: h, [cu]: [{ [cv]: "s3expressAvailabilityZoneDelim" }, "--"] }];
3493
+ var bO = [{ [ct]: k, [cu]: [ad, 6, 20, true], [cw]: "s3expressAvailabilityZoneId" }, { [ct]: k, [cu]: [ad, 20, 22, true], [cw]: "s3expressAvailabilityZoneDelim" }, { [ct]: h, [cu]: [{ [cv]: "s3expressAvailabilityZoneDelim" }, "--"] }];
3494
+ var bP = [{ [ct]: k, [cu]: [ad, 6, 26, true], [cw]: "s3expressAvailabilityZoneId" }, { [ct]: k, [cu]: [ad, 26, 28, true], [cw]: "s3expressAvailabilityZoneDelim" }, { [ct]: h, [cu]: [{ [cv]: "s3expressAvailabilityZoneDelim" }, "--"] }];
3495
+ var bQ = [{ [cs]: [X], [n]: { [cx]: "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", [cy]: { [cz]: "S3Express", [cA]: [{ [cB]: true, [j]: "sigv4-s3express", [cC]: "s3express", [cD]: "{Region}" }] }, [cE]: {} }, [cq]: n }, { [n]: { [cx]: "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", [cy]: { [cz]: "S3Express", [cA]: [{ [cB]: true, [j]: "sigv4-s3express", [cC]: "s3express", [cD]: "{Region}" }] }, [cE]: {} }, [cq]: n }];
3496
+ var bR = [ad, 0, 7, true];
3497
+ var bS = [{ [ct]: k, [cu]: [ad, 7, 15, true], [cw]: "s3expressAvailabilityZoneId" }, { [ct]: k, [cu]: [ad, 15, 17, true], [cw]: "s3expressAvailabilityZoneDelim" }, { [ct]: h, [cu]: [{ [cv]: "s3expressAvailabilityZoneDelim" }, "--"] }];
3498
+ var bT = [{ [ct]: k, [cu]: [ad, 7, 16, true], [cw]: "s3expressAvailabilityZoneId" }, { [ct]: k, [cu]: [ad, 16, 18, true], [cw]: "s3expressAvailabilityZoneDelim" }, { [ct]: h, [cu]: [{ [cv]: "s3expressAvailabilityZoneDelim" }, "--"] }];
3499
+ var bU = [{ [ct]: k, [cu]: [ad, 7, 20, true], [cw]: "s3expressAvailabilityZoneId" }, { [ct]: k, [cu]: [ad, 20, 22, true], [cw]: "s3expressAvailabilityZoneDelim" }, { [ct]: h, [cu]: [{ [cv]: "s3expressAvailabilityZoneDelim" }, "--"] }];
3500
+ var bV = [{ [ct]: k, [cu]: [ad, 7, 21, true], [cw]: "s3expressAvailabilityZoneId" }, { [ct]: k, [cu]: [ad, 21, 23, true], [cw]: "s3expressAvailabilityZoneDelim" }, { [ct]: h, [cu]: [{ [cv]: "s3expressAvailabilityZoneDelim" }, "--"] }];
3501
+ var bW = [{ [ct]: k, [cu]: [ad, 7, 27, true], [cw]: "s3expressAvailabilityZoneId" }, { [ct]: k, [cu]: [ad, 27, 29, true], [cw]: "s3expressAvailabilityZoneDelim" }, { [ct]: h, [cu]: [{ [cv]: "s3expressAvailabilityZoneDelim" }, "--"] }];
3502
+ var bX = [ac];
3503
+ var bY = [{ [ct]: y, [cu]: [{ [cv]: x }, false] }];
3504
+ var bZ = [{ [ct]: h, [cu]: [{ [cv]: v }, "beta"] }];
3505
+ var ca = ["*"];
3506
+ var cb = [{ [ct]: y, [cu]: [{ [cv]: "Region" }, false] }];
3507
+ var cc = [{ [ct]: h, [cu]: [{ [cv]: "Region" }, "us-east-1"] }];
3508
+ var cd = [{ [ct]: h, [cu]: [aU, K] }];
3509
+ var ce = [{ [ct]: i, [cu]: [aT, "resourceId[1]"], [cw]: L }, { [ct]: r, [cu]: [{ [ct]: h, [cu]: [aW, I] }] }];
3510
+ var cf = [aT, "resourceId[1]"];
3511
+ var cg = [{ [ct]: r, [cu]: [{ [ct]: h, [cu]: [{ [ct]: i, [cu]: [aT, "region"] }, I] }] }];
3512
+ var ch = [{ [ct]: r, [cu]: [{ [ct]: d, [cu]: [{ [ct]: i, [cu]: [aT, "resourceId[2]"] }] }] }];
3513
+ var ci = [aT, "resourceId[2]"];
3514
+ var cj = [{ [ct]: g, [cu]: [{ [ct]: i, [cu]: [aT, "region"] }], [cw]: "bucketPartition" }];
3515
+ var ck = [{ [ct]: h, [cu]: [bb, { [ct]: i, [cu]: [{ [cv]: "partitionResult" }, j] }] }];
3516
+ var cl = [{ [ct]: y, [cu]: [{ [ct]: i, [cu]: [aT, "region"] }, true] }];
3517
+ var cm = [{ [ct]: y, [cu]: [bc, false] }];
3518
+ var cn = [{ [ct]: y, [cu]: [aW, false] }];
3519
+ var co = [{ [ct]: y, [cu]: [{ [cv]: "Region" }, true] }];
3520
+ var _data = { version: "1.0", parameters: { Bucket: T, Region: T, UseFIPS: U, UseDualStack: U, Endpoint: T, ForcePathStyle: U, Accelerate: U, UseGlobalEndpoint: U, UseObjectLambdaEndpoint: V, Key: T, Prefix: T, CopySource: T, DisableAccessPoints: V, DisableMultiRegionAccessPoints: U, UseArnRegion: V, UseS3ExpressControlEndpoint: V, DisableS3ExpressSessionAuth: V }, [cr]: [{ [cs]: [{ [ct]: d, [cu]: bz }], [cr]: [{ [cs]: [W, X], error: "Accelerate cannot be used with FIPS", [cq]: f }, { [cs]: [Y, Z], error: "Cannot set dual-stack in combination with a custom endpoint.", [cq]: f }, { [cs]: [Z, X], error: "A custom endpoint cannot be combined with FIPS", [cq]: f }, { [cs]: [Z, W], error: "A custom endpoint cannot be combined with S3 Accelerate", [cq]: f }, { [cs]: [X, aa, ab], error: "Partition does not support FIPS", [cq]: f }, { [cs]: [ac, { [ct]: k, [cu]: [ad, 0, a, c], [cw]: l }, { [ct]: h, [cu]: [{ [cv]: l }, "--x-s3"] }], [cr]: [ae, af, ag, { [cs]: [ap, aq], [cr]: [{ [cs]: bI, [cr]: [{ [cs]: [ak, ar], [cr]: [{ [cs]: bJ, endpoint: { [cx]: "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [cy]: al, [cE]: am }, [cq]: n }, { endpoint: { [cx]: "https://s3express-control.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [cy]: al, [cE]: am }, [cq]: n }], [cq]: o }], [cq]: o }], [cq]: o }, { [cs]: bH, [cr]: [{ [cs]: bI, [cr]: [{ [cs]: bF, [cr]: [{ [cs]: bK, [cr]: bL, [cq]: o }, { [cs]: bM, [cr]: bL, [cq]: o }, { [cs]: bN, [cr]: bL, [cq]: o }, { [cs]: bO, [cr]: bL, [cq]: o }, { [cs]: bP, [cr]: bL, [cq]: o }, as], [cq]: o }, { [cs]: bK, [cr]: bQ, [cq]: o }, { [cs]: bM, [cr]: bQ, [cq]: o }, { [cs]: bN, [cr]: bQ, [cq]: o }, { [cs]: bO, [cr]: bQ, [cq]: o }, { [cs]: bP, [cr]: bQ, [cq]: o }, as], [cq]: o }], [cq]: o }, ao], [cq]: o }, { [cs]: [ac, { [ct]: k, [cu]: bR, [cw]: s }, { [ct]: h, [cu]: [{ [cv]: s }, "--xa-s3"] }], [cr]: [ae, af, ag, { [cs]: bH, [cr]: [{ [cs]: bI, [cr]: [{ [cs]: bF, [cr]: [{ [cs]: bS, [cr]: bL, [cq]: o }, { [cs]: bT, [cr]: bL, [cq]: o }, { [cs]: bU, [cr]: bL, [cq]: o }, { [cs]: bV, [cr]: bL, [cq]: o }, { [cs]: bW, [cr]: bL, [cq]: o }, as], [cq]: o }, { [cs]: bS, [cr]: bQ, [cq]: o }, { [cs]: bT, [cr]: bQ, [cq]: o }, { [cs]: bU, [cr]: bQ, [cq]: o }, { [cs]: bV, [cr]: bQ, [cq]: o }, { [cs]: bW, [cr]: bQ, [cq]: o }, as], [cq]: o }], [cq]: o }, ao], [cq]: o }, { [cs]: [at, ap, aq], [cr]: [{ [cs]: bI, [cr]: [{ [cs]: bE, endpoint: { [cx]: t, [cy]: al, [cE]: am }, [cq]: n }, { [cs]: bJ, endpoint: { [cx]: "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", [cy]: al, [cE]: am }, [cq]: n }, { endpoint: { [cx]: "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", [cy]: al, [cE]: am }, [cq]: n }], [cq]: o }], [cq]: o }, { [cs]: [ac, { [ct]: k, [cu]: [ad, 49, 50, c], [cw]: u }, { [ct]: k, [cu]: [ad, 8, 12, c], [cw]: v }, { [ct]: k, [cu]: bR, [cw]: w }, { [ct]: k, [cu]: [ad, 32, 49, c], [cw]: x }, { [ct]: g, [cu]: bz, [cw]: "regionPartition" }, { [ct]: h, [cu]: [{ [cv]: w }, "--op-s3"] }], [cr]: [{ [cs]: bY, [cr]: [{ [cs]: [{ [ct]: h, [cu]: [au, "e"] }], [cr]: [{ [cs]: bZ, [cr]: [av, { [cs]: bE, endpoint: { [cx]: "https://{Bucket}.ec2.{url#authority}", [cy]: aw, [cE]: am }, [cq]: n }], [cq]: o }, { endpoint: { [cx]: "https://{Bucket}.ec2.s3-outposts.{Region}.{regionPartition#dnsSuffix}", [cy]: aw, [cE]: am }, [cq]: n }], [cq]: o }, { [cs]: [{ [ct]: h, [cu]: [au, "o"] }], [cr]: [{ [cs]: bZ, [cr]: [av, { [cs]: bE, endpoint: { [cx]: "https://{Bucket}.op-{outpostId}.{url#authority}", [cy]: aw, [cE]: am }, [cq]: n }], [cq]: o }, { endpoint: { [cx]: "https://{Bucket}.op-{outpostId}.s3-outposts.{Region}.{regionPartition#dnsSuffix}", [cy]: aw, [cE]: am }, [cq]: n }], [cq]: o }, { error: 'Unrecognized hardware type: "Expected hardware type o or e but got {hardwareType}"', [cq]: f }], [cq]: o }, { error: "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`.", [cq]: f }], [cq]: o }, { [cs]: bX, [cr]: [{ [cs]: [Z, { [ct]: r, [cu]: [{ [ct]: d, [cu]: [{ [ct]: m, [cu]: bA }] }] }], error: "Custom endpoint `{Endpoint}` was not a valid URI", [cq]: f }, { [cs]: [ax, an], [cr]: [{ [cs]: bI, [cr]: [{ [cs]: cb, [cr]: [{ [cs]: [W, ab], error: "S3 Accelerate cannot be used in this region", [cq]: f }, { [cs]: [Y, X, az, ar, aA], endpoint: { [cx]: "https://{Bucket}.s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [Y, X, az, ar, aC, aD], [cr]: [{ endpoint: aE, [cq]: n }], [cq]: o }, { [cs]: [Y, X, az, ar, aC, aG], endpoint: aE, [cq]: n }, { [cs]: [aH, X, az, ar, aA], endpoint: { [cx]: "https://{Bucket}.s3-fips.us-east-1.{partitionResult#dnsSuffix}", [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [aH, X, az, ar, aC, aD], [cr]: [{ endpoint: aI, [cq]: n }], [cq]: o }, { [cs]: [aH, X, az, ar, aC, aG], endpoint: aI, [cq]: n }, { [cs]: [Y, aJ, W, ar, aA], endpoint: { [cx]: "https://{Bucket}.s3-accelerate.dualstack.us-east-1.{partitionResult#dnsSuffix}", [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [Y, aJ, W, ar, aC, aD], [cr]: [{ endpoint: aK, [cq]: n }], [cq]: o }, { [cs]: [Y, aJ, W, ar, aC, aG], endpoint: aK, [cq]: n }, { [cs]: [Y, aJ, az, ar, aA], endpoint: { [cx]: "https://{Bucket}.s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [Y, aJ, az, ar, aC, aD], [cr]: [{ endpoint: aL, [cq]: n }], [cq]: o }, { [cs]: [Y, aJ, az, ar, aC, aG], endpoint: aL, [cq]: n }, { [cs]: [aH, aJ, az, Z, ah, ai, aA], endpoint: { [cx]: C, [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [aH, aJ, az, Z, ah, aM, aA], endpoint: { [cx]: q, [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [aH, aJ, az, Z, ah, ai, aC, aD], [cr]: [{ [cs]: cc, endpoint: aN, [cq]: n }, { endpoint: aN, [cq]: n }], [cq]: o }, { [cs]: [aH, aJ, az, Z, ah, aM, aC, aD], [cr]: [{ [cs]: cc, endpoint: aO, [cq]: n }, aP], [cq]: o }, { [cs]: [aH, aJ, az, Z, ah, ai, aC, aG], endpoint: aN, [cq]: n }, { [cs]: [aH, aJ, az, Z, ah, aM, aC, aG], endpoint: aO, [cq]: n }, { [cs]: [aH, aJ, W, ar, aA], endpoint: { [cx]: D, [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [aH, aJ, W, ar, aC, aD], [cr]: [{ [cs]: cc, endpoint: aQ, [cq]: n }, { endpoint: aQ, [cq]: n }], [cq]: o }, { [cs]: [aH, aJ, W, ar, aC, aG], endpoint: aQ, [cq]: n }, { [cs]: [aH, aJ, az, ar, aA], endpoint: { [cx]: E, [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [aH, aJ, az, ar, aC, aD], [cr]: [{ [cs]: cc, endpoint: { [cx]: E, [cy]: aF, [cE]: am }, [cq]: n }, { endpoint: aR, [cq]: n }], [cq]: o }, { [cs]: [aH, aJ, az, ar, aC, aG], endpoint: aR, [cq]: n }], [cq]: o }, aS], [cq]: o }], [cq]: o }, { [cs]: [Z, ah, { [ct]: h, [cu]: [{ [ct]: i, [cu]: [aj, "scheme"] }, "http"] }, { [ct]: p, [cu]: [ad, c] }, ax, aJ, aH, az], [cr]: [{ [cs]: bI, [cr]: [{ [cs]: cb, [cr]: [aP], [cq]: o }, aS], [cq]: o }], [cq]: o }, { [cs]: [ax, { [ct]: F, [cu]: bB, [cw]: G }], [cr]: [{ [cs]: [{ [ct]: i, [cu]: [aT, "resourceId[0]"], [cw]: H }, { [ct]: r, [cu]: [{ [ct]: h, [cu]: [aU, I] }] }], [cr]: [{ [cs]: [{ [ct]: h, [cu]: [aV, J] }], [cr]: [{ [cs]: cd, [cr]: [{ [cs]: ce, [cr]: [aX, aY, { [cs]: cg, [cr]: [aZ, { [cs]: ch, [cr]: [ba, { [cs]: cj, [cr]: [{ [cs]: bI, [cr]: [{ [cs]: ck, [cr]: [{ [cs]: cl, [cr]: [{ [cs]: [{ [ct]: h, [cu]: [bc, I] }], error: "Invalid ARN: Missing account id", [cq]: f }, { [cs]: cm, [cr]: [{ [cs]: cn, [cr]: [{ [cs]: bE, endpoint: { [cx]: M, [cy]: bd, [cE]: am }, [cq]: n }, { [cs]: bJ, endpoint: { [cx]: "https://{accessPointName}-{bucketArn#accountId}.s3-object-lambda-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}", [cy]: bd, [cE]: am }, [cq]: n }, { endpoint: { [cx]: "https://{accessPointName}-{bucketArn#accountId}.s3-object-lambda.{bucketArn#region}.{bucketPartition#dnsSuffix}", [cy]: bd, [cE]: am }, [cq]: n }], [cq]: o }, be], [cq]: o }, bf], [cq]: o }, bg], [cq]: o }, bh], [cq]: o }], [cq]: o }], [cq]: o }, bi], [cq]: o }, { error: "Invalid ARN: bucket ARN is missing a region", [cq]: f }], [cq]: o }, bj], [cq]: o }, { error: "Invalid ARN: Object Lambda ARNs only support `accesspoint` arn types, but found: `{arnType}`", [cq]: f }], [cq]: o }, { [cs]: cd, [cr]: [{ [cs]: ce, [cr]: [{ [cs]: cg, [cr]: [{ [cs]: cd, [cr]: [{ [cs]: cg, [cr]: [aZ, { [cs]: ch, [cr]: [ba, { [cs]: cj, [cr]: [{ [cs]: bI, [cr]: [{ [cs]: [{ [ct]: h, [cu]: [bb, "{partitionResult#name}"] }], [cr]: [{ [cs]: cl, [cr]: [{ [cs]: [{ [ct]: h, [cu]: [aV, B] }], [cr]: [{ [cs]: cm, [cr]: [{ [cs]: cn, [cr]: [{ [cs]: bD, error: "Access Points do not support S3 Accelerate", [cq]: f }, { [cs]: [X, Y], endpoint: { [cx]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint-fips.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}", [cy]: bk, [cE]: am }, [cq]: n }, { [cs]: [X, aH], endpoint: { [cx]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}", [cy]: bk, [cE]: am }, [cq]: n }, { [cs]: [aJ, Y], endpoint: { [cx]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}", [cy]: bk, [cE]: am }, [cq]: n }, { [cs]: [aJ, aH, Z, ah], endpoint: { [cx]: M, [cy]: bk, [cE]: am }, [cq]: n }, { [cs]: [aJ, aH], endpoint: { [cx]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint.{bucketArn#region}.{bucketPartition#dnsSuffix}", [cy]: bk, [cE]: am }, [cq]: n }], [cq]: o }, be], [cq]: o }, bf], [cq]: o }, { error: "Invalid ARN: The ARN was not for the S3 service, found: {bucketArn#service}", [cq]: f }], [cq]: o }, bg], [cq]: o }, bh], [cq]: o }], [cq]: o }], [cq]: o }, bi], [cq]: o }], [cq]: o }], [cq]: o }, { [cs]: [{ [ct]: y, [cu]: [aW, c] }], [cr]: [{ [cs]: bC, error: "S3 MRAP does not support dual-stack", [cq]: f }, { [cs]: bJ, error: "S3 MRAP does not support FIPS", [cq]: f }, { [cs]: bD, error: "S3 MRAP does not support S3 Accelerate", [cq]: f }, { [cs]: [{ [ct]: e, [cu]: [{ [cv]: "DisableMultiRegionAccessPoints" }, c] }], error: "Invalid configuration: Multi-Region Access Point ARNs are disabled.", [cq]: f }, { [cs]: [{ [ct]: g, [cu]: bz, [cw]: N }], [cr]: [{ [cs]: [{ [ct]: h, [cu]: [{ [ct]: i, [cu]: [{ [cv]: N }, j] }, { [ct]: i, [cu]: [aT, "partition"] }] }], [cr]: [{ endpoint: { [cx]: "https://{accessPointName}.accesspoint.s3-global.{mrapPartition#dnsSuffix}", [cy]: { [cA]: [{ [cB]: c, name: z2, [cC]: B, [cF]: ca }] }, [cE]: am }, [cq]: n }], [cq]: o }, { error: "Client was configured for partition `{mrapPartition#name}` but bucket referred to partition `{bucketArn#partition}`", [cq]: f }], [cq]: o }], [cq]: o }, { error: "Invalid Access Point Name", [cq]: f }], [cq]: o }, bj], [cq]: o }, { [cs]: [{ [ct]: h, [cu]: [aV, A] }], [cr]: [{ [cs]: bC, error: "S3 Outposts does not support Dual-stack", [cq]: f }, { [cs]: bJ, error: "S3 Outposts does not support FIPS", [cq]: f }, { [cs]: bD, error: "S3 Outposts does not support S3 Accelerate", [cq]: f }, { [cs]: [{ [ct]: d, [cu]: [{ [ct]: i, [cu]: [aT, "resourceId[4]"] }] }], error: "Invalid Arn: Outpost Access Point ARN contains sub resources", [cq]: f }, { [cs]: [{ [ct]: i, [cu]: cf, [cw]: x }], [cr]: [{ [cs]: bY, [cr]: [ba, { [cs]: cj, [cr]: [{ [cs]: bI, [cr]: [{ [cs]: ck, [cr]: [{ [cs]: cl, [cr]: [{ [cs]: cm, [cr]: [{ [cs]: [{ [ct]: i, [cu]: ci, [cw]: O }], [cr]: [{ [cs]: [{ [ct]: i, [cu]: [aT, "resourceId[3]"], [cw]: L }], [cr]: [{ [cs]: [{ [ct]: h, [cu]: [{ [cv]: O }, K] }], [cr]: [{ [cs]: bE, endpoint: { [cx]: "https://{accessPointName}-{bucketArn#accountId}.{outpostId}.{url#authority}", [cy]: bl, [cE]: am }, [cq]: n }, { endpoint: { [cx]: "https://{accessPointName}-{bucketArn#accountId}.{outpostId}.s3-outposts.{bucketArn#region}.{bucketPartition#dnsSuffix}", [cy]: bl, [cE]: am }, [cq]: n }], [cq]: o }, { error: "Expected an outpost type `accesspoint`, found {outpostType}", [cq]: f }], [cq]: o }, { error: "Invalid ARN: expected an access point name", [cq]: f }], [cq]: o }, { error: "Invalid ARN: Expected a 4-component resource", [cq]: f }], [cq]: o }, bf], [cq]: o }, bg], [cq]: o }, bh], [cq]: o }], [cq]: o }], [cq]: o }, { error: "Invalid ARN: The outpost Id may only contain a-z, A-Z, 0-9 and `-`. Found: `{outpostId}`", [cq]: f }], [cq]: o }, { error: "Invalid ARN: The Outpost Id was not set", [cq]: f }], [cq]: o }, { error: "Invalid ARN: Unrecognized format: {Bucket} (type: {arnType})", [cq]: f }], [cq]: o }, { error: "Invalid ARN: No ARN type specified", [cq]: f }], [cq]: o }, { [cs]: [{ [ct]: k, [cu]: [ad, 0, 4, b], [cw]: P }, { [ct]: h, [cu]: [{ [cv]: P }, "arn:"] }, { [ct]: r, [cu]: [{ [ct]: d, [cu]: [bm] }] }], error: "Invalid ARN: `{Bucket}` was not a valid ARN", [cq]: f }, { [cs]: [{ [ct]: e, [cu]: [ay, c] }, bm], error: "Path-style addressing cannot be used with ARN buckets", [cq]: f }, { [cs]: bG, [cr]: [{ [cs]: bI, [cr]: [{ [cs]: [az], [cr]: [{ [cs]: [Y, ar, X, aA], endpoint: { [cx]: "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [Y, ar, X, aC, aD], [cr]: [{ endpoint: bn, [cq]: n }], [cq]: o }, { [cs]: [Y, ar, X, aC, aG], endpoint: bn, [cq]: n }, { [cs]: [aH, ar, X, aA], endpoint: { [cx]: "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [aH, ar, X, aC, aD], [cr]: [{ endpoint: bo, [cq]: n }], [cq]: o }, { [cs]: [aH, ar, X, aC, aG], endpoint: bo, [cq]: n }, { [cs]: [Y, ar, aJ, aA], endpoint: { [cx]: "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [Y, ar, aJ, aC, aD], [cr]: [{ endpoint: bp, [cq]: n }], [cq]: o }, { [cs]: [Y, ar, aJ, aC, aG], endpoint: bp, [cq]: n }, { [cs]: [aH, Z, ah, aJ, aA], endpoint: { [cx]: Q, [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [aH, Z, ah, aJ, aC, aD], [cr]: [{ [cs]: cc, endpoint: bq, [cq]: n }, { endpoint: bq, [cq]: n }], [cq]: o }, { [cs]: [aH, Z, ah, aJ, aC, aG], endpoint: bq, [cq]: n }, { [cs]: [aH, ar, aJ, aA], endpoint: { [cx]: R, [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [aH, ar, aJ, aC, aD], [cr]: [{ [cs]: cc, endpoint: { [cx]: R, [cy]: aF, [cE]: am }, [cq]: n }, { endpoint: br, [cq]: n }], [cq]: o }, { [cs]: [aH, ar, aJ, aC, aG], endpoint: br, [cq]: n }], [cq]: o }, { error: "Path-style addressing cannot be used with S3 Accelerate", [cq]: f }], [cq]: o }], [cq]: o }], [cq]: o }, { [cs]: [{ [ct]: d, [cu]: [bs] }, { [ct]: e, [cu]: [bs, c] }], [cr]: [{ [cs]: bI, [cr]: [{ [cs]: co, [cr]: [aX, aY, { [cs]: bE, endpoint: { [cx]: t, [cy]: bt, [cE]: am }, [cq]: n }, { [cs]: bJ, endpoint: { [cx]: "https://s3-object-lambda-fips.{Region}.{partitionResult#dnsSuffix}", [cy]: bt, [cE]: am }, [cq]: n }, { endpoint: { [cx]: "https://s3-object-lambda.{Region}.{partitionResult#dnsSuffix}", [cy]: bt, [cE]: am }, [cq]: n }], [cq]: o }, aS], [cq]: o }], [cq]: o }, { [cs]: [at], [cr]: [{ [cs]: bI, [cr]: [{ [cs]: co, [cr]: [{ [cs]: [X, Y, ar, aA], endpoint: { [cx]: "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [X, Y, ar, aC, aD], [cr]: [{ endpoint: bu, [cq]: n }], [cq]: o }, { [cs]: [X, Y, ar, aC, aG], endpoint: bu, [cq]: n }, { [cs]: [X, aH, ar, aA], endpoint: { [cx]: "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}", [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [X, aH, ar, aC, aD], [cr]: [{ endpoint: bv, [cq]: n }], [cq]: o }, { [cs]: [X, aH, ar, aC, aG], endpoint: bv, [cq]: n }, { [cs]: [aJ, Y, ar, aA], endpoint: { [cx]: "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [aJ, Y, ar, aC, aD], [cr]: [{ endpoint: bw, [cq]: n }], [cq]: o }, { [cs]: [aJ, Y, ar, aC, aG], endpoint: bw, [cq]: n }, { [cs]: [aJ, aH, Z, ah, aA], endpoint: { [cx]: t, [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [aJ, aH, Z, ah, aC, aD], [cr]: [{ [cs]: cc, endpoint: bx, [cq]: n }, { endpoint: bx, [cq]: n }], [cq]: o }, { [cs]: [aJ, aH, Z, ah, aC, aG], endpoint: bx, [cq]: n }, { [cs]: [aJ, aH, ar, aA], endpoint: { [cx]: S, [cy]: aB, [cE]: am }, [cq]: n }, { [cs]: [aJ, aH, ar, aC, aD], [cr]: [{ [cs]: cc, endpoint: { [cx]: S, [cy]: aF, [cE]: am }, [cq]: n }, { endpoint: by, [cq]: n }], [cq]: o }, { [cs]: [aJ, aH, ar, aC, aG], endpoint: by, [cq]: n }], [cq]: o }, aS], [cq]: o }], [cq]: o }], [cq]: o }, { error: "A region must be set when sending requests to S3.", [cq]: f }] };
3521
+ var ruleSet = _data;
3522
+
3523
+ // node_modules/@aws-sdk/client-s3/dist-es/endpoint/endpointResolver.js
3524
+ var cache = new EndpointCache({
3525
+ size: 50,
3526
+ params: [
3527
+ "Accelerate",
3528
+ "Bucket",
3529
+ "DisableAccessPoints",
3530
+ "DisableMultiRegionAccessPoints",
3531
+ "DisableS3ExpressSessionAuth",
3532
+ "Endpoint",
3533
+ "ForcePathStyle",
3534
+ "Region",
3535
+ "UseArnRegion",
3536
+ "UseDualStack",
3537
+ "UseFIPS",
3538
+ "UseGlobalEndpoint",
3539
+ "UseObjectLambdaEndpoint",
3540
+ "UseS3ExpressControlEndpoint"
3541
+ ]
3542
+ });
3543
+ var defaultEndpointResolver = (endpointParams, context = {}) => {
3544
+ return cache.get(endpointParams, () => resolveEndpoint(ruleSet, {
3545
+ endpointParams,
3546
+ logger: context.logger
3547
+ }));
3548
+ };
3549
+ customEndpointFunctions.aws = awsEndpointFunctions;
3550
+
3551
+ // node_modules/@aws-sdk/client-s3/dist-es/auth/httpAuthSchemeProvider.js
3552
+ var createEndpointRuleSetHttpAuthSchemeParametersProvider = (defaultHttpAuthSchemeParametersProvider) => async (config, context, input) => {
3553
+ if (!input) {
3554
+ throw new Error(`Could not find \`input\` for \`defaultEndpointRuleSetHttpAuthSchemeParametersProvider\``);
3555
+ }
3556
+ const defaultParameters = await defaultHttpAuthSchemeParametersProvider(config, context, input);
3557
+ const instructionsFn = getSmithyContext(context)?.commandInstance?.constructor?.getEndpointParameterInstructions;
3558
+ if (!instructionsFn) {
3559
+ throw new Error(`getEndpointParameterInstructions() is not defined on \`${context.commandName}\``);
3560
+ }
3561
+ const endpointParameters = await resolveParams(input, { getEndpointParameterInstructions: instructionsFn }, config);
3562
+ return Object.assign(defaultParameters, endpointParameters);
3563
+ };
3564
+ var _defaultS3HttpAuthSchemeParametersProvider = async (config, context, input) => {
3565
+ return {
3566
+ operation: getSmithyContext(context).operation,
3567
+ region: await normalizeProvider(config.region)() || (() => {
3568
+ throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
3569
+ })()
3570
+ };
3571
+ };
3572
+ var defaultS3HttpAuthSchemeParametersProvider = createEndpointRuleSetHttpAuthSchemeParametersProvider(_defaultS3HttpAuthSchemeParametersProvider);
3573
+ function createAwsAuthSigv4HttpAuthOption(authParameters) {
3574
+ return {
3575
+ schemeId: "aws.auth#sigv4",
3576
+ signingProperties: {
3577
+ name: "s3",
3578
+ region: authParameters.region
3579
+ },
3580
+ propertiesExtractor: (config, context) => ({
3581
+ signingProperties: {
3582
+ config,
3583
+ context
3584
+ }
3585
+ })
3586
+ };
3587
+ }
3588
+ function createAwsAuthSigv4aHttpAuthOption(authParameters) {
3589
+ return {
3590
+ schemeId: "aws.auth#sigv4a",
3591
+ signingProperties: {
3592
+ name: "s3",
3593
+ region: authParameters.region
3594
+ },
3595
+ propertiesExtractor: (config, context) => ({
3596
+ signingProperties: {
3597
+ config,
3598
+ context
3599
+ }
3600
+ })
3601
+ };
3602
+ }
3603
+ var createEndpointRuleSetHttpAuthSchemeProvider = (defaultEndpointResolver2, defaultHttpAuthSchemeResolver, createHttpAuthOptionFunctions) => {
3604
+ const endpointRuleSetHttpAuthSchemeProvider = (authParameters) => {
3605
+ const endpoint = defaultEndpointResolver2(authParameters);
3606
+ const authSchemes = endpoint.properties?.authSchemes;
3607
+ if (!authSchemes) {
3608
+ return defaultHttpAuthSchemeResolver(authParameters);
3609
+ }
3610
+ const options = [];
3611
+ for (const scheme of authSchemes) {
3612
+ const { name: resolvedName, properties = {}, ...rest } = scheme;
3613
+ const name = resolvedName.toLowerCase();
3614
+ if (resolvedName !== name) {
3615
+ console.warn(`HttpAuthScheme has been normalized with lowercasing: \`${resolvedName}\` to \`${name}\``);
3616
+ }
3617
+ let schemeId;
3618
+ if (name === "sigv4a") {
3619
+ schemeId = "aws.auth#sigv4a";
3620
+ const sigv4Present = authSchemes.find((s2) => {
3621
+ const name2 = s2.name.toLowerCase();
3622
+ return name2 !== "sigv4a" && name2.startsWith("sigv4");
3623
+ });
3624
+ if (SignatureV4MultiRegion.sigv4aDependency() === "none" && sigv4Present) {
3625
+ continue;
3626
+ }
3627
+ } else if (name.startsWith("sigv4")) {
3628
+ schemeId = "aws.auth#sigv4";
3629
+ } else {
3630
+ throw new Error(`Unknown HttpAuthScheme found in \`@smithy.rules#endpointRuleSet\`: \`${name}\``);
3631
+ }
3632
+ const createOption = createHttpAuthOptionFunctions[schemeId];
3633
+ if (!createOption) {
3634
+ throw new Error(`Could not find HttpAuthOption create function for \`${schemeId}\``);
3635
+ }
3636
+ const option = createOption(authParameters);
3637
+ option.schemeId = schemeId;
3638
+ option.signingProperties = { ...option.signingProperties || {}, ...rest, ...properties };
3639
+ options.push(option);
3640
+ }
3641
+ return options;
3642
+ };
3643
+ return endpointRuleSetHttpAuthSchemeProvider;
3644
+ };
3645
+ var _defaultS3HttpAuthSchemeProvider = (authParameters) => {
3646
+ const options = [];
3647
+ switch (authParameters.operation) {
3648
+ default: {
3649
+ options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
3650
+ options.push(createAwsAuthSigv4aHttpAuthOption(authParameters));
3651
+ }
3652
+ }
3653
+ return options;
3654
+ };
3655
+ var defaultS3HttpAuthSchemeProvider = createEndpointRuleSetHttpAuthSchemeProvider(defaultEndpointResolver, _defaultS3HttpAuthSchemeProvider, {
3656
+ "aws.auth#sigv4": createAwsAuthSigv4HttpAuthOption,
3657
+ "aws.auth#sigv4a": createAwsAuthSigv4aHttpAuthOption
3658
+ });
3659
+ var resolveHttpAuthSchemeConfig = (config) => {
3660
+ const config_0 = resolveAwsSdkSigV4Config(config);
3661
+ const config_1 = resolveAwsSdkSigV4AConfig(config_0);
3662
+ return Object.assign(config_1, {
3663
+ authSchemePreference: normalizeProvider(config.authSchemePreference ?? [])
3664
+ });
3665
+ };
3666
+
3667
+ // node_modules/@aws-sdk/client-s3/dist-es/endpoint/EndpointParameters.js
3668
+ var resolveClientEndpointParameters = (options) => {
3669
+ return Object.assign(options, {
3670
+ useFipsEndpoint: options.useFipsEndpoint ?? false,
3671
+ useDualstackEndpoint: options.useDualstackEndpoint ?? false,
3672
+ forcePathStyle: options.forcePathStyle ?? false,
3673
+ useAccelerateEndpoint: options.useAccelerateEndpoint ?? false,
3674
+ useGlobalEndpoint: options.useGlobalEndpoint ?? false,
3675
+ disableMultiregionAccessPoints: options.disableMultiregionAccessPoints ?? false,
3676
+ defaultSigningName: "s3"
3677
+ });
3678
+ };
3679
+ var commonParams = {
3680
+ ForcePathStyle: { type: "clientContextParams", name: "forcePathStyle" },
3681
+ UseArnRegion: { type: "clientContextParams", name: "useArnRegion" },
3682
+ DisableMultiRegionAccessPoints: { type: "clientContextParams", name: "disableMultiregionAccessPoints" },
3683
+ Accelerate: { type: "clientContextParams", name: "useAccelerateEndpoint" },
3684
+ DisableS3ExpressSessionAuth: { type: "clientContextParams", name: "disableS3ExpressSessionAuth" },
3685
+ UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" },
3686
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
3687
+ Endpoint: { type: "builtInParams", name: "endpoint" },
3688
+ Region: { type: "builtInParams", name: "region" },
3689
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
3690
+ };
3691
+
3692
+ // node_modules/@aws-sdk/client-s3/dist-es/models/S3ServiceException.js
3693
+ var S3ServiceException = class _S3ServiceException extends ServiceException {
3694
+ constructor(options) {
3695
+ super(options);
3696
+ Object.setPrototypeOf(this, _S3ServiceException.prototype);
3697
+ }
3698
+ };
3699
+
3700
+ // node_modules/@aws-sdk/client-s3/dist-es/models/models_0.js
3701
+ var NoSuchUpload = class _NoSuchUpload extends S3ServiceException {
3702
+ name = "NoSuchUpload";
3703
+ $fault = "client";
3704
+ constructor(opts) {
3705
+ super({
3706
+ name: "NoSuchUpload",
3707
+ $fault: "client",
3708
+ ...opts
3709
+ });
3710
+ Object.setPrototypeOf(this, _NoSuchUpload.prototype);
3711
+ }
3712
+ };
3713
+ var ObjectNotInActiveTierError = class _ObjectNotInActiveTierError extends S3ServiceException {
3714
+ name = "ObjectNotInActiveTierError";
3715
+ $fault = "client";
3716
+ constructor(opts) {
3717
+ super({
3718
+ name: "ObjectNotInActiveTierError",
3719
+ $fault: "client",
3720
+ ...opts
3721
+ });
3722
+ Object.setPrototypeOf(this, _ObjectNotInActiveTierError.prototype);
3723
+ }
3724
+ };
3725
+ var BucketAlreadyExists = class _BucketAlreadyExists extends S3ServiceException {
3726
+ name = "BucketAlreadyExists";
3727
+ $fault = "client";
3728
+ constructor(opts) {
3729
+ super({
3730
+ name: "BucketAlreadyExists",
3731
+ $fault: "client",
3732
+ ...opts
3733
+ });
3734
+ Object.setPrototypeOf(this, _BucketAlreadyExists.prototype);
3735
+ }
3736
+ };
3737
+ var BucketAlreadyOwnedByYou = class _BucketAlreadyOwnedByYou extends S3ServiceException {
3738
+ name = "BucketAlreadyOwnedByYou";
3739
+ $fault = "client";
3740
+ constructor(opts) {
3741
+ super({
3742
+ name: "BucketAlreadyOwnedByYou",
3743
+ $fault: "client",
3744
+ ...opts
3745
+ });
3746
+ Object.setPrototypeOf(this, _BucketAlreadyOwnedByYou.prototype);
3747
+ }
3748
+ };
3749
+ var NoSuchBucket = class _NoSuchBucket extends S3ServiceException {
3750
+ name = "NoSuchBucket";
3751
+ $fault = "client";
3752
+ constructor(opts) {
3753
+ super({
3754
+ name: "NoSuchBucket",
3755
+ $fault: "client",
3756
+ ...opts
3757
+ });
3758
+ Object.setPrototypeOf(this, _NoSuchBucket.prototype);
3759
+ }
3760
+ };
3761
+ var AnalyticsFilter;
3762
+ (function(AnalyticsFilter2) {
3763
+ AnalyticsFilter2.visit = (value, visitor) => {
3764
+ if (value.Prefix !== void 0)
3765
+ return visitor.Prefix(value.Prefix);
3766
+ if (value.Tag !== void 0)
3767
+ return visitor.Tag(value.Tag);
3768
+ if (value.And !== void 0)
3769
+ return visitor.And(value.And);
3770
+ return visitor._(value.$unknown[0], value.$unknown[1]);
3771
+ };
3772
+ })(AnalyticsFilter || (AnalyticsFilter = {}));
3773
+ var MetricsFilter;
3774
+ (function(MetricsFilter2) {
3775
+ MetricsFilter2.visit = (value, visitor) => {
3776
+ if (value.Prefix !== void 0)
3777
+ return visitor.Prefix(value.Prefix);
3778
+ if (value.Tag !== void 0)
3779
+ return visitor.Tag(value.Tag);
3780
+ if (value.AccessPointArn !== void 0)
3781
+ return visitor.AccessPointArn(value.AccessPointArn);
3782
+ if (value.And !== void 0)
3783
+ return visitor.And(value.And);
3784
+ return visitor._(value.$unknown[0], value.$unknown[1]);
3785
+ };
3786
+ })(MetricsFilter || (MetricsFilter = {}));
3787
+ var InvalidObjectState = class _InvalidObjectState extends S3ServiceException {
3788
+ name = "InvalidObjectState";
3789
+ $fault = "client";
3790
+ StorageClass;
3791
+ AccessTier;
3792
+ constructor(opts) {
3793
+ super({
3794
+ name: "InvalidObjectState",
3795
+ $fault: "client",
3796
+ ...opts
3797
+ });
3798
+ Object.setPrototypeOf(this, _InvalidObjectState.prototype);
3799
+ this.StorageClass = opts.StorageClass;
3800
+ this.AccessTier = opts.AccessTier;
3801
+ }
3802
+ };
3803
+ var NoSuchKey = class _NoSuchKey extends S3ServiceException {
3804
+ name = "NoSuchKey";
3805
+ $fault = "client";
3806
+ constructor(opts) {
3807
+ super({
3808
+ name: "NoSuchKey",
3809
+ $fault: "client",
3810
+ ...opts
3811
+ });
3812
+ Object.setPrototypeOf(this, _NoSuchKey.prototype);
3813
+ }
3814
+ };
3815
+ var NotFound = class _NotFound extends S3ServiceException {
3816
+ name = "NotFound";
3817
+ $fault = "client";
3818
+ constructor(opts) {
3819
+ super({
3820
+ name: "NotFound",
3821
+ $fault: "client",
3822
+ ...opts
3823
+ });
3824
+ Object.setPrototypeOf(this, _NotFound.prototype);
3825
+ }
3826
+ };
3827
+ var SessionCredentialsFilterSensitiveLog = (obj) => ({
3828
+ ...obj,
3829
+ ...obj.SecretAccessKey && { SecretAccessKey: SENSITIVE_STRING },
3830
+ ...obj.SessionToken && { SessionToken: SENSITIVE_STRING }
3831
+ });
3832
+ var CreateSessionOutputFilterSensitiveLog = (obj) => ({
3833
+ ...obj,
3834
+ ...obj.SSEKMSKeyId && { SSEKMSKeyId: SENSITIVE_STRING },
3835
+ ...obj.SSEKMSEncryptionContext && { SSEKMSEncryptionContext: SENSITIVE_STRING },
3836
+ ...obj.Credentials && { Credentials: SessionCredentialsFilterSensitiveLog(obj.Credentials) }
3837
+ });
3838
+ var CreateSessionRequestFilterSensitiveLog = (obj) => ({
3839
+ ...obj,
3840
+ ...obj.SSEKMSKeyId && { SSEKMSKeyId: SENSITIVE_STRING },
3841
+ ...obj.SSEKMSEncryptionContext && { SSEKMSEncryptionContext: SENSITIVE_STRING }
3842
+ });
3843
+
3844
+ // node_modules/@aws-sdk/client-s3/dist-es/models/models_1.js
3845
+ var EncryptionTypeMismatch = class _EncryptionTypeMismatch extends S3ServiceException {
3846
+ name = "EncryptionTypeMismatch";
3847
+ $fault = "client";
3848
+ constructor(opts) {
3849
+ super({
3850
+ name: "EncryptionTypeMismatch",
3851
+ $fault: "client",
3852
+ ...opts
3853
+ });
3854
+ Object.setPrototypeOf(this, _EncryptionTypeMismatch.prototype);
3855
+ }
3856
+ };
3857
+ var InvalidRequest = class _InvalidRequest extends S3ServiceException {
3858
+ name = "InvalidRequest";
3859
+ $fault = "client";
3860
+ constructor(opts) {
3861
+ super({
3862
+ name: "InvalidRequest",
3863
+ $fault: "client",
3864
+ ...opts
3865
+ });
3866
+ Object.setPrototypeOf(this, _InvalidRequest.prototype);
3867
+ }
3868
+ };
3869
+ var InvalidWriteOffset = class _InvalidWriteOffset extends S3ServiceException {
3870
+ name = "InvalidWriteOffset";
3871
+ $fault = "client";
3872
+ constructor(opts) {
3873
+ super({
3874
+ name: "InvalidWriteOffset",
3875
+ $fault: "client",
3876
+ ...opts
3877
+ });
3878
+ Object.setPrototypeOf(this, _InvalidWriteOffset.prototype);
3879
+ }
3880
+ };
3881
+ var TooManyParts = class _TooManyParts extends S3ServiceException {
3882
+ name = "TooManyParts";
3883
+ $fault = "client";
3884
+ constructor(opts) {
3885
+ super({
3886
+ name: "TooManyParts",
3887
+ $fault: "client",
3888
+ ...opts
3889
+ });
3890
+ Object.setPrototypeOf(this, _TooManyParts.prototype);
3891
+ }
3892
+ };
3893
+ var IdempotencyParameterMismatch = class _IdempotencyParameterMismatch extends S3ServiceException {
3894
+ name = "IdempotencyParameterMismatch";
3895
+ $fault = "client";
3896
+ constructor(opts) {
3897
+ super({
3898
+ name: "IdempotencyParameterMismatch",
3899
+ $fault: "client",
3900
+ ...opts
3901
+ });
3902
+ Object.setPrototypeOf(this, _IdempotencyParameterMismatch.prototype);
3903
+ }
3904
+ };
3905
+ var ObjectAlreadyInActiveTierError = class _ObjectAlreadyInActiveTierError extends S3ServiceException {
3906
+ name = "ObjectAlreadyInActiveTierError";
3907
+ $fault = "client";
3908
+ constructor(opts) {
3909
+ super({
3910
+ name: "ObjectAlreadyInActiveTierError",
3911
+ $fault: "client",
3912
+ ...opts
3913
+ });
3914
+ Object.setPrototypeOf(this, _ObjectAlreadyInActiveTierError.prototype);
3915
+ }
3916
+ };
3917
+ var SelectObjectContentEventStream;
3918
+ (function(SelectObjectContentEventStream2) {
3919
+ SelectObjectContentEventStream2.visit = (value, visitor) => {
3920
+ if (value.Records !== void 0)
3921
+ return visitor.Records(value.Records);
3922
+ if (value.Stats !== void 0)
3923
+ return visitor.Stats(value.Stats);
3924
+ if (value.Progress !== void 0)
3925
+ return visitor.Progress(value.Progress);
3926
+ if (value.Cont !== void 0)
3927
+ return visitor.Cont(value.Cont);
3928
+ if (value.End !== void 0)
3929
+ return visitor.End(value.End);
3930
+ return visitor._(value.$unknown[0], value.$unknown[1]);
3931
+ };
3932
+ })(SelectObjectContentEventStream || (SelectObjectContentEventStream = {}));
3933
+ var PutObjectOutputFilterSensitiveLog = (obj) => ({
3934
+ ...obj,
3935
+ ...obj.SSEKMSKeyId && { SSEKMSKeyId: SENSITIVE_STRING },
3936
+ ...obj.SSEKMSEncryptionContext && { SSEKMSEncryptionContext: SENSITIVE_STRING }
3937
+ });
3938
+ var PutObjectRequestFilterSensitiveLog = (obj) => ({
3939
+ ...obj,
3940
+ ...obj.SSECustomerKey && { SSECustomerKey: SENSITIVE_STRING },
3941
+ ...obj.SSEKMSKeyId && { SSEKMSKeyId: SENSITIVE_STRING },
3942
+ ...obj.SSEKMSEncryptionContext && { SSEKMSEncryptionContext: SENSITIVE_STRING }
3943
+ });
3944
+
3945
+ // node_modules/@aws-sdk/client-s3/dist-es/protocols/Aws_restXml.js
3946
+ var se_CreateSessionCommand = async (input, context) => {
3947
+ const b2 = requestBuilder(input, context);
3948
+ const headers = map({}, isSerializableHeaderValue, {
3949
+ [_xacsm]: input[_SM],
3950
+ [_xasse]: input[_SSE],
3951
+ [_xasseakki]: input[_SSEKMSKI],
3952
+ [_xassec]: input[_SSEKMSEC],
3953
+ [_xassebke]: [() => isSerializableHeaderValue(input[_BKE]), () => input[_BKE].toString()]
3954
+ });
3955
+ b2.bp("/");
3956
+ b2.p("Bucket", () => input.Bucket, "{Bucket}", false);
3957
+ const query = map({
3958
+ [_s]: [, ""]
3959
+ });
3960
+ let body;
3961
+ b2.m("GET").h(headers).q(query).b(body);
3962
+ return b2.build();
3963
+ };
3964
+ var se_PutObjectCommand = async (input, context) => {
3965
+ const b2 = requestBuilder(input, context);
3966
+ const headers = map({}, isSerializableHeaderValue, {
3967
+ ...input.Metadata !== void 0 && Object.keys(input.Metadata).reduce((acc, suffix) => {
3968
+ acc[`x-amz-meta-${suffix.toLowerCase()}`] = input.Metadata[suffix];
3969
+ return acc;
3970
+ }, {}),
3971
+ [_ct]: input[_CTo] || "application/octet-stream",
3972
+ [_xaa]: input[_ACL],
3973
+ [_cc]: input[_CC],
3974
+ [_cd]: input[_CD],
3975
+ [_ce]: input[_CE],
3976
+ [_cl]: input[_CL],
3977
+ [_cl_]: [() => isSerializableHeaderValue(input[_CLo]), () => input[_CLo].toString()],
3978
+ [_cm]: input[_CMD],
3979
+ [_xasca]: input[_CA],
3980
+ [_xacc]: input[_CCRC],
3981
+ [_xacc_]: input[_CCRCC],
3982
+ [_xacc__]: input[_CCRCNVME],
3983
+ [_xacs]: input[_CSHA],
3984
+ [_xacs_]: input[_CSHAh],
3985
+ [_e]: [() => isSerializableHeaderValue(input[_E]), () => dateToUtcString(input[_E]).toString()],
3986
+ [_im]: input[_IM],
3987
+ [_inm]: input[_INM],
3988
+ [_xagfc]: input[_GFC],
3989
+ [_xagr]: input[_GR],
3990
+ [_xagra]: input[_GRACP],
3991
+ [_xagwa]: input[_GWACP],
3992
+ [_xawob]: [() => isSerializableHeaderValue(input[_WOB]), () => input[_WOB].toString()],
3993
+ [_xasse]: input[_SSE],
3994
+ [_xasc]: input[_SC],
3995
+ [_xawrl]: input[_WRL],
3996
+ [_xasseca]: input[_SSECA],
3997
+ [_xasseck]: input[_SSECK],
3998
+ [_xasseckm]: input[_SSECKMD],
3999
+ [_xasseakki]: input[_SSEKMSKI],
4000
+ [_xassec]: input[_SSEKMSEC],
4001
+ [_xassebke]: [() => isSerializableHeaderValue(input[_BKE]), () => input[_BKE].toString()],
4002
+ [_xarp]: input[_RP],
4003
+ [_xat]: input[_T],
4004
+ [_xaolm]: input[_OLM],
4005
+ [_xaolrud]: [() => isSerializableHeaderValue(input[_OLRUD]), () => serializeDateTime(input[_OLRUD]).toString()],
4006
+ [_xaollh]: input[_OLLHS],
4007
+ [_xaebo]: input[_EBO]
4008
+ });
4009
+ b2.bp("/{Key+}");
4010
+ b2.p("Bucket", () => input.Bucket, "{Bucket}", false);
4011
+ b2.p("Key", () => input.Key, "{Key+}", true);
4012
+ const query = map({
4013
+ [_xi]: [, "PutObject"]
4014
+ });
4015
+ let body;
4016
+ let contents;
4017
+ if (input.Body !== void 0) {
4018
+ contents = input.Body;
4019
+ body = contents;
4020
+ }
4021
+ b2.m("PUT").h(headers).q(query).b(body);
4022
+ return b2.build();
4023
+ };
4024
+ var de_CreateSessionCommand = async (output, context) => {
4025
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
4026
+ return de_CommandError(output, context);
4027
+ }
4028
+ const contents = map({
4029
+ $metadata: deserializeMetadata(output),
4030
+ [_SSE]: [, output.headers[_xasse]],
4031
+ [_SSEKMSKI]: [, output.headers[_xasseakki]],
4032
+ [_SSEKMSEC]: [, output.headers[_xassec]],
4033
+ [_BKE]: [() => void 0 !== output.headers[_xassebke], () => parseBoolean(output.headers[_xassebke])]
4034
+ });
4035
+ const data = expectNonNull(expectObject(await parseXmlBody(output.body, context)), "body");
4036
+ if (data[_C] != null) {
4037
+ contents[_C] = de_SessionCredentials(data[_C], context);
4038
+ }
4039
+ return contents;
4040
+ };
4041
+ var de_PutObjectCommand = async (output, context) => {
4042
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
4043
+ return de_CommandError(output, context);
4044
+ }
4045
+ const contents = map({
4046
+ $metadata: deserializeMetadata(output),
4047
+ [_Exp]: [, output.headers[_xae]],
4048
+ [_ETa]: [, output.headers[_eta]],
4049
+ [_CCRC]: [, output.headers[_xacc]],
4050
+ [_CCRCC]: [, output.headers[_xacc_]],
4051
+ [_CCRCNVME]: [, output.headers[_xacc__]],
4052
+ [_CSHA]: [, output.headers[_xacs]],
4053
+ [_CSHAh]: [, output.headers[_xacs_]],
4054
+ [_CT]: [, output.headers[_xact]],
4055
+ [_SSE]: [, output.headers[_xasse]],
4056
+ [_VI]: [, output.headers[_xavi]],
4057
+ [_SSECA]: [, output.headers[_xasseca]],
4058
+ [_SSECKMD]: [, output.headers[_xasseckm]],
4059
+ [_SSEKMSKI]: [, output.headers[_xasseakki]],
4060
+ [_SSEKMSEC]: [, output.headers[_xassec]],
4061
+ [_BKE]: [() => void 0 !== output.headers[_xassebke], () => parseBoolean(output.headers[_xassebke])],
4062
+ [_Si]: [() => void 0 !== output.headers[_xaos], () => strictParseLong(output.headers[_xaos])],
4063
+ [_RC]: [, output.headers[_xarc]]
4064
+ });
4065
+ await collectBody(output.body, context);
4066
+ return contents;
4067
+ };
4068
+ var de_CommandError = async (output, context) => {
4069
+ const parsedOutput = {
4070
+ ...output,
4071
+ body: await parseXmlErrorBody(output.body, context)
4072
+ };
4073
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
4074
+ switch (errorCode) {
4075
+ case "NoSuchUpload":
4076
+ case "com.amazonaws.s3#NoSuchUpload":
4077
+ throw await de_NoSuchUploadRes(parsedOutput, context);
4078
+ case "ObjectNotInActiveTierError":
4079
+ case "com.amazonaws.s3#ObjectNotInActiveTierError":
4080
+ throw await de_ObjectNotInActiveTierErrorRes(parsedOutput, context);
4081
+ case "BucketAlreadyExists":
4082
+ case "com.amazonaws.s3#BucketAlreadyExists":
4083
+ throw await de_BucketAlreadyExistsRes(parsedOutput, context);
4084
+ case "BucketAlreadyOwnedByYou":
4085
+ case "com.amazonaws.s3#BucketAlreadyOwnedByYou":
4086
+ throw await de_BucketAlreadyOwnedByYouRes(parsedOutput, context);
4087
+ case "NoSuchBucket":
4088
+ case "com.amazonaws.s3#NoSuchBucket":
4089
+ throw await de_NoSuchBucketRes(parsedOutput, context);
4090
+ case "InvalidObjectState":
4091
+ case "com.amazonaws.s3#InvalidObjectState":
4092
+ throw await de_InvalidObjectStateRes(parsedOutput, context);
4093
+ case "NoSuchKey":
4094
+ case "com.amazonaws.s3#NoSuchKey":
4095
+ throw await de_NoSuchKeyRes(parsedOutput, context);
4096
+ case "NotFound":
4097
+ case "com.amazonaws.s3#NotFound":
4098
+ throw await de_NotFoundRes(parsedOutput, context);
4099
+ case "EncryptionTypeMismatch":
4100
+ case "com.amazonaws.s3#EncryptionTypeMismatch":
4101
+ throw await de_EncryptionTypeMismatchRes(parsedOutput, context);
4102
+ case "InvalidRequest":
4103
+ case "com.amazonaws.s3#InvalidRequest":
4104
+ throw await de_InvalidRequestRes(parsedOutput, context);
4105
+ case "InvalidWriteOffset":
4106
+ case "com.amazonaws.s3#InvalidWriteOffset":
4107
+ throw await de_InvalidWriteOffsetRes(parsedOutput, context);
4108
+ case "TooManyParts":
4109
+ case "com.amazonaws.s3#TooManyParts":
4110
+ throw await de_TooManyPartsRes(parsedOutput, context);
4111
+ case "IdempotencyParameterMismatch":
4112
+ case "com.amazonaws.s3#IdempotencyParameterMismatch":
4113
+ throw await de_IdempotencyParameterMismatchRes(parsedOutput, context);
4114
+ case "ObjectAlreadyInActiveTierError":
4115
+ case "com.amazonaws.s3#ObjectAlreadyInActiveTierError":
4116
+ throw await de_ObjectAlreadyInActiveTierErrorRes(parsedOutput, context);
4117
+ default:
4118
+ const parsedBody = parsedOutput.body;
4119
+ return throwDefaultError({
4120
+ output,
4121
+ parsedBody,
4122
+ errorCode
4123
+ });
4124
+ }
4125
+ };
4126
+ var throwDefaultError = withBaseException(S3ServiceException);
4127
+ var de_BucketAlreadyExistsRes = async (parsedOutput, context) => {
4128
+ const contents = map({});
4129
+ const data = parsedOutput.body;
4130
+ const exception = new BucketAlreadyExists({
4131
+ $metadata: deserializeMetadata(parsedOutput),
4132
+ ...contents
4133
+ });
4134
+ return decorateServiceException(exception, parsedOutput.body);
4135
+ };
4136
+ var de_BucketAlreadyOwnedByYouRes = async (parsedOutput, context) => {
4137
+ const contents = map({});
4138
+ const data = parsedOutput.body;
4139
+ const exception = new BucketAlreadyOwnedByYou({
4140
+ $metadata: deserializeMetadata(parsedOutput),
4141
+ ...contents
4142
+ });
4143
+ return decorateServiceException(exception, parsedOutput.body);
4144
+ };
4145
+ var de_EncryptionTypeMismatchRes = async (parsedOutput, context) => {
4146
+ const contents = map({});
4147
+ const data = parsedOutput.body;
4148
+ const exception = new EncryptionTypeMismatch({
4149
+ $metadata: deserializeMetadata(parsedOutput),
4150
+ ...contents
4151
+ });
4152
+ return decorateServiceException(exception, parsedOutput.body);
4153
+ };
4154
+ var de_IdempotencyParameterMismatchRes = async (parsedOutput, context) => {
4155
+ const contents = map({});
4156
+ const data = parsedOutput.body;
4157
+ const exception = new IdempotencyParameterMismatch({
4158
+ $metadata: deserializeMetadata(parsedOutput),
4159
+ ...contents
4160
+ });
4161
+ return decorateServiceException(exception, parsedOutput.body);
4162
+ };
4163
+ var de_InvalidObjectStateRes = async (parsedOutput, context) => {
4164
+ const contents = map({});
4165
+ const data = parsedOutput.body;
4166
+ if (data[_AT] != null) {
4167
+ contents[_AT] = expectString(data[_AT]);
4168
+ }
4169
+ if (data[_SC] != null) {
4170
+ contents[_SC] = expectString(data[_SC]);
4171
+ }
4172
+ const exception = new InvalidObjectState({
4173
+ $metadata: deserializeMetadata(parsedOutput),
4174
+ ...contents
4175
+ });
4176
+ return decorateServiceException(exception, parsedOutput.body);
4177
+ };
4178
+ var de_InvalidRequestRes = async (parsedOutput, context) => {
4179
+ const contents = map({});
4180
+ const data = parsedOutput.body;
4181
+ const exception = new InvalidRequest({
4182
+ $metadata: deserializeMetadata(parsedOutput),
4183
+ ...contents
4184
+ });
4185
+ return decorateServiceException(exception, parsedOutput.body);
4186
+ };
4187
+ var de_InvalidWriteOffsetRes = async (parsedOutput, context) => {
4188
+ const contents = map({});
4189
+ const data = parsedOutput.body;
4190
+ const exception = new InvalidWriteOffset({
4191
+ $metadata: deserializeMetadata(parsedOutput),
4192
+ ...contents
4193
+ });
4194
+ return decorateServiceException(exception, parsedOutput.body);
4195
+ };
4196
+ var de_NoSuchBucketRes = async (parsedOutput, context) => {
4197
+ const contents = map({});
4198
+ const data = parsedOutput.body;
4199
+ const exception = new NoSuchBucket({
4200
+ $metadata: deserializeMetadata(parsedOutput),
4201
+ ...contents
4202
+ });
4203
+ return decorateServiceException(exception, parsedOutput.body);
4204
+ };
4205
+ var de_NoSuchKeyRes = async (parsedOutput, context) => {
4206
+ const contents = map({});
4207
+ const data = parsedOutput.body;
4208
+ const exception = new NoSuchKey({
4209
+ $metadata: deserializeMetadata(parsedOutput),
4210
+ ...contents
4211
+ });
4212
+ return decorateServiceException(exception, parsedOutput.body);
4213
+ };
4214
+ var de_NoSuchUploadRes = async (parsedOutput, context) => {
4215
+ const contents = map({});
4216
+ const data = parsedOutput.body;
4217
+ const exception = new NoSuchUpload({
4218
+ $metadata: deserializeMetadata(parsedOutput),
4219
+ ...contents
4220
+ });
4221
+ return decorateServiceException(exception, parsedOutput.body);
4222
+ };
4223
+ var de_NotFoundRes = async (parsedOutput, context) => {
4224
+ const contents = map({});
4225
+ const data = parsedOutput.body;
4226
+ const exception = new NotFound({
4227
+ $metadata: deserializeMetadata(parsedOutput),
4228
+ ...contents
4229
+ });
4230
+ return decorateServiceException(exception, parsedOutput.body);
4231
+ };
4232
+ var de_ObjectAlreadyInActiveTierErrorRes = async (parsedOutput, context) => {
4233
+ const contents = map({});
4234
+ const data = parsedOutput.body;
4235
+ const exception = new ObjectAlreadyInActiveTierError({
4236
+ $metadata: deserializeMetadata(parsedOutput),
4237
+ ...contents
4238
+ });
4239
+ return decorateServiceException(exception, parsedOutput.body);
4240
+ };
4241
+ var de_ObjectNotInActiveTierErrorRes = async (parsedOutput, context) => {
4242
+ const contents = map({});
4243
+ const data = parsedOutput.body;
4244
+ const exception = new ObjectNotInActiveTierError({
4245
+ $metadata: deserializeMetadata(parsedOutput),
4246
+ ...contents
4247
+ });
4248
+ return decorateServiceException(exception, parsedOutput.body);
4249
+ };
4250
+ var de_TooManyPartsRes = async (parsedOutput, context) => {
4251
+ const contents = map({});
4252
+ const data = parsedOutput.body;
4253
+ const exception = new TooManyParts({
4254
+ $metadata: deserializeMetadata(parsedOutput),
4255
+ ...contents
4256
+ });
4257
+ return decorateServiceException(exception, parsedOutput.body);
4258
+ };
4259
+ var de_SessionCredentials = (output, context) => {
4260
+ const contents = {};
4261
+ if (output[_AKI] != null) {
4262
+ contents[_AKI] = expectString(output[_AKI]);
4263
+ }
4264
+ if (output[_SAK] != null) {
4265
+ contents[_SAK] = expectString(output[_SAK]);
4266
+ }
4267
+ if (output[_ST] != null) {
4268
+ contents[_ST] = expectString(output[_ST]);
4269
+ }
4270
+ if (output[_Exp] != null) {
4271
+ contents[_Exp] = expectNonNull(parseRfc3339DateTimeWithOffset(output[_Exp]));
4272
+ }
4273
+ return contents;
4274
+ };
4275
+ var deserializeMetadata = (output) => ({
4276
+ httpStatusCode: output.statusCode,
4277
+ requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
4278
+ extendedRequestId: output.headers["x-amz-id-2"],
4279
+ cfId: output.headers["x-amz-cf-id"]
4280
+ });
4281
+ var _ACL = "ACL";
4282
+ var _AKI = "AccessKeyId";
4283
+ var _AT = "AccessTier";
4284
+ var _BKE = "BucketKeyEnabled";
4285
+ var _C = "Credentials";
4286
+ var _CA = "ChecksumAlgorithm";
4287
+ var _CC = "CacheControl";
4288
+ var _CCRC = "ChecksumCRC32";
4289
+ var _CCRCC = "ChecksumCRC32C";
4290
+ var _CCRCNVME = "ChecksumCRC64NVME";
4291
+ var _CD = "ContentDisposition";
4292
+ var _CE = "ContentEncoding";
4293
+ var _CL = "ContentLanguage";
4294
+ var _CLo = "ContentLength";
4295
+ var _CMD = "ContentMD5";
4296
+ var _CSHA = "ChecksumSHA1";
4297
+ var _CSHAh = "ChecksumSHA256";
4298
+ var _CT = "ChecksumType";
4299
+ var _CTo = "ContentType";
4300
+ var _E = "Expires";
4301
+ var _EBO = "ExpectedBucketOwner";
4302
+ var _ETa = "ETag";
4303
+ var _Exp = "Expiration";
4304
+ var _GFC = "GrantFullControl";
4305
+ var _GR = "GrantRead";
4306
+ var _GRACP = "GrantReadACP";
4307
+ var _GWACP = "GrantWriteACP";
4308
+ var _IM = "IfMatch";
4309
+ var _INM = "IfNoneMatch";
4310
+ var _OLLHS = "ObjectLockLegalHoldStatus";
4311
+ var _OLM = "ObjectLockMode";
4312
+ var _OLRUD = "ObjectLockRetainUntilDate";
4313
+ var _RC = "RequestCharged";
4314
+ var _RP = "RequestPayer";
4315
+ var _SAK = "SecretAccessKey";
4316
+ var _SC = "StorageClass";
4317
+ var _SM = "SessionMode";
4318
+ var _SSE = "ServerSideEncryption";
4319
+ var _SSECA = "SSECustomerAlgorithm";
4320
+ var _SSECK = "SSECustomerKey";
4321
+ var _SSECKMD = "SSECustomerKeyMD5";
4322
+ var _SSEKMSEC = "SSEKMSEncryptionContext";
4323
+ var _SSEKMSKI = "SSEKMSKeyId";
4324
+ var _ST = "SessionToken";
4325
+ var _Si = "Size";
4326
+ var _T = "Tagging";
4327
+ var _VI = "VersionId";
4328
+ var _WOB = "WriteOffsetBytes";
4329
+ var _WRL = "WebsiteRedirectLocation";
4330
+ var _cc = "cache-control";
4331
+ var _cd = "content-disposition";
4332
+ var _ce = "content-encoding";
4333
+ var _cl = "content-language";
4334
+ var _cl_ = "content-length";
4335
+ var _cm = "content-md5";
4336
+ var _ct = "content-type";
4337
+ var _e = "expires";
4338
+ var _eta = "etag";
4339
+ var _im = "if-match";
4340
+ var _inm = "if-none-match";
4341
+ var _s = "session";
4342
+ var _xaa = "x-amz-acl";
4343
+ var _xacc = "x-amz-checksum-crc32";
4344
+ var _xacc_ = "x-amz-checksum-crc32c";
4345
+ var _xacc__ = "x-amz-checksum-crc64nvme";
4346
+ var _xacs = "x-amz-checksum-sha1";
4347
+ var _xacs_ = "x-amz-checksum-sha256";
4348
+ var _xacsm = "x-amz-create-session-mode";
4349
+ var _xact = "x-amz-checksum-type";
4350
+ var _xae = "x-amz-expiration";
4351
+ var _xaebo = "x-amz-expected-bucket-owner";
4352
+ var _xagfc = "x-amz-grant-full-control";
4353
+ var _xagr = "x-amz-grant-read";
4354
+ var _xagra = "x-amz-grant-read-acp";
4355
+ var _xagwa = "x-amz-grant-write-acp";
4356
+ var _xaollh = "x-amz-object-lock-legal-hold";
4357
+ var _xaolm = "x-amz-object-lock-mode";
4358
+ var _xaolrud = "x-amz-object-lock-retain-until-date";
4359
+ var _xaos = "x-amz-object-size";
4360
+ var _xarc = "x-amz-request-charged";
4361
+ var _xarp = "x-amz-request-payer";
4362
+ var _xasc = "x-amz-storage-class";
4363
+ var _xasca = "x-amz-sdk-checksum-algorithm";
4364
+ var _xasse = "x-amz-server-side-encryption";
4365
+ var _xasseakki = "x-amz-server-side-encryption-aws-kms-key-id";
4366
+ var _xassebke = "x-amz-server-side-encryption-bucket-key-enabled";
4367
+ var _xassec = "x-amz-server-side-encryption-context";
4368
+ var _xasseca = "x-amz-server-side-encryption-customer-algorithm";
4369
+ var _xasseck = "x-amz-server-side-encryption-customer-key";
4370
+ var _xasseckm = "x-amz-server-side-encryption-customer-key-md5";
4371
+ var _xat = "x-amz-tagging";
4372
+ var _xavi = "x-amz-version-id";
4373
+ var _xawob = "x-amz-write-offset-bytes";
4374
+ var _xawrl = "x-amz-website-redirect-location";
4375
+ var _xi = "x-id";
4376
+
4377
+ // node_modules/@aws-sdk/client-s3/dist-es/commands/CreateSessionCommand.js
4378
+ var CreateSessionCommand = class extends Command.classBuilder().ep({
4379
+ ...commonParams,
4380
+ DisableS3ExpressSessionAuth: { type: "staticContextParams", value: true },
4381
+ Bucket: { type: "contextParams", name: "Bucket" }
4382
+ }).m(function(Command2, cs2, config, o2) {
4383
+ return [
4384
+ getSerdePlugin(config, this.serialize, this.deserialize),
4385
+ getEndpointPlugin(config, Command2.getEndpointParameterInstructions()),
4386
+ getThrow200ExceptionsPlugin(config)
4387
+ ];
4388
+ }).s("AmazonS3", "CreateSession", {}).n("S3Client", "CreateSessionCommand").f(CreateSessionRequestFilterSensitiveLog, CreateSessionOutputFilterSensitiveLog).ser(se_CreateSessionCommand).de(de_CreateSessionCommand).build() {
4389
+ };
4390
+
4391
+ // node_modules/@aws-sdk/client-s3/package.json
4392
+ var package_default = {
4393
+ name: "@aws-sdk/client-s3",
4394
+ description: "AWS SDK for JavaScript S3 Client for Node.js, Browser and React Native",
4395
+ version: "3.835.0",
4396
+ scripts: {
4397
+ build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
4398
+ "build:cjs": "node ../../scripts/compilation/inline client-s3",
4399
+ "build:es": "tsc -p tsconfig.es.json",
4400
+ "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
4401
+ "build:types": "tsc -p tsconfig.types.json",
4402
+ "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
4403
+ clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
4404
+ "extract:docs": "api-extractor run --local",
4405
+ "generate:client": "node ../../scripts/generate-clients/single-service --solo s3",
4406
+ test: "yarn g:vitest run",
4407
+ "test:browser": "node ./test/browser-build/esbuild && yarn g:vitest run -c vitest.config.browser.ts",
4408
+ "test:browser:watch": "node ./test/browser-build/esbuild && yarn g:vitest watch -c vitest.config.browser.ts",
4409
+ "test:e2e": "yarn g:vitest run -c vitest.config.e2e.ts && yarn test:browser",
4410
+ "test:e2e:watch": "yarn g:vitest watch -c vitest.config.e2e.ts",
4411
+ "test:integration": "yarn g:vitest run -c vitest.config.integ.ts",
4412
+ "test:integration:watch": "yarn g:vitest watch -c vitest.config.integ.ts",
4413
+ "test:watch": "yarn g:vitest watch"
4414
+ },
4415
+ main: "./dist-cjs/index.js",
4416
+ types: "./dist-types/index.d.ts",
4417
+ module: "./dist-es/index.js",
4418
+ sideEffects: false,
4419
+ dependencies: {
4420
+ "@aws-crypto/sha1-browser": "5.2.0",
4421
+ "@aws-crypto/sha256-browser": "5.2.0",
4422
+ "@aws-crypto/sha256-js": "5.2.0",
4423
+ "@aws-sdk/core": "3.835.0",
4424
+ "@aws-sdk/credential-provider-node": "3.835.0",
4425
+ "@aws-sdk/middleware-bucket-endpoint": "3.830.0",
4426
+ "@aws-sdk/middleware-expect-continue": "3.821.0",
4427
+ "@aws-sdk/middleware-flexible-checksums": "3.835.0",
4428
+ "@aws-sdk/middleware-host-header": "3.821.0",
4429
+ "@aws-sdk/middleware-location-constraint": "3.821.0",
4430
+ "@aws-sdk/middleware-logger": "3.821.0",
4431
+ "@aws-sdk/middleware-recursion-detection": "3.821.0",
4432
+ "@aws-sdk/middleware-sdk-s3": "3.835.0",
4433
+ "@aws-sdk/middleware-ssec": "3.821.0",
4434
+ "@aws-sdk/middleware-user-agent": "3.835.0",
4435
+ "@aws-sdk/region-config-resolver": "3.821.0",
4436
+ "@aws-sdk/signature-v4-multi-region": "3.835.0",
4437
+ "@aws-sdk/types": "3.821.0",
4438
+ "@aws-sdk/util-endpoints": "3.828.0",
4439
+ "@aws-sdk/util-user-agent-browser": "3.821.0",
4440
+ "@aws-sdk/util-user-agent-node": "3.835.0",
4441
+ "@aws-sdk/xml-builder": "3.821.0",
4442
+ "@smithy/config-resolver": "^4.1.4",
4443
+ "@smithy/core": "^3.5.3",
4444
+ "@smithy/eventstream-serde-browser": "^4.0.4",
4445
+ "@smithy/eventstream-serde-config-resolver": "^4.1.2",
4446
+ "@smithy/eventstream-serde-node": "^4.0.4",
4447
+ "@smithy/fetch-http-handler": "^5.0.4",
4448
+ "@smithy/hash-blob-browser": "^4.0.4",
4449
+ "@smithy/hash-node": "^4.0.4",
4450
+ "@smithy/hash-stream-node": "^4.0.4",
4451
+ "@smithy/invalid-dependency": "^4.0.4",
4452
+ "@smithy/md5-js": "^4.0.4",
4453
+ "@smithy/middleware-content-length": "^4.0.4",
4454
+ "@smithy/middleware-endpoint": "^4.1.12",
4455
+ "@smithy/middleware-retry": "^4.1.13",
4456
+ "@smithy/middleware-serde": "^4.0.8",
4457
+ "@smithy/middleware-stack": "^4.0.4",
4458
+ "@smithy/node-config-provider": "^4.1.3",
4459
+ "@smithy/node-http-handler": "^4.0.6",
4460
+ "@smithy/protocol-http": "^5.1.2",
4461
+ "@smithy/smithy-client": "^4.4.4",
4462
+ "@smithy/types": "^4.3.1",
4463
+ "@smithy/url-parser": "^4.0.4",
4464
+ "@smithy/util-base64": "^4.0.0",
4465
+ "@smithy/util-body-length-browser": "^4.0.0",
4466
+ "@smithy/util-body-length-node": "^4.0.0",
4467
+ "@smithy/util-defaults-mode-browser": "^4.0.20",
4468
+ "@smithy/util-defaults-mode-node": "^4.0.20",
4469
+ "@smithy/util-endpoints": "^3.0.6",
4470
+ "@smithy/util-middleware": "^4.0.4",
4471
+ "@smithy/util-retry": "^4.0.6",
4472
+ "@smithy/util-stream": "^4.2.2",
4473
+ "@smithy/util-utf8": "^4.0.0",
4474
+ "@smithy/util-waiter": "^4.0.5",
4475
+ "@types/uuid": "^9.0.1",
4476
+ tslib: "^2.6.2",
4477
+ uuid: "^9.0.1"
4478
+ },
4479
+ devDependencies: {
4480
+ "@aws-sdk/signature-v4-crt": "3.835.0",
4481
+ "@tsconfig/node18": "18.2.4",
4482
+ "@types/node": "^18.19.69",
4483
+ concurrently: "7.0.0",
4484
+ "downlevel-dts": "0.10.1",
4485
+ rimraf: "3.0.2",
4486
+ typescript: "~5.8.3"
4487
+ },
4488
+ engines: {
4489
+ node: ">=18.0.0"
4490
+ },
4491
+ typesVersions: {
4492
+ "<4.0": {
4493
+ "dist-types/*": [
4494
+ "dist-types/ts3.4/*"
4495
+ ]
4496
+ }
4497
+ },
4498
+ files: [
4499
+ "dist-*/**"
4500
+ ],
4501
+ author: {
4502
+ name: "AWS SDK for JavaScript Team",
4503
+ url: "https://aws.amazon.com/javascript/"
4504
+ },
4505
+ license: "Apache-2.0",
4506
+ browser: {
4507
+ "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
4508
+ },
4509
+ "react-native": {
4510
+ "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
4511
+ },
4512
+ homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-s3",
4513
+ repository: {
4514
+ type: "git",
4515
+ url: "https://github.com/aws/aws-sdk-js-v3.git",
4516
+ directory: "clients/client-s3"
4517
+ }
4518
+ };
4519
+
4520
+ // node_modules/@aws-sdk/credential-provider-node/dist-es/remoteProvider.js
4521
+ var ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
4522
+ var remoteProvider = async (init) => {
4523
+ const { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata } = await import("./dist-es-MXGFLXV2.js");
4524
+ if (process.env[ENV_CMDS_RELATIVE_URI] || process.env[ENV_CMDS_FULL_URI]) {
4525
+ init.logger?.debug("@aws-sdk/credential-provider-node - remoteProvider::fromHttp/fromContainerMetadata");
4526
+ const { fromHttp } = await import("./dist-es-XEM2CDDP.js");
4527
+ return chain(fromHttp(init), fromContainerMetadata(init));
4528
+ }
4529
+ if (process.env[ENV_IMDS_DISABLED] && process.env[ENV_IMDS_DISABLED] !== "false") {
4530
+ return async () => {
4531
+ throw new CredentialsProviderError("EC2 Instance Metadata Service access disabled", { logger: init.logger });
4532
+ };
4533
+ }
4534
+ init.logger?.debug("@aws-sdk/credential-provider-node - remoteProvider::fromInstanceMetadata");
4535
+ return fromInstanceMetadata(init);
4536
+ };
4537
+
4538
+ // node_modules/@aws-sdk/credential-provider-node/dist-es/defaultProvider.js
4539
+ var multipleCredentialSourceWarningEmitted = false;
4540
+ var defaultProvider = (init = {}) => memoize(chain(async () => {
4541
+ const profile = init.profile ?? process.env[ENV_PROFILE];
4542
+ if (profile) {
4543
+ const envStaticCredentialsAreSet = process.env[ENV_KEY] && process.env[ENV_SECRET];
4544
+ if (envStaticCredentialsAreSet) {
4545
+ if (!multipleCredentialSourceWarningEmitted) {
4546
+ const warnFn = init.logger?.warn && init.logger?.constructor?.name !== "NoOpLogger" ? init.logger.warn : console.warn;
4547
+ warnFn(`@aws-sdk/credential-provider-node - defaultProvider::fromEnv WARNING:
4548
+ Multiple credential sources detected:
4549
+ Both AWS_PROFILE and the pair AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY static credentials are set.
4550
+ This SDK will proceed with the AWS_PROFILE value.
4551
+
4552
+ However, a future version may change this behavior to prefer the ENV static credentials.
4553
+ Please ensure that your environment only sets either the AWS_PROFILE or the
4554
+ AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY pair.
4555
+ `);
4556
+ multipleCredentialSourceWarningEmitted = true;
4557
+ }
4558
+ }
4559
+ throw new CredentialsProviderError("AWS_PROFILE is set, skipping fromEnv provider.", {
4560
+ logger: init.logger,
4561
+ tryNextLink: true
4562
+ });
4563
+ }
4564
+ init.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv");
4565
+ return fromEnv(init)();
4566
+ }, async () => {
4567
+ init.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");
4568
+ const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;
4569
+ if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {
4570
+ throw new CredentialsProviderError("Skipping SSO provider in default chain (inputs do not include SSO fields).", { logger: init.logger });
4571
+ }
4572
+ const { fromSSO } = await import("./dist-es-FD7XXZCE.js");
4573
+ return fromSSO(init)();
4574
+ }, async () => {
4575
+ init.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");
4576
+ const { fromIni } = await import("./dist-es-RHLCSE2G.js");
4577
+ return fromIni(init)();
4578
+ }, async () => {
4579
+ init.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");
4580
+ const { fromProcess } = await import("./dist-es-X5IH3XCT.js");
4581
+ return fromProcess(init)();
4582
+ }, async () => {
4583
+ init.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");
4584
+ const { fromTokenFile } = await import("./dist-es-QPNGCVTW.js");
4585
+ return fromTokenFile(init)();
4586
+ }, async () => {
4587
+ init.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider");
4588
+ return (await remoteProvider(init))();
4589
+ }, async () => {
4590
+ throw new CredentialsProviderError("Could not load credentials from any providers", {
4591
+ tryNextLink: false,
4592
+ logger: init.logger
4593
+ });
4594
+ }), credentialsTreatedAsExpired, credentialsWillNeedRefresh);
4595
+ var credentialsWillNeedRefresh = (credentials) => credentials?.expiration !== void 0;
4596
+ var credentialsTreatedAsExpired = (credentials) => credentials?.expiration !== void 0 && credentials.expiration.getTime() - Date.now() < 3e5;
4597
+
4598
+ // node_modules/@aws-sdk/middleware-bucket-endpoint/dist-es/NodeUseArnRegionConfigOptions.js
4599
+ var NODE_USE_ARN_REGION_ENV_NAME = "AWS_S3_USE_ARN_REGION";
4600
+ var NODE_USE_ARN_REGION_INI_NAME = "s3_use_arn_region";
4601
+ var NODE_USE_ARN_REGION_CONFIG_OPTIONS = {
4602
+ environmentVariableSelector: (env) => booleanSelector(env, NODE_USE_ARN_REGION_ENV_NAME, SelectorType.ENV),
4603
+ configFileSelector: (profile) => booleanSelector(profile, NODE_USE_ARN_REGION_INI_NAME, SelectorType.CONFIG),
4604
+ default: void 0
4605
+ };
4606
+
4607
+ // node_modules/@smithy/eventstream-codec/dist-es/Int64.js
4608
+ var Int64 = class _Int64 {
4609
+ constructor(bytes) {
4610
+ this.bytes = bytes;
4611
+ if (bytes.byteLength !== 8) {
4612
+ throw new Error("Int64 buffers must be exactly 8 bytes");
4613
+ }
4614
+ }
4615
+ static fromNumber(number) {
4616
+ if (number > 9223372036854776e3 || number < -9223372036854776e3) {
4617
+ throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`);
4618
+ }
4619
+ const bytes = new Uint8Array(8);
4620
+ for (let i2 = 7, remaining = Math.abs(Math.round(number)); i2 > -1 && remaining > 0; i2--, remaining /= 256) {
4621
+ bytes[i2] = remaining;
4622
+ }
4623
+ if (number < 0) {
4624
+ negate(bytes);
4625
+ }
4626
+ return new _Int64(bytes);
4627
+ }
4628
+ valueOf() {
4629
+ const bytes = this.bytes.slice(0);
4630
+ const negative = bytes[0] & 128;
4631
+ if (negative) {
4632
+ negate(bytes);
4633
+ }
4634
+ return parseInt(toHex(bytes), 16) * (negative ? -1 : 1);
4635
+ }
4636
+ toString() {
4637
+ return String(this.valueOf());
4638
+ }
4639
+ };
4640
+ function negate(bytes) {
4641
+ for (let i2 = 0; i2 < 8; i2++) {
4642
+ bytes[i2] ^= 255;
4643
+ }
4644
+ for (let i2 = 7; i2 > -1; i2--) {
4645
+ bytes[i2]++;
4646
+ if (bytes[i2] !== 0)
4647
+ break;
4648
+ }
4649
+ }
4650
+
4651
+ // node_modules/@smithy/eventstream-codec/dist-es/HeaderMarshaller.js
4652
+ var HeaderMarshaller = class {
4653
+ constructor(toUtf82, fromUtf84) {
4654
+ this.toUtf8 = toUtf82;
4655
+ this.fromUtf8 = fromUtf84;
4656
+ }
4657
+ format(headers) {
4658
+ const chunks = [];
4659
+ for (const headerName of Object.keys(headers)) {
4660
+ const bytes = this.fromUtf8(headerName);
4661
+ chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName]));
4662
+ }
4663
+ const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0));
4664
+ let position = 0;
4665
+ for (const chunk of chunks) {
4666
+ out.set(chunk, position);
4667
+ position += chunk.byteLength;
4668
+ }
4669
+ return out;
4670
+ }
4671
+ formatHeaderValue(header) {
4672
+ switch (header.type) {
4673
+ case "boolean":
4674
+ return Uint8Array.from([header.value ? 0 : 1]);
4675
+ case "byte":
4676
+ return Uint8Array.from([2, header.value]);
4677
+ case "short":
4678
+ const shortView = new DataView(new ArrayBuffer(3));
4679
+ shortView.setUint8(0, 3);
4680
+ shortView.setInt16(1, header.value, false);
4681
+ return new Uint8Array(shortView.buffer);
4682
+ case "integer":
4683
+ const intView = new DataView(new ArrayBuffer(5));
4684
+ intView.setUint8(0, 4);
4685
+ intView.setInt32(1, header.value, false);
4686
+ return new Uint8Array(intView.buffer);
4687
+ case "long":
4688
+ const longBytes = new Uint8Array(9);
4689
+ longBytes[0] = 5;
4690
+ longBytes.set(header.value.bytes, 1);
4691
+ return longBytes;
4692
+ case "binary":
4693
+ const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength));
4694
+ binView.setUint8(0, 6);
4695
+ binView.setUint16(1, header.value.byteLength, false);
4696
+ const binBytes = new Uint8Array(binView.buffer);
4697
+ binBytes.set(header.value, 3);
4698
+ return binBytes;
4699
+ case "string":
4700
+ const utf8Bytes = this.fromUtf8(header.value);
4701
+ const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength));
4702
+ strView.setUint8(0, 7);
4703
+ strView.setUint16(1, utf8Bytes.byteLength, false);
4704
+ const strBytes = new Uint8Array(strView.buffer);
4705
+ strBytes.set(utf8Bytes, 3);
4706
+ return strBytes;
4707
+ case "timestamp":
4708
+ const tsBytes = new Uint8Array(9);
4709
+ tsBytes[0] = 8;
4710
+ tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1);
4711
+ return tsBytes;
4712
+ case "uuid":
4713
+ if (!UUID_PATTERN.test(header.value)) {
4714
+ throw new Error(`Invalid UUID received: ${header.value}`);
4715
+ }
4716
+ const uuidBytes = new Uint8Array(17);
4717
+ uuidBytes[0] = 9;
4718
+ uuidBytes.set(fromHex(header.value.replace(/\-/g, "")), 1);
4719
+ return uuidBytes;
4720
+ }
4721
+ }
4722
+ parse(headers) {
4723
+ const out = {};
4724
+ let position = 0;
4725
+ while (position < headers.byteLength) {
4726
+ const nameLength = headers.getUint8(position++);
4727
+ const name = this.toUtf8(new Uint8Array(headers.buffer, headers.byteOffset + position, nameLength));
4728
+ position += nameLength;
4729
+ switch (headers.getUint8(position++)) {
4730
+ case 0:
4731
+ out[name] = {
4732
+ type: BOOLEAN_TAG,
4733
+ value: true
4734
+ };
4735
+ break;
4736
+ case 1:
4737
+ out[name] = {
4738
+ type: BOOLEAN_TAG,
4739
+ value: false
4740
+ };
4741
+ break;
4742
+ case 2:
4743
+ out[name] = {
4744
+ type: BYTE_TAG,
4745
+ value: headers.getInt8(position++)
4746
+ };
4747
+ break;
4748
+ case 3:
4749
+ out[name] = {
4750
+ type: SHORT_TAG,
4751
+ value: headers.getInt16(position, false)
4752
+ };
4753
+ position += 2;
4754
+ break;
4755
+ case 4:
4756
+ out[name] = {
4757
+ type: INT_TAG,
4758
+ value: headers.getInt32(position, false)
4759
+ };
4760
+ position += 4;
4761
+ break;
4762
+ case 5:
4763
+ out[name] = {
4764
+ type: LONG_TAG,
4765
+ value: new Int64(new Uint8Array(headers.buffer, headers.byteOffset + position, 8))
4766
+ };
4767
+ position += 8;
4768
+ break;
4769
+ case 6:
4770
+ const binaryLength = headers.getUint16(position, false);
4771
+ position += 2;
4772
+ out[name] = {
4773
+ type: BINARY_TAG,
4774
+ value: new Uint8Array(headers.buffer, headers.byteOffset + position, binaryLength)
4775
+ };
4776
+ position += binaryLength;
4777
+ break;
4778
+ case 7:
4779
+ const stringLength = headers.getUint16(position, false);
4780
+ position += 2;
4781
+ out[name] = {
4782
+ type: STRING_TAG,
4783
+ value: this.toUtf8(new Uint8Array(headers.buffer, headers.byteOffset + position, stringLength))
4784
+ };
4785
+ position += stringLength;
4786
+ break;
4787
+ case 8:
4788
+ out[name] = {
4789
+ type: TIMESTAMP_TAG,
4790
+ value: new Date(new Int64(new Uint8Array(headers.buffer, headers.byteOffset + position, 8)).valueOf())
4791
+ };
4792
+ position += 8;
4793
+ break;
4794
+ case 9:
4795
+ const uuidBytes = new Uint8Array(headers.buffer, headers.byteOffset + position, 16);
4796
+ position += 16;
4797
+ out[name] = {
4798
+ type: UUID_TAG,
4799
+ value: `${toHex(uuidBytes.subarray(0, 4))}-${toHex(uuidBytes.subarray(4, 6))}-${toHex(uuidBytes.subarray(6, 8))}-${toHex(uuidBytes.subarray(8, 10))}-${toHex(uuidBytes.subarray(10))}`
4800
+ };
4801
+ break;
4802
+ default:
4803
+ throw new Error(`Unrecognized header type tag`);
4804
+ }
4805
+ }
4806
+ return out;
4807
+ }
4808
+ };
4809
+ var HEADER_VALUE_TYPE;
4810
+ (function(HEADER_VALUE_TYPE2) {
4811
+ HEADER_VALUE_TYPE2[HEADER_VALUE_TYPE2["boolTrue"] = 0] = "boolTrue";
4812
+ HEADER_VALUE_TYPE2[HEADER_VALUE_TYPE2["boolFalse"] = 1] = "boolFalse";
4813
+ HEADER_VALUE_TYPE2[HEADER_VALUE_TYPE2["byte"] = 2] = "byte";
4814
+ HEADER_VALUE_TYPE2[HEADER_VALUE_TYPE2["short"] = 3] = "short";
4815
+ HEADER_VALUE_TYPE2[HEADER_VALUE_TYPE2["integer"] = 4] = "integer";
4816
+ HEADER_VALUE_TYPE2[HEADER_VALUE_TYPE2["long"] = 5] = "long";
4817
+ HEADER_VALUE_TYPE2[HEADER_VALUE_TYPE2["byteArray"] = 6] = "byteArray";
4818
+ HEADER_VALUE_TYPE2[HEADER_VALUE_TYPE2["string"] = 7] = "string";
4819
+ HEADER_VALUE_TYPE2[HEADER_VALUE_TYPE2["timestamp"] = 8] = "timestamp";
4820
+ HEADER_VALUE_TYPE2[HEADER_VALUE_TYPE2["uuid"] = 9] = "uuid";
4821
+ })(HEADER_VALUE_TYPE || (HEADER_VALUE_TYPE = {}));
4822
+ var BOOLEAN_TAG = "boolean";
4823
+ var BYTE_TAG = "byte";
4824
+ var SHORT_TAG = "short";
4825
+ var INT_TAG = "integer";
4826
+ var LONG_TAG = "long";
4827
+ var BINARY_TAG = "binary";
4828
+ var STRING_TAG = "string";
4829
+ var TIMESTAMP_TAG = "timestamp";
4830
+ var UUID_TAG = "uuid";
4831
+ var UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;
4832
+
4833
+ // node_modules/@smithy/eventstream-codec/dist-es/splitMessage.js
4834
+ var PRELUDE_MEMBER_LENGTH = 4;
4835
+ var PRELUDE_LENGTH = PRELUDE_MEMBER_LENGTH * 2;
4836
+ var CHECKSUM_LENGTH = 4;
4837
+ var MINIMUM_MESSAGE_LENGTH = PRELUDE_LENGTH + CHECKSUM_LENGTH * 2;
4838
+ function splitMessage({ byteLength, byteOffset, buffer }) {
4839
+ if (byteLength < MINIMUM_MESSAGE_LENGTH) {
4840
+ throw new Error("Provided message too short to accommodate event stream message overhead");
4841
+ }
4842
+ const view = new DataView(buffer, byteOffset, byteLength);
4843
+ const messageLength = view.getUint32(0, false);
4844
+ if (byteLength !== messageLength) {
4845
+ throw new Error("Reported message length does not match received message length");
4846
+ }
4847
+ const headerLength = view.getUint32(PRELUDE_MEMBER_LENGTH, false);
4848
+ const expectedPreludeChecksum = view.getUint32(PRELUDE_LENGTH, false);
4849
+ const expectedMessageChecksum = view.getUint32(byteLength - CHECKSUM_LENGTH, false);
4850
+ const checksummer = new Crc32().update(new Uint8Array(buffer, byteOffset, PRELUDE_LENGTH));
4851
+ if (expectedPreludeChecksum !== checksummer.digest()) {
4852
+ throw new Error(`The prelude checksum specified in the message (${expectedPreludeChecksum}) does not match the calculated CRC32 checksum (${checksummer.digest()})`);
4853
+ }
4854
+ checksummer.update(new Uint8Array(buffer, byteOffset + PRELUDE_LENGTH, byteLength - (PRELUDE_LENGTH + CHECKSUM_LENGTH)));
4855
+ if (expectedMessageChecksum !== checksummer.digest()) {
4856
+ throw new Error(`The message checksum (${checksummer.digest()}) did not match the expected value of ${expectedMessageChecksum}`);
4857
+ }
4858
+ return {
4859
+ headers: new DataView(buffer, byteOffset + PRELUDE_LENGTH + CHECKSUM_LENGTH, headerLength),
4860
+ body: new Uint8Array(buffer, byteOffset + PRELUDE_LENGTH + CHECKSUM_LENGTH + headerLength, messageLength - headerLength - (PRELUDE_LENGTH + CHECKSUM_LENGTH + CHECKSUM_LENGTH))
4861
+ };
4862
+ }
4863
+
4864
+ // node_modules/@smithy/eventstream-codec/dist-es/EventStreamCodec.js
4865
+ var EventStreamCodec = class {
4866
+ constructor(toUtf82, fromUtf84) {
4867
+ this.headerMarshaller = new HeaderMarshaller(toUtf82, fromUtf84);
4868
+ this.messageBuffer = [];
4869
+ this.isEndOfStream = false;
4870
+ }
4871
+ feed(message) {
4872
+ this.messageBuffer.push(this.decode(message));
4873
+ }
4874
+ endOfStream() {
4875
+ this.isEndOfStream = true;
4876
+ }
4877
+ getMessage() {
4878
+ const message = this.messageBuffer.pop();
4879
+ const isEndOfStream = this.isEndOfStream;
4880
+ return {
4881
+ getMessage() {
4882
+ return message;
4883
+ },
4884
+ isEndOfStream() {
4885
+ return isEndOfStream;
4886
+ }
4887
+ };
4888
+ }
4889
+ getAvailableMessages() {
4890
+ const messages = this.messageBuffer;
4891
+ this.messageBuffer = [];
4892
+ const isEndOfStream = this.isEndOfStream;
4893
+ return {
4894
+ getMessages() {
4895
+ return messages;
4896
+ },
4897
+ isEndOfStream() {
4898
+ return isEndOfStream;
4899
+ }
4900
+ };
4901
+ }
4902
+ encode({ headers: rawHeaders, body }) {
4903
+ const headers = this.headerMarshaller.format(rawHeaders);
4904
+ const length = headers.byteLength + body.byteLength + 16;
4905
+ const out = new Uint8Array(length);
4906
+ const view = new DataView(out.buffer, out.byteOffset, out.byteLength);
4907
+ const checksum = new Crc32();
4908
+ view.setUint32(0, length, false);
4909
+ view.setUint32(4, headers.byteLength, false);
4910
+ view.setUint32(8, checksum.update(out.subarray(0, 8)).digest(), false);
4911
+ out.set(headers, 12);
4912
+ out.set(body, headers.byteLength + 12);
4913
+ view.setUint32(length - 4, checksum.update(out.subarray(8, length - 4)).digest(), false);
4914
+ return out;
4915
+ }
4916
+ decode(message) {
4917
+ const { headers, body } = splitMessage(message);
4918
+ return { headers: this.headerMarshaller.parse(headers), body };
4919
+ }
4920
+ formatHeaders(rawHeaders) {
4921
+ return this.headerMarshaller.format(rawHeaders);
4922
+ }
4923
+ };
4924
+
4925
+ // node_modules/@smithy/eventstream-codec/dist-es/MessageDecoderStream.js
4926
+ var MessageDecoderStream = class {
4927
+ constructor(options) {
4928
+ this.options = options;
4929
+ }
4930
+ [Symbol.asyncIterator]() {
4931
+ return this.asyncIterator();
4932
+ }
4933
+ async *asyncIterator() {
4934
+ for await (const bytes of this.options.inputStream) {
4935
+ const decoded = this.options.decoder.decode(bytes);
4936
+ yield decoded;
4937
+ }
4938
+ }
4939
+ };
4940
+
4941
+ // node_modules/@smithy/eventstream-codec/dist-es/MessageEncoderStream.js
4942
+ var MessageEncoderStream = class {
4943
+ constructor(options) {
4944
+ this.options = options;
4945
+ }
4946
+ [Symbol.asyncIterator]() {
4947
+ return this.asyncIterator();
4948
+ }
4949
+ async *asyncIterator() {
4950
+ for await (const msg of this.options.messageStream) {
4951
+ const encoded = this.options.encoder.encode(msg);
4952
+ yield encoded;
4953
+ }
4954
+ if (this.options.includeEndFrame) {
4955
+ yield new Uint8Array(0);
4956
+ }
4957
+ }
4958
+ };
4959
+
4960
+ // node_modules/@smithy/eventstream-codec/dist-es/SmithyMessageDecoderStream.js
4961
+ var SmithyMessageDecoderStream = class {
4962
+ constructor(options) {
4963
+ this.options = options;
4964
+ }
4965
+ [Symbol.asyncIterator]() {
4966
+ return this.asyncIterator();
4967
+ }
4968
+ async *asyncIterator() {
4969
+ for await (const message of this.options.messageStream) {
4970
+ const deserialized = await this.options.deserializer(message);
4971
+ if (deserialized === void 0)
4972
+ continue;
4973
+ yield deserialized;
4974
+ }
4975
+ }
4976
+ };
4977
+
4978
+ // node_modules/@smithy/eventstream-codec/dist-es/SmithyMessageEncoderStream.js
4979
+ var SmithyMessageEncoderStream = class {
4980
+ constructor(options) {
4981
+ this.options = options;
4982
+ }
4983
+ [Symbol.asyncIterator]() {
4984
+ return this.asyncIterator();
4985
+ }
4986
+ async *asyncIterator() {
4987
+ for await (const chunk of this.options.inputStream) {
4988
+ const payloadBuf = this.options.serializer(chunk);
4989
+ yield payloadBuf;
4990
+ }
4991
+ }
4992
+ };
4993
+
4994
+ // node_modules/@smithy/eventstream-serde-universal/dist-es/getChunkedStream.js
4995
+ function getChunkedStream(source) {
4996
+ let currentMessageTotalLength = 0;
4997
+ let currentMessagePendingLength = 0;
4998
+ let currentMessage = null;
4999
+ let messageLengthBuffer = null;
5000
+ const allocateMessage = (size) => {
5001
+ if (typeof size !== "number") {
5002
+ throw new Error("Attempted to allocate an event message where size was not a number: " + size);
5003
+ }
5004
+ currentMessageTotalLength = size;
5005
+ currentMessagePendingLength = 4;
5006
+ currentMessage = new Uint8Array(size);
5007
+ const currentMessageView = new DataView(currentMessage.buffer);
5008
+ currentMessageView.setUint32(0, size, false);
5009
+ };
5010
+ const iterator = async function* () {
5011
+ const sourceIterator = source[Symbol.asyncIterator]();
5012
+ while (true) {
5013
+ const { value, done } = await sourceIterator.next();
5014
+ if (done) {
5015
+ if (!currentMessageTotalLength) {
5016
+ return;
5017
+ } else if (currentMessageTotalLength === currentMessagePendingLength) {
5018
+ yield currentMessage;
5019
+ } else {
5020
+ throw new Error("Truncated event message received.");
5021
+ }
5022
+ return;
5023
+ }
5024
+ const chunkLength = value.length;
5025
+ let currentOffset = 0;
5026
+ while (currentOffset < chunkLength) {
5027
+ if (!currentMessage) {
5028
+ const bytesRemaining = chunkLength - currentOffset;
5029
+ if (!messageLengthBuffer) {
5030
+ messageLengthBuffer = new Uint8Array(4);
5031
+ }
5032
+ const numBytesForTotal = Math.min(4 - currentMessagePendingLength, bytesRemaining);
5033
+ messageLengthBuffer.set(value.slice(currentOffset, currentOffset + numBytesForTotal), currentMessagePendingLength);
5034
+ currentMessagePendingLength += numBytesForTotal;
5035
+ currentOffset += numBytesForTotal;
5036
+ if (currentMessagePendingLength < 4) {
5037
+ break;
5038
+ }
5039
+ allocateMessage(new DataView(messageLengthBuffer.buffer).getUint32(0, false));
5040
+ messageLengthBuffer = null;
5041
+ }
5042
+ const numBytesToWrite = Math.min(currentMessageTotalLength - currentMessagePendingLength, chunkLength - currentOffset);
5043
+ currentMessage.set(value.slice(currentOffset, currentOffset + numBytesToWrite), currentMessagePendingLength);
5044
+ currentMessagePendingLength += numBytesToWrite;
5045
+ currentOffset += numBytesToWrite;
5046
+ if (currentMessageTotalLength && currentMessageTotalLength === currentMessagePendingLength) {
5047
+ yield currentMessage;
5048
+ currentMessage = null;
5049
+ currentMessageTotalLength = 0;
5050
+ currentMessagePendingLength = 0;
5051
+ }
5052
+ }
5053
+ }
5054
+ };
5055
+ return {
5056
+ [Symbol.asyncIterator]: iterator
5057
+ };
5058
+ }
5059
+
5060
+ // node_modules/@smithy/eventstream-serde-universal/dist-es/getUnmarshalledStream.js
5061
+ function getMessageUnmarshaller(deserializer, toUtf82) {
5062
+ return async function(message) {
5063
+ const { value: messageType } = message.headers[":message-type"];
5064
+ if (messageType === "error") {
5065
+ const unmodeledError = new Error(message.headers[":error-message"].value || "UnknownError");
5066
+ unmodeledError.name = message.headers[":error-code"].value;
5067
+ throw unmodeledError;
5068
+ } else if (messageType === "exception") {
5069
+ const code = message.headers[":exception-type"].value;
5070
+ const exception = { [code]: message };
5071
+ const deserializedException = await deserializer(exception);
5072
+ if (deserializedException.$unknown) {
5073
+ const error = new Error(toUtf82(message.body));
5074
+ error.name = code;
5075
+ throw error;
5076
+ }
5077
+ throw deserializedException[code];
5078
+ } else if (messageType === "event") {
5079
+ const event = {
5080
+ [message.headers[":event-type"].value]: message
5081
+ };
5082
+ const deserialized = await deserializer(event);
5083
+ if (deserialized.$unknown)
5084
+ return;
5085
+ return deserialized;
5086
+ } else {
5087
+ throw Error(`Unrecognizable event type: ${message.headers[":event-type"].value}`);
5088
+ }
5089
+ };
5090
+ }
5091
+
5092
+ // node_modules/@smithy/eventstream-serde-universal/dist-es/EventStreamMarshaller.js
5093
+ var EventStreamMarshaller = class {
5094
+ constructor({ utf8Encoder, utf8Decoder }) {
5095
+ this.eventStreamCodec = new EventStreamCodec(utf8Encoder, utf8Decoder);
5096
+ this.utfEncoder = utf8Encoder;
5097
+ }
5098
+ deserialize(body, deserializer) {
5099
+ const inputStream = getChunkedStream(body);
5100
+ return new SmithyMessageDecoderStream({
5101
+ messageStream: new MessageDecoderStream({ inputStream, decoder: this.eventStreamCodec }),
5102
+ deserializer: getMessageUnmarshaller(deserializer, this.utfEncoder)
5103
+ });
5104
+ }
5105
+ serialize(inputStream, serializer) {
5106
+ return new MessageEncoderStream({
5107
+ messageStream: new SmithyMessageEncoderStream({ inputStream, serializer }),
5108
+ encoder: this.eventStreamCodec,
5109
+ includeEndFrame: true
5110
+ });
5111
+ }
5112
+ };
5113
+
5114
+ // node_modules/@smithy/eventstream-serde-node/dist-es/EventStreamMarshaller.js
5115
+ import { Readable } from "stream";
5116
+
5117
+ // node_modules/@smithy/eventstream-serde-node/dist-es/utils.js
5118
+ async function* readabletoIterable(readStream) {
5119
+ let streamEnded = false;
5120
+ let generationEnded = false;
5121
+ const records = new Array();
5122
+ readStream.on("error", (err) => {
5123
+ if (!streamEnded) {
5124
+ streamEnded = true;
5125
+ }
5126
+ if (err) {
5127
+ throw err;
5128
+ }
5129
+ });
5130
+ readStream.on("data", (data) => {
5131
+ records.push(data);
5132
+ });
5133
+ readStream.on("end", () => {
5134
+ streamEnded = true;
5135
+ });
5136
+ while (!generationEnded) {
5137
+ const value = await new Promise((resolve) => setTimeout(() => resolve(records.shift()), 0));
5138
+ if (value) {
5139
+ yield value;
5140
+ }
5141
+ generationEnded = streamEnded && records.length === 0;
5142
+ }
5143
+ }
5144
+
5145
+ // node_modules/@smithy/eventstream-serde-node/dist-es/EventStreamMarshaller.js
5146
+ var EventStreamMarshaller2 = class {
5147
+ constructor({ utf8Encoder, utf8Decoder }) {
5148
+ this.universalMarshaller = new EventStreamMarshaller({
5149
+ utf8Decoder,
5150
+ utf8Encoder
5151
+ });
5152
+ }
5153
+ deserialize(body, deserializer) {
5154
+ const bodyIterable = typeof body[Symbol.asyncIterator] === "function" ? body : readabletoIterable(body);
5155
+ return this.universalMarshaller.deserialize(bodyIterable, deserializer);
5156
+ }
5157
+ serialize(input, serializer) {
5158
+ return Readable.from(this.universalMarshaller.serialize(input, serializer));
5159
+ }
5160
+ };
5161
+
5162
+ // node_modules/@smithy/eventstream-serde-node/dist-es/provider.js
5163
+ var eventStreamSerdeProvider = (options) => new EventStreamMarshaller2(options);
5164
+
5165
+ // node_modules/@smithy/hash-stream-node/dist-es/HashCalculator.js
5166
+ import { Writable } from "stream";
5167
+ var HashCalculator = class extends Writable {
5168
+ constructor(hash, options) {
5169
+ super(options);
5170
+ this.hash = hash;
5171
+ }
5172
+ _write(chunk, encoding, callback) {
5173
+ try {
5174
+ this.hash.update(toUint8Array(chunk));
5175
+ } catch (err) {
5176
+ return callback(err);
5177
+ }
5178
+ callback();
5179
+ }
5180
+ };
5181
+
5182
+ // node_modules/@smithy/hash-stream-node/dist-es/readableStreamHasher.js
5183
+ var readableStreamHasher = (hashCtor, readableStream) => {
5184
+ if (readableStream.readableFlowing !== null) {
5185
+ throw new Error("Unable to calculate hash for flowing readable stream");
5186
+ }
5187
+ const hash = new hashCtor();
5188
+ const hashCalculator = new HashCalculator(hash);
5189
+ readableStream.pipe(hashCalculator);
5190
+ return new Promise((resolve, reject) => {
5191
+ readableStream.on("error", (err) => {
5192
+ hashCalculator.end();
5193
+ reject(err);
5194
+ });
5195
+ hashCalculator.on("error", reject);
5196
+ hashCalculator.on("finish", () => {
5197
+ hash.digest().then(resolve).catch(reject);
5198
+ });
5199
+ });
5200
+ };
5201
+
5202
+ // node_modules/@aws-sdk/client-s3/dist-es/runtimeConfig.shared.js
5203
+ var getRuntimeConfig = (config) => {
5204
+ return {
5205
+ apiVersion: "2006-03-01",
5206
+ base64Decoder: config?.base64Decoder ?? fromBase64,
5207
+ base64Encoder: config?.base64Encoder ?? toBase64,
5208
+ disableHostPrefix: config?.disableHostPrefix ?? false,
5209
+ endpointProvider: config?.endpointProvider ?? defaultEndpointResolver,
5210
+ extensions: config?.extensions ?? [],
5211
+ getAwsChunkedEncodingStream: config?.getAwsChunkedEncodingStream ?? getAwsChunkedEncodingStream,
5212
+ httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? defaultS3HttpAuthSchemeProvider,
5213
+ httpAuthSchemes: config?.httpAuthSchemes ?? [
5214
+ {
5215
+ schemeId: "aws.auth#sigv4",
5216
+ identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
5217
+ signer: new AwsSdkSigV4Signer()
5218
+ },
5219
+ {
5220
+ schemeId: "aws.auth#sigv4a",
5221
+ identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4a"),
5222
+ signer: new AwsSdkSigV4ASigner()
5223
+ }
5224
+ ],
5225
+ logger: config?.logger ?? new NoOpLogger(),
5226
+ sdkStreamMixin: config?.sdkStreamMixin ?? sdkStreamMixin,
5227
+ serviceId: config?.serviceId ?? "S3",
5228
+ signerConstructor: config?.signerConstructor ?? SignatureV4MultiRegion,
5229
+ signingEscapePath: config?.signingEscapePath ?? false,
5230
+ urlParser: config?.urlParser ?? parseUrl,
5231
+ useArnRegion: config?.useArnRegion ?? void 0,
5232
+ utf8Decoder: config?.utf8Decoder ?? fromUtf8,
5233
+ utf8Encoder: config?.utf8Encoder ?? toUtf8
5234
+ };
5235
+ };
5236
+
5237
+ // node_modules/@aws-sdk/client-s3/dist-es/runtimeConfig.js
5238
+ var getRuntimeConfig2 = (config) => {
5239
+ emitWarningIfUnsupportedVersion2(process.version);
5240
+ const defaultsMode = resolveDefaultsModeConfig(config);
5241
+ const defaultConfigProvider = () => defaultsMode().then(loadConfigsForDefaultMode);
5242
+ const clientSharedValues = getRuntimeConfig(config);
5243
+ emitWarningIfUnsupportedVersion(process.version);
5244
+ const loaderConfig = {
5245
+ profile: config?.profile,
5246
+ logger: clientSharedValues.logger
5247
+ };
5248
+ return {
5249
+ ...clientSharedValues,
5250
+ ...config,
5251
+ runtime: "node",
5252
+ defaultsMode,
5253
+ authSchemePreference: config?.authSchemePreference ?? loadConfig(NODE_AUTH_SCHEME_PREFERENCE_OPTIONS, loaderConfig),
5254
+ bodyLengthChecker: config?.bodyLengthChecker ?? calculateBodyLength,
5255
+ credentialDefaultProvider: config?.credentialDefaultProvider ?? defaultProvider,
5256
+ defaultUserAgentProvider: config?.defaultUserAgentProvider ?? createDefaultUserAgentProvider({ serviceId: clientSharedValues.serviceId, clientVersion: package_default.version }),
5257
+ disableS3ExpressSessionAuth: config?.disableS3ExpressSessionAuth ?? loadConfig(NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS, loaderConfig),
5258
+ eventStreamSerdeProvider: config?.eventStreamSerdeProvider ?? eventStreamSerdeProvider,
5259
+ maxAttempts: config?.maxAttempts ?? loadConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS, config),
5260
+ md5: config?.md5 ?? Hash.bind(null, "md5"),
5261
+ region: config?.region ?? loadConfig(NODE_REGION_CONFIG_OPTIONS, { ...NODE_REGION_CONFIG_FILE_OPTIONS, ...loaderConfig }),
5262
+ requestChecksumCalculation: config?.requestChecksumCalculation ?? loadConfig(NODE_REQUEST_CHECKSUM_CALCULATION_CONFIG_OPTIONS, loaderConfig),
5263
+ requestHandler: NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
5264
+ responseChecksumValidation: config?.responseChecksumValidation ?? loadConfig(NODE_RESPONSE_CHECKSUM_VALIDATION_CONFIG_OPTIONS, loaderConfig),
5265
+ retryMode: config?.retryMode ?? loadConfig({
5266
+ ...NODE_RETRY_MODE_CONFIG_OPTIONS,
5267
+ default: async () => (await defaultConfigProvider()).retryMode || DEFAULT_RETRY_MODE
5268
+ }, config),
5269
+ sha1: config?.sha1 ?? Hash.bind(null, "sha1"),
5270
+ sha256: config?.sha256 ?? Hash.bind(null, "sha256"),
5271
+ sigv4aSigningRegionSet: config?.sigv4aSigningRegionSet ?? loadConfig(NODE_SIGV4A_CONFIG_OPTIONS, loaderConfig),
5272
+ streamCollector: config?.streamCollector ?? streamCollector,
5273
+ streamHasher: config?.streamHasher ?? readableStreamHasher,
5274
+ useArnRegion: config?.useArnRegion ?? loadConfig(NODE_USE_ARN_REGION_CONFIG_OPTIONS, loaderConfig),
5275
+ useDualstackEndpoint: config?.useDualstackEndpoint ?? loadConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, loaderConfig),
5276
+ useFipsEndpoint: config?.useFipsEndpoint ?? loadConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, loaderConfig),
5277
+ userAgentAppId: config?.userAgentAppId ?? loadConfig(NODE_APP_ID_CONFIG_OPTIONS, loaderConfig)
5278
+ };
5279
+ };
5280
+
5281
+ // node_modules/@aws-sdk/client-s3/dist-es/auth/httpAuthExtensionConfiguration.js
5282
+ var getHttpAuthExtensionConfiguration = (runtimeConfig) => {
5283
+ const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
5284
+ let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
5285
+ let _credentials = runtimeConfig.credentials;
5286
+ return {
5287
+ setHttpAuthScheme(httpAuthScheme) {
5288
+ const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
5289
+ if (index === -1) {
5290
+ _httpAuthSchemes.push(httpAuthScheme);
5291
+ } else {
5292
+ _httpAuthSchemes.splice(index, 1, httpAuthScheme);
5293
+ }
5294
+ },
5295
+ httpAuthSchemes() {
5296
+ return _httpAuthSchemes;
5297
+ },
5298
+ setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
5299
+ _httpAuthSchemeProvider = httpAuthSchemeProvider;
5300
+ },
5301
+ httpAuthSchemeProvider() {
5302
+ return _httpAuthSchemeProvider;
5303
+ },
5304
+ setCredentials(credentials) {
5305
+ _credentials = credentials;
5306
+ },
5307
+ credentials() {
5308
+ return _credentials;
5309
+ }
5310
+ };
5311
+ };
5312
+ var resolveHttpAuthRuntimeConfig = (config) => {
5313
+ return {
5314
+ httpAuthSchemes: config.httpAuthSchemes(),
5315
+ httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
5316
+ credentials: config.credentials()
5317
+ };
5318
+ };
5319
+
5320
+ // node_modules/@aws-sdk/client-s3/dist-es/runtimeExtensions.js
5321
+ var resolveRuntimeExtensions = (runtimeConfig, extensions) => {
5322
+ const extensionConfiguration = Object.assign(getAwsRegionExtensionConfiguration(runtimeConfig), getDefaultExtensionConfiguration(runtimeConfig), getHttpHandlerExtensionConfiguration(runtimeConfig), getHttpAuthExtensionConfiguration(runtimeConfig));
5323
+ extensions.forEach((extension) => extension.configure(extensionConfiguration));
5324
+ return Object.assign(runtimeConfig, resolveAwsRegionExtensionConfiguration(extensionConfiguration), resolveDefaultRuntimeConfig(extensionConfiguration), resolveHttpHandlerRuntimeConfig(extensionConfiguration), resolveHttpAuthRuntimeConfig(extensionConfiguration));
5325
+ };
5326
+
5327
+ // node_modules/@aws-sdk/client-s3/dist-es/S3Client.js
5328
+ var S3Client = class extends Client {
5329
+ config;
5330
+ constructor(...[configuration]) {
5331
+ const _config_0 = getRuntimeConfig2(configuration || {});
5332
+ super(_config_0);
5333
+ this.initConfig = _config_0;
5334
+ const _config_1 = resolveClientEndpointParameters(_config_0);
5335
+ const _config_2 = resolveUserAgentConfig(_config_1);
5336
+ const _config_3 = resolveFlexibleChecksumsConfig(_config_2);
5337
+ const _config_4 = resolveRetryConfig(_config_3);
5338
+ const _config_5 = resolveRegionConfig(_config_4);
5339
+ const _config_6 = resolveHostHeaderConfig(_config_5);
5340
+ const _config_7 = resolveEndpointConfig(_config_6);
5341
+ const _config_8 = resolveEventStreamSerdeConfig(_config_7);
5342
+ const _config_9 = resolveHttpAuthSchemeConfig(_config_8);
5343
+ const _config_10 = resolveS3Config(_config_9, { session: [() => this, CreateSessionCommand] });
5344
+ const _config_11 = resolveRuntimeExtensions(_config_10, configuration?.extensions || []);
5345
+ this.config = _config_11;
5346
+ this.middlewareStack.use(getUserAgentPlugin(this.config));
5347
+ this.middlewareStack.use(getRetryPlugin(this.config));
5348
+ this.middlewareStack.use(getContentLengthPlugin(this.config));
5349
+ this.middlewareStack.use(getHostHeaderPlugin(this.config));
5350
+ this.middlewareStack.use(getLoggerPlugin(this.config));
5351
+ this.middlewareStack.use(getRecursionDetectionPlugin(this.config));
5352
+ this.middlewareStack.use(getHttpAuthSchemeEndpointRuleSetPlugin(this.config, {
5353
+ httpAuthSchemeParametersProvider: defaultS3HttpAuthSchemeParametersProvider,
5354
+ identityProviderConfigProvider: async (config) => new DefaultIdentityProviderConfig({
5355
+ "aws.auth#sigv4": config.credentials,
5356
+ "aws.auth#sigv4a": config.credentials
5357
+ })
5358
+ }));
5359
+ this.middlewareStack.use(getHttpSigningPlugin(this.config));
5360
+ this.middlewareStack.use(getValidateBucketNamePlugin(this.config));
5361
+ this.middlewareStack.use(getAddExpectContinuePlugin(this.config));
5362
+ this.middlewareStack.use(getRegionRedirectMiddlewarePlugin(this.config));
5363
+ this.middlewareStack.use(getS3ExpressPlugin(this.config));
5364
+ this.middlewareStack.use(getS3ExpressHttpSigningPlugin(this.config));
5365
+ }
5366
+ destroy() {
5367
+ super.destroy();
5368
+ }
5369
+ };
5370
+
5371
+ // node_modules/@aws-sdk/middleware-ssec/dist-es/index.js
5372
+ function ssecMiddleware(options) {
5373
+ return (next) => async (args) => {
5374
+ const input = { ...args.input };
5375
+ const properties = [
5376
+ {
5377
+ target: "SSECustomerKey",
5378
+ hash: "SSECustomerKeyMD5"
5379
+ },
5380
+ {
5381
+ target: "CopySourceSSECustomerKey",
5382
+ hash: "CopySourceSSECustomerKeyMD5"
5383
+ }
5384
+ ];
5385
+ for (const prop of properties) {
5386
+ const value = input[prop.target];
5387
+ if (value) {
5388
+ let valueForHash;
5389
+ if (typeof value === "string") {
5390
+ if (isValidBase64EncodedSSECustomerKey(value, options)) {
5391
+ valueForHash = options.base64Decoder(value);
5392
+ } else {
5393
+ valueForHash = options.utf8Decoder(value);
5394
+ input[prop.target] = options.base64Encoder(valueForHash);
5395
+ }
5396
+ } else {
5397
+ valueForHash = ArrayBuffer.isView(value) ? new Uint8Array(value.buffer, value.byteOffset, value.byteLength) : new Uint8Array(value);
5398
+ input[prop.target] = options.base64Encoder(valueForHash);
5399
+ }
5400
+ const hash = new options.md5();
5401
+ hash.update(valueForHash);
5402
+ input[prop.hash] = options.base64Encoder(await hash.digest());
5403
+ }
5404
+ }
5405
+ return next({
5406
+ ...args,
5407
+ input
5408
+ });
5409
+ };
5410
+ }
5411
+ var ssecMiddlewareOptions = {
5412
+ name: "ssecMiddleware",
5413
+ step: "initialize",
5414
+ tags: ["SSE"],
5415
+ override: true
5416
+ };
5417
+ var getSsecPlugin = (config) => ({
5418
+ applyToStack: (clientStack) => {
5419
+ clientStack.add(ssecMiddleware(config), ssecMiddlewareOptions);
5420
+ }
5421
+ });
5422
+ function isValidBase64EncodedSSECustomerKey(str, options) {
5423
+ const base64Regex = /^(?:[A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/;
5424
+ if (!base64Regex.test(str))
5425
+ return false;
5426
+ try {
5427
+ const decodedBytes = options.base64Decoder(str);
5428
+ return decodedBytes.length === 32;
5429
+ } catch {
5430
+ return false;
5431
+ }
5432
+ }
5433
+
5434
+ // node_modules/@aws-sdk/client-s3/dist-es/commands/PutObjectCommand.js
5435
+ var PutObjectCommand = class extends Command.classBuilder().ep({
5436
+ ...commonParams,
5437
+ Bucket: { type: "contextParams", name: "Bucket" },
5438
+ Key: { type: "contextParams", name: "Key" }
5439
+ }).m(function(Command2, cs2, config, o2) {
5440
+ return [
5441
+ getSerdePlugin(config, this.serialize, this.deserialize),
5442
+ getEndpointPlugin(config, Command2.getEndpointParameterInstructions()),
5443
+ getFlexibleChecksumsPlugin(config, {
5444
+ requestAlgorithmMember: { httpHeader: "x-amz-sdk-checksum-algorithm", name: "ChecksumAlgorithm" },
5445
+ requestChecksumRequired: false
5446
+ }),
5447
+ getCheckContentLengthHeaderPlugin(config),
5448
+ getThrow200ExceptionsPlugin(config),
5449
+ getSsecPlugin(config)
5450
+ ];
5451
+ }).s("AmazonS3", "PutObject", {}).n("S3Client", "PutObjectCommand").f(PutObjectRequestFilterSensitiveLog, PutObjectOutputFilterSensitiveLog).ser(se_PutObjectCommand).de(de_PutObjectCommand).build() {
5452
+ };
5453
+
5454
+ // src/integrations.ts
5455
+ import { SendMessageCommand, SQSClient } from "@aws-sdk/client-sqs";
5456
+ var collectionTypes = ["readings", "consumptions", "invoices"];
5457
+ var errorCodes = [
5458
+ "ACCOUNT_NOT_FOUND",
5459
+ "INVALID_DATE_FORMAT",
5460
+ "INVALID_TIME_FORMAT",
5461
+ "COLUMN_LIMIT_EXCEEDED",
5462
+ "INVALID_TIMESTAMP",
5463
+ "MISSING_DEVICE_ID",
5464
+ "UNSUPPORTED_UTILITY_TYPE",
5465
+ "VALIDATION_ERROR",
5466
+ "METER_READS_ZERO"
5467
+ ];
5468
+ async function sendToDLQ({ payload, sqsClient }) {
5469
+ if (!process.env.DEAD_LETTER_QUEUE_URL) {
5470
+ throw new Error("QueueUrl is required to send to DLQ");
5471
+ }
5472
+ if (!payload || !payload.account) {
5473
+ throw new Error("Payload and account information are required");
5474
+ }
5475
+ const { automation, account, context, error } = payload;
5476
+ if (!context || !context.processingStage) {
5477
+ throw new Error("Context with processingStage is required");
5478
+ }
5479
+ if (!account || !account._id) {
5480
+ throw new Error("Account information with _id is required");
5481
+ }
5482
+ if (!error || !error.message || !error.timestamp) {
5483
+ throw new Error("Error information with message and timestamp is required");
5484
+ }
5485
+ if (!automation || !automation._id) {
5486
+ throw new Error("Automation information with _id is required");
5487
+ }
5488
+ if (!sqsClient) {
5489
+ sqsClient = new SQSClient({ region: "eu-west-1" });
5490
+ }
5491
+ await sqsClient.send(
5492
+ new SendMessageCommand({
5493
+ QueueUrl: process.env.DEAD_LETTER_QUEUE_URL,
5494
+ MessageBody: JSON.stringify(payload),
5495
+ MessageAttributes: {
5496
+ service: {
5497
+ DataType: "String",
5498
+ StringValue: automation.service
5499
+ },
5500
+ accountId: {
5501
+ DataType: "String",
5502
+ StringValue: account._id || "unknown"
5503
+ },
5504
+ category: {
5505
+ DataType: "String",
5506
+ StringValue: automation.category || "unknown"
5507
+ },
5508
+ automationId: {
5509
+ DataType: "String",
5510
+ StringValue: automation._id || "unknown"
5511
+ },
5512
+ processingStage: {
5513
+ DataType: "String",
5514
+ StringValue: context.processingStage
5515
+ },
5516
+ timestamp: {
5517
+ DataType: "String",
5518
+ StringValue: error.timestamp
5519
+ },
5520
+ lambdaFunctionName: {
5521
+ DataType: "String",
5522
+ StringValue: process.env.AWS_LAMBDA_FUNCTION_NAME || "unknown"
5523
+ }
5524
+ }
5525
+ })
5526
+ );
5527
+ }
5528
+ function createCsv(data) {
5529
+ function flattenObject(obj, prefix = "") {
5530
+ const flattened = {};
5531
+ Object.entries(obj).forEach(([key, value]) => {
5532
+ const newKey = prefix ? `${prefix}.${key}` : key;
5533
+ if (value !== null && typeof value === "object" && !Array.isArray(value) && !(value instanceof Date)) {
5534
+ Object.assign(flattened, flattenObject(value, newKey));
5535
+ } else {
5536
+ flattened[newKey] = value;
5537
+ }
5538
+ });
5539
+ return flattened;
5540
+ }
5541
+ const flattenedData = data.map((item) => flattenObject(item));
5542
+ const allHeaders = /* @__PURE__ */ new Set();
5543
+ flattenedData.forEach((item) => {
5544
+ Object.keys(item).forEach((key) => allHeaders.add(key));
5545
+ });
5546
+ const keyHeaders = Array.from(allHeaders).map((header) => header);
5547
+ const records = data.map((item, index) => {
5548
+ const record = {};
5549
+ keyHeaders.forEach((header) => {
5550
+ if (!header.includes(".")) {
5551
+ let itemValue = item[header];
5552
+ if (typeof itemValue === "number") {
5553
+ itemValue = itemValue === 0 ? "0" : itemValue;
5554
+ } else {
5555
+ itemValue = itemValue?.toString() || "";
5556
+ }
5557
+ if (typeof itemValue === "number" && Number.isNaN(itemValue)) {
5558
+ itemValue = "";
5559
+ }
5560
+ record[header] = itemValue;
5561
+ } else {
5562
+ const [first, second] = header.split(".");
5563
+ const nestedValue = item[first]?.[second] || "";
5564
+ record[header] = nestedValue?.toString() || "";
5565
+ }
5566
+ });
5567
+ return record;
5568
+ });
5569
+ return stringify(records, {
5570
+ header: true,
5571
+ columns: keyHeaders
5572
+ });
5573
+ }
5574
+ async function uploadCsv({ csvContent, automationRun, s3Client, orgFilename, collectionType }) {
5575
+ if (!process.env.IMPORT_READY_BUCKET) {
5576
+ throw new Error("IMPORT_READY_BUCKET environment variable is not set");
5577
+ }
5578
+ const { _id: autoRunId, companyId, automationId } = automationRun;
5579
+ const timestamp = (/* @__PURE__ */ new Date()).toISOString();
5580
+ const key = `${autoRunId}.csv`;
5581
+ const command = new PutObjectCommand({
5582
+ Bucket: process.env.IMPORT_READY_BUCKET,
5583
+ Key: key,
5584
+ Body: Buffer.from(csvContent),
5585
+ ContentType: "text/csv",
5586
+ ContentDisposition: `attachment; filename="${key}"`,
5587
+ Metadata: {
5588
+ companyId,
5589
+ collectionType,
5590
+ automationId,
5591
+ processedAt: timestamp,
5592
+ autoRunId,
5593
+ originalFilename: orgFilename || ""
5594
+ }
5595
+ });
5596
+ if (!s3Client) {
5597
+ s3Client = new S3Client({ region: "eu-west-1" });
5598
+ }
5599
+ try {
5600
+ await s3Client.send(command);
5601
+ console.info(`Successfully uploaded CSV to ${key}`);
5602
+ return key;
5603
+ } catch (error) {
5604
+ throw new Error("Failed to upload CSV to S3");
5605
+ }
1388
5606
  }
1389
5607
 
1390
5608
  // src/types/index.ts