@cdk8s/awscdk-resolver 0.0.75 → 0.0.77

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 (121) hide show
  1. package/.jsii +3 -3
  2. package/lib/resolve.js +1 -1
  3. package/node_modules/@aws-sdk/client-cloudformation/dist-cjs/index.js +14 -0
  4. package/node_modules/@aws-sdk/client-cloudformation/dist-es/models/models_0.js +8 -0
  5. package/node_modules/@aws-sdk/client-cloudformation/dist-es/protocols/Aws_query.js +4 -0
  6. package/node_modules/@aws-sdk/client-cloudformation/dist-types/commands/ActivateTypeCommand.d.ts +1 -1
  7. package/node_modules/@aws-sdk/client-cloudformation/dist-types/commands/BatchDescribeTypeConfigurationsCommand.d.ts +1 -1
  8. package/node_modules/@aws-sdk/client-cloudformation/dist-types/commands/DescribeChangeSetCommand.d.ts +1 -0
  9. package/node_modules/@aws-sdk/client-cloudformation/dist-types/commands/RegisterTypeCommand.d.ts +1 -1
  10. package/node_modules/@aws-sdk/client-cloudformation/dist-types/commands/SetTypeConfigurationCommand.d.ts +1 -1
  11. package/node_modules/@aws-sdk/client-cloudformation/dist-types/commands/SetTypeDefaultVersionCommand.d.ts +1 -2
  12. package/node_modules/@aws-sdk/client-cloudformation/dist-types/models/models_0.d.ts +49 -31
  13. package/node_modules/@aws-sdk/client-cloudformation/dist-types/models/models_1.d.ts +30 -1
  14. package/node_modules/@aws-sdk/client-cloudformation/dist-types/ts3.4/commands/SetTypeDefaultVersionCommand.d.ts +4 -2
  15. package/node_modules/@aws-sdk/client-cloudformation/dist-types/ts3.4/models/models_0.d.ts +10 -6
  16. package/node_modules/@aws-sdk/client-cloudformation/dist-types/ts3.4/models/models_1.d.ts +7 -0
  17. package/node_modules/@aws-sdk/client-cloudformation/package.json +6 -6
  18. package/node_modules/@aws-sdk/client-sso/package.json +4 -4
  19. package/node_modules/@aws-sdk/client-sso-oidc/package.json +6 -6
  20. package/node_modules/@aws-sdk/client-sts/package.json +5 -5
  21. package/node_modules/@aws-sdk/core/CHANGELOG.md +8 -0
  22. package/node_modules/@aws-sdk/core/package.json +2 -2
  23. package/node_modules/@aws-sdk/credential-provider-ini/package.json +4 -4
  24. package/node_modules/@aws-sdk/credential-provider-node/package.json +4 -4
  25. package/node_modules/@aws-sdk/credential-provider-sso/package.json +3 -3
  26. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +2 -2
  27. package/node_modules/@aws-sdk/token-providers/package.json +2 -2
  28. package/node_modules/@smithy/core/package.json +4 -4
  29. package/node_modules/@smithy/middleware-endpoint/dist-cjs/index.js +3 -3
  30. package/node_modules/@smithy/middleware-endpoint/dist-es/service-customizations/s3.js +3 -3
  31. package/node_modules/@smithy/middleware-endpoint/package.json +1 -1
  32. package/node_modules/@smithy/middleware-retry/package.json +2 -2
  33. package/node_modules/@smithy/signature-v4/dist-cjs/index.js +128 -7
  34. package/node_modules/@smithy/signature-v4/dist-es/HeaderFormatter.js +125 -0
  35. package/node_modules/@smithy/signature-v4/dist-es/SignatureV4.js +4 -4
  36. package/node_modules/@smithy/signature-v4/dist-types/HeaderFormatter.d.ts +24 -0
  37. package/node_modules/@smithy/signature-v4/dist-types/SignatureV4.d.ts +1 -1
  38. package/node_modules/@smithy/signature-v4/dist-types/ts3.4/HeaderFormatter.d.ts +24 -0
  39. package/node_modules/@smithy/signature-v4/dist-types/ts3.4/SignatureV4.d.ts +1 -1
  40. package/node_modules/@smithy/signature-v4/package.json +1 -2
  41. package/node_modules/@smithy/smithy-client/package.json +2 -2
  42. package/node_modules/@smithy/util-defaults-mode-browser/package.json +2 -2
  43. package/node_modules/@smithy/util-defaults-mode-node/package.json +2 -2
  44. package/package.json +6 -6
  45. package/node_modules/@aws-crypto/crc32/CHANGELOG.md +0 -76
  46. package/node_modules/@aws-crypto/crc32/LICENSE +0 -201
  47. package/node_modules/@aws-crypto/crc32/README.md +0 -16
  48. package/node_modules/@aws-crypto/crc32/build/aws_crc32.d.ts +0 -7
  49. package/node_modules/@aws-crypto/crc32/build/aws_crc32.js +0 -31
  50. package/node_modules/@aws-crypto/crc32/build/aws_crc32.js.map +0 -1
  51. package/node_modules/@aws-crypto/crc32/build/index.d.ts +0 -7
  52. package/node_modules/@aws-crypto/crc32/build/index.js +0 -108
  53. package/node_modules/@aws-crypto/crc32/build/index.js.map +0 -1
  54. package/node_modules/@aws-crypto/crc32/node_modules/tslib/CopyrightNotice.txt +0 -15
  55. package/node_modules/@aws-crypto/crc32/node_modules/tslib/LICENSE.txt +0 -12
  56. package/node_modules/@aws-crypto/crc32/node_modules/tslib/README.md +0 -142
  57. package/node_modules/@aws-crypto/crc32/node_modules/tslib/modules/index.js +0 -51
  58. package/node_modules/@aws-crypto/crc32/node_modules/tslib/modules/package.json +0 -3
  59. package/node_modules/@aws-crypto/crc32/node_modules/tslib/package.json +0 -37
  60. package/node_modules/@aws-crypto/crc32/node_modules/tslib/test/validateModuleExportsMatchCommonJS/index.js +0 -23
  61. package/node_modules/@aws-crypto/crc32/node_modules/tslib/test/validateModuleExportsMatchCommonJS/package.json +0 -6
  62. package/node_modules/@aws-crypto/crc32/node_modules/tslib/tslib.d.ts +0 -37
  63. package/node_modules/@aws-crypto/crc32/node_modules/tslib/tslib.es6.html +0 -1
  64. package/node_modules/@aws-crypto/crc32/node_modules/tslib/tslib.es6.js +0 -218
  65. package/node_modules/@aws-crypto/crc32/node_modules/tslib/tslib.html +0 -1
  66. package/node_modules/@aws-crypto/crc32/node_modules/tslib/tslib.js +0 -284
  67. package/node_modules/@aws-crypto/crc32/package.json +0 -28
  68. package/node_modules/@aws-crypto/crc32/src/aws_crc32.ts +0 -24
  69. package/node_modules/@aws-crypto/crc32/src/index.ts +0 -92
  70. package/node_modules/@aws-crypto/crc32/tsconfig.json +0 -23
  71. package/node_modules/@smithy/eventstream-codec/LICENSE +0 -201
  72. package/node_modules/@smithy/eventstream-codec/README.md +0 -4
  73. package/node_modules/@smithy/eventstream-codec/dist-cjs/HeaderMarshaller.js +0 -1
  74. package/node_modules/@smithy/eventstream-codec/dist-cjs/Int64.js +0 -1
  75. package/node_modules/@smithy/eventstream-codec/dist-cjs/Message.js +0 -1
  76. package/node_modules/@smithy/eventstream-codec/dist-cjs/MessageDecoderStream.js +0 -1
  77. package/node_modules/@smithy/eventstream-codec/dist-cjs/MessageEncoderStream.js +0 -1
  78. package/node_modules/@smithy/eventstream-codec/dist-cjs/SmithyMessageDecoderStream.js +0 -1
  79. package/node_modules/@smithy/eventstream-codec/dist-cjs/SmithyMessageEncoderStream.js +0 -1
  80. package/node_modules/@smithy/eventstream-codec/dist-cjs/TestVectors.fixture.js +0 -1
  81. package/node_modules/@smithy/eventstream-codec/dist-cjs/index.js +0 -468
  82. package/node_modules/@smithy/eventstream-codec/dist-cjs/splitMessage.js +0 -1
  83. package/node_modules/@smithy/eventstream-codec/dist-cjs/vectorTypes.fixture.js +0 -1
  84. package/node_modules/@smithy/eventstream-codec/dist-es/EventStreamCodec.js +0 -62
  85. package/node_modules/@smithy/eventstream-codec/dist-es/HeaderMarshaller.js +0 -182
  86. package/node_modules/@smithy/eventstream-codec/dist-es/Int64.js +0 -43
  87. package/node_modules/@smithy/eventstream-codec/dist-es/Message.js +0 -1
  88. package/node_modules/@smithy/eventstream-codec/dist-es/MessageDecoderStream.js +0 -14
  89. package/node_modules/@smithy/eventstream-codec/dist-es/MessageEncoderStream.js +0 -17
  90. package/node_modules/@smithy/eventstream-codec/dist-es/SmithyMessageDecoderStream.js +0 -16
  91. package/node_modules/@smithy/eventstream-codec/dist-es/SmithyMessageEncoderStream.js +0 -14
  92. package/node_modules/@smithy/eventstream-codec/dist-es/TestVectors.fixture.js +0 -690
  93. package/node_modules/@smithy/eventstream-codec/dist-es/index.js +0 -8
  94. package/node_modules/@smithy/eventstream-codec/dist-es/splitMessage.js +0 -30
  95. package/node_modules/@smithy/eventstream-codec/dist-es/vectorTypes.fixture.js +0 -1
  96. package/node_modules/@smithy/eventstream-codec/dist-types/EventStreamCodec.d.ts +0 -31
  97. package/node_modules/@smithy/eventstream-codec/dist-types/HeaderMarshaller.d.ts +0 -12
  98. package/node_modules/@smithy/eventstream-codec/dist-types/Int64.d.ts +0 -20
  99. package/node_modules/@smithy/eventstream-codec/dist-types/Message.d.ts +0 -26
  100. package/node_modules/@smithy/eventstream-codec/dist-types/MessageDecoderStream.d.ts +0 -17
  101. package/node_modules/@smithy/eventstream-codec/dist-types/MessageEncoderStream.d.ts +0 -18
  102. package/node_modules/@smithy/eventstream-codec/dist-types/SmithyMessageDecoderStream.d.ts +0 -17
  103. package/node_modules/@smithy/eventstream-codec/dist-types/SmithyMessageEncoderStream.d.ts +0 -17
  104. package/node_modules/@smithy/eventstream-codec/dist-types/TestVectors.fixture.d.ts +0 -2
  105. package/node_modules/@smithy/eventstream-codec/dist-types/index.d.ts +0 -8
  106. package/node_modules/@smithy/eventstream-codec/dist-types/splitMessage.d.ts +0 -11
  107. package/node_modules/@smithy/eventstream-codec/dist-types/ts3.4/EventStreamCodec.d.ts +0 -31
  108. package/node_modules/@smithy/eventstream-codec/dist-types/ts3.4/HeaderMarshaller.d.ts +0 -12
  109. package/node_modules/@smithy/eventstream-codec/dist-types/ts3.4/Int64.d.ts +0 -20
  110. package/node_modules/@smithy/eventstream-codec/dist-types/ts3.4/Message.d.ts +0 -26
  111. package/node_modules/@smithy/eventstream-codec/dist-types/ts3.4/MessageDecoderStream.d.ts +0 -17
  112. package/node_modules/@smithy/eventstream-codec/dist-types/ts3.4/MessageEncoderStream.d.ts +0 -18
  113. package/node_modules/@smithy/eventstream-codec/dist-types/ts3.4/SmithyMessageDecoderStream.d.ts +0 -17
  114. package/node_modules/@smithy/eventstream-codec/dist-types/ts3.4/SmithyMessageEncoderStream.d.ts +0 -17
  115. package/node_modules/@smithy/eventstream-codec/dist-types/ts3.4/TestVectors.fixture.d.ts +0 -2
  116. package/node_modules/@smithy/eventstream-codec/dist-types/ts3.4/index.d.ts +0 -8
  117. package/node_modules/@smithy/eventstream-codec/dist-types/ts3.4/splitMessage.d.ts +0 -11
  118. package/node_modules/@smithy/eventstream-codec/dist-types/ts3.4/vectorTypes.fixture.d.ts +0 -12
  119. package/node_modules/@smithy/eventstream-codec/dist-types/vectorTypes.fixture.d.ts +0 -12
  120. package/node_modules/@smithy/eventstream-codec/package.json +0 -61
  121. /package/node_modules/@smithy/{eventstream-codec/dist-cjs/EventStreamCodec.js → signature-v4/dist-cjs/HeaderFormatter.js} +0 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-node",
3
- "version": "3.540.0",
3
+ "version": "3.549.0",
4
4
  "description": "AWS credential provider that sources credentials from a Node.JS environment. ",
5
5
  "engines": {
6
6
  "node": ">=14.0.0"
@@ -30,10 +30,10 @@
30
30
  "dependencies": {
31
31
  "@aws-sdk/credential-provider-env": "3.535.0",
32
32
  "@aws-sdk/credential-provider-http": "3.535.0",
33
- "@aws-sdk/credential-provider-ini": "3.540.0",
33
+ "@aws-sdk/credential-provider-ini": "3.549.0",
34
34
  "@aws-sdk/credential-provider-process": "3.535.0",
35
- "@aws-sdk/credential-provider-sso": "3.540.0",
36
- "@aws-sdk/credential-provider-web-identity": "3.540.0",
35
+ "@aws-sdk/credential-provider-sso": "3.549.0",
36
+ "@aws-sdk/credential-provider-web-identity": "3.549.0",
37
37
  "@aws-sdk/types": "3.535.0",
38
38
  "@smithy/credential-provider-imds": "^2.3.0",
39
39
  "@smithy/property-provider": "^2.2.0",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-sso",
3
- "version": "3.540.0",
3
+ "version": "3.549.0",
4
4
  "description": "AWS credential provider that exchanges a resolved SSO login token file for temporary AWS credentials",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -24,8 +24,8 @@
24
24
  },
25
25
  "license": "Apache-2.0",
26
26
  "dependencies": {
27
- "@aws-sdk/client-sso": "3.540.0",
28
- "@aws-sdk/token-providers": "3.540.0",
27
+ "@aws-sdk/client-sso": "3.549.0",
28
+ "@aws-sdk/token-providers": "3.549.0",
29
29
  "@aws-sdk/types": "3.535.0",
30
30
  "@smithy/property-provider": "^2.2.0",
31
31
  "@smithy/shared-ini-file-loader": "^2.4.0",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-web-identity",
3
- "version": "3.540.0",
3
+ "version": "3.549.0",
4
4
  "description": "AWS credential provider that calls STS assumeRole for temporary AWS credentials",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -32,7 +32,7 @@
32
32
  },
33
33
  "license": "Apache-2.0",
34
34
  "dependencies": {
35
- "@aws-sdk/client-sts": "3.540.0",
35
+ "@aws-sdk/client-sts": "3.549.0",
36
36
  "@aws-sdk/types": "3.535.0",
37
37
  "@smithy/property-provider": "^2.2.0",
38
38
  "@smithy/types": "^2.12.0",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/token-providers",
3
- "version": "3.540.0",
3
+ "version": "3.549.0",
4
4
  "description": "A collection of token providers",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -26,7 +26,7 @@
26
26
  },
27
27
  "license": "Apache-2.0",
28
28
  "dependencies": {
29
- "@aws-sdk/client-sso-oidc": "3.540.0",
29
+ "@aws-sdk/client-sso-oidc": "3.549.0",
30
30
  "@aws-sdk/types": "3.535.0",
31
31
  "@smithy/property-provider": "^2.2.0",
32
32
  "@smithy/shared-ini-file-loader": "^2.4.0",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/core",
3
- "version": "1.4.1",
3
+ "version": "1.4.2",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "node ../../scripts/inline core",
@@ -23,11 +23,11 @@
23
23
  },
24
24
  "license": "Apache-2.0",
25
25
  "dependencies": {
26
- "@smithy/middleware-endpoint": "^2.5.0",
27
- "@smithy/middleware-retry": "^2.3.0",
26
+ "@smithy/middleware-endpoint": "^2.5.1",
27
+ "@smithy/middleware-retry": "^2.3.1",
28
28
  "@smithy/middleware-serde": "^2.3.0",
29
29
  "@smithy/protocol-http": "^3.3.0",
30
- "@smithy/smithy-client": "^2.5.0",
30
+ "@smithy/smithy-client": "^2.5.1",
31
31
  "@smithy/types": "^2.12.0",
32
32
  "@smithy/util-middleware": "^2.2.0",
33
33
  "tslib": "^2.6.2"
@@ -54,13 +54,13 @@ var IP_ADDRESS_PATTERN = /(\d+\.){3}\d+/;
54
54
  var DOTS_PATTERN = /\.\./;
55
55
  var isDnsCompatibleBucketName = /* @__PURE__ */ __name((bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName), "isDnsCompatibleBucketName");
56
56
  var isArnBucketName = /* @__PURE__ */ __name((bucketName) => {
57
- const [arn, partition, service, region, account, typeOrId] = bucketName.split(":");
57
+ const [arn, partition, service, , , bucket] = bucketName.split(":");
58
58
  const isArn = arn === "arn" && bucketName.split(":").length >= 6;
59
- const isValidArn = [arn, partition, service, account, typeOrId].filter(Boolean).length === 5;
59
+ const isValidArn = Boolean(isArn && partition && service && bucket);
60
60
  if (isArn && !isValidArn) {
61
61
  throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`);
62
62
  }
63
- return arn === "arn" && !!partition && !!service && !!account && !!typeOrId;
63
+ return isValidArn;
64
64
  }, "isArnBucketName");
65
65
 
66
66
  // src/adaptors/createConfigValueProvider.ts
@@ -27,11 +27,11 @@ export const DOT_PATTERN = /\./;
27
27
  export const S3_HOSTNAME_PATTERN = /^(.+\.)?s3(-fips)?(\.dualstack)?[.-]([a-z0-9-]+)\./;
28
28
  export const isDnsCompatibleBucketName = (bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName);
29
29
  export const isArnBucketName = (bucketName) => {
30
- const [arn, partition, service, region, account, typeOrId] = bucketName.split(":");
30
+ const [arn, partition, service, , , bucket] = bucketName.split(":");
31
31
  const isArn = arn === "arn" && bucketName.split(":").length >= 6;
32
- const isValidArn = [arn, partition, service, account, typeOrId].filter(Boolean).length === 5;
32
+ const isValidArn = Boolean(isArn && partition && service && bucket);
33
33
  if (isArn && !isValidArn) {
34
34
  throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`);
35
35
  }
36
- return arn === "arn" && !!partition && !!service && !!account && !!typeOrId;
36
+ return isValidArn;
37
37
  };
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/middleware-endpoint",
3
- "version": "2.5.0",
3
+ "version": "2.5.1",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "node ../../scripts/inline middleware-endpoint",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/middleware-retry",
3
- "version": "2.3.0",
3
+ "version": "2.3.1",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "node ../../scripts/inline middleware-retry",
@@ -34,7 +34,7 @@
34
34
  "@smithy/node-config-provider": "^2.3.0",
35
35
  "@smithy/protocol-http": "^3.3.0",
36
36
  "@smithy/service-error-classification": "^2.1.5",
37
- "@smithy/smithy-client": "^2.5.0",
37
+ "@smithy/smithy-client": "^2.5.1",
38
38
  "@smithy/types": "^2.12.0",
39
39
  "@smithy/util-middleware": "^2.2.0",
40
40
  "@smithy/util-retry": "^2.2.0",
@@ -33,10 +33,9 @@ __export(src_exports, {
33
33
  module.exports = __toCommonJS(src_exports);
34
34
 
35
35
  // src/SignatureV4.ts
36
- var import_eventstream_codec = require("@smithy/eventstream-codec");
37
36
 
38
37
  var import_util_middleware = require("@smithy/util-middleware");
39
- var import_util_utf83 = require("@smithy/util-utf8");
38
+ var import_util_utf84 = require("@smithy/util-utf8");
40
39
 
41
40
  // src/constants.ts
42
41
  var ALGORITHM_QUERY_PARAM = "X-Amz-Algorithm";
@@ -174,6 +173,128 @@ var getPayloadHash = /* @__PURE__ */ __name(async ({ headers, body }, hashConstr
174
173
  return UNSIGNED_PAYLOAD;
175
174
  }, "getPayloadHash");
176
175
 
176
+ // src/HeaderFormatter.ts
177
+
178
+ var import_util_utf83 = require("@smithy/util-utf8");
179
+ var _HeaderFormatter = class _HeaderFormatter {
180
+ format(headers) {
181
+ const chunks = [];
182
+ for (const headerName of Object.keys(headers)) {
183
+ const bytes = (0, import_util_utf83.fromUtf8)(headerName);
184
+ chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName]));
185
+ }
186
+ const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0));
187
+ let position = 0;
188
+ for (const chunk of chunks) {
189
+ out.set(chunk, position);
190
+ position += chunk.byteLength;
191
+ }
192
+ return out;
193
+ }
194
+ formatHeaderValue(header) {
195
+ switch (header.type) {
196
+ case "boolean":
197
+ return Uint8Array.from([header.value ? 0 /* boolTrue */ : 1 /* boolFalse */]);
198
+ case "byte":
199
+ return Uint8Array.from([2 /* byte */, header.value]);
200
+ case "short":
201
+ const shortView = new DataView(new ArrayBuffer(3));
202
+ shortView.setUint8(0, 3 /* short */);
203
+ shortView.setInt16(1, header.value, false);
204
+ return new Uint8Array(shortView.buffer);
205
+ case "integer":
206
+ const intView = new DataView(new ArrayBuffer(5));
207
+ intView.setUint8(0, 4 /* integer */);
208
+ intView.setInt32(1, header.value, false);
209
+ return new Uint8Array(intView.buffer);
210
+ case "long":
211
+ const longBytes = new Uint8Array(9);
212
+ longBytes[0] = 5 /* long */;
213
+ longBytes.set(header.value.bytes, 1);
214
+ return longBytes;
215
+ case "binary":
216
+ const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength));
217
+ binView.setUint8(0, 6 /* byteArray */);
218
+ binView.setUint16(1, header.value.byteLength, false);
219
+ const binBytes = new Uint8Array(binView.buffer);
220
+ binBytes.set(header.value, 3);
221
+ return binBytes;
222
+ case "string":
223
+ const utf8Bytes = (0, import_util_utf83.fromUtf8)(header.value);
224
+ const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength));
225
+ strView.setUint8(0, 7 /* string */);
226
+ strView.setUint16(1, utf8Bytes.byteLength, false);
227
+ const strBytes = new Uint8Array(strView.buffer);
228
+ strBytes.set(utf8Bytes, 3);
229
+ return strBytes;
230
+ case "timestamp":
231
+ const tsBytes = new Uint8Array(9);
232
+ tsBytes[0] = 8 /* timestamp */;
233
+ tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1);
234
+ return tsBytes;
235
+ case "uuid":
236
+ if (!UUID_PATTERN.test(header.value)) {
237
+ throw new Error(`Invalid UUID received: ${header.value}`);
238
+ }
239
+ const uuidBytes = new Uint8Array(17);
240
+ uuidBytes[0] = 9 /* uuid */;
241
+ uuidBytes.set((0, import_util_hex_encoding.fromHex)(header.value.replace(/\-/g, "")), 1);
242
+ return uuidBytes;
243
+ }
244
+ }
245
+ };
246
+ __name(_HeaderFormatter, "HeaderFormatter");
247
+ var HeaderFormatter = _HeaderFormatter;
248
+ var UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;
249
+ var _Int64 = class _Int64 {
250
+ constructor(bytes) {
251
+ this.bytes = bytes;
252
+ if (bytes.byteLength !== 8) {
253
+ throw new Error("Int64 buffers must be exactly 8 bytes");
254
+ }
255
+ }
256
+ static fromNumber(number) {
257
+ if (number > 9223372036854776e3 || number < -9223372036854776e3) {
258
+ throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`);
259
+ }
260
+ const bytes = new Uint8Array(8);
261
+ for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) {
262
+ bytes[i] = remaining;
263
+ }
264
+ if (number < 0) {
265
+ negate(bytes);
266
+ }
267
+ return new _Int64(bytes);
268
+ }
269
+ /**
270
+ * Called implicitly by infix arithmetic operators.
271
+ */
272
+ valueOf() {
273
+ const bytes = this.bytes.slice(0);
274
+ const negative = bytes[0] & 128;
275
+ if (negative) {
276
+ negate(bytes);
277
+ }
278
+ return parseInt((0, import_util_hex_encoding.toHex)(bytes), 16) * (negative ? -1 : 1);
279
+ }
280
+ toString() {
281
+ return String(this.valueOf());
282
+ }
283
+ };
284
+ __name(_Int64, "Int64");
285
+ var Int64 = _Int64;
286
+ function negate(bytes) {
287
+ for (let i = 0; i < 8; i++) {
288
+ bytes[i] ^= 255;
289
+ }
290
+ for (let i = 7; i > -1; i--) {
291
+ bytes[i]++;
292
+ if (bytes[i] !== 0)
293
+ break;
294
+ }
295
+ }
296
+ __name(negate, "negate");
297
+
177
298
  // src/headerUtil.ts
178
299
  var hasHeader = /* @__PURE__ */ __name((soughtHeader, headers) => {
179
300
  soughtHeader = soughtHeader.toLowerCase();
@@ -253,7 +374,7 @@ var _SignatureV4 = class _SignatureV4 {
253
374
  sha256,
254
375
  uriEscapePath = true
255
376
  }) {
256
- this.headerMarshaller = new import_eventstream_codec.HeaderMarshaller(import_util_utf83.toUtf8, import_util_utf83.fromUtf8);
377
+ this.headerFormatter = new HeaderFormatter();
257
378
  this.service = service;
258
379
  this.sha256 = sha256;
259
380
  this.uriEscapePath = uriEscapePath;
@@ -331,7 +452,7 @@ var _SignatureV4 = class _SignatureV4 {
331
452
  async signMessage(signableMessage, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService }) {
332
453
  const promise = this.signEvent(
333
454
  {
334
- headers: this.headerMarshaller.format(signableMessage.message.headers),
455
+ headers: this.headerFormatter.format(signableMessage.message.headers),
335
456
  payload: signableMessage.message.body
336
457
  },
337
458
  {
@@ -351,7 +472,7 @@ var _SignatureV4 = class _SignatureV4 {
351
472
  const region = signingRegion ?? await this.regionProvider();
352
473
  const { shortDate } = formatDate(signingDate);
353
474
  const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService));
354
- hash.update((0, import_util_utf83.toUint8Array)(stringToSign));
475
+ hash.update((0, import_util_utf84.toUint8Array)(stringToSign));
355
476
  return (0, import_util_hex_encoding.toHex)(await hash.digest());
356
477
  }
357
478
  async signRequest(requestToSign, {
@@ -397,7 +518,7 @@ ${payloadHash}`;
397
518
  }
398
519
  async createStringToSign(longDate, credentialScope, canonicalRequest) {
399
520
  const hash = new this.sha256();
400
- hash.update((0, import_util_utf83.toUint8Array)(canonicalRequest));
521
+ hash.update((0, import_util_utf84.toUint8Array)(canonicalRequest));
401
522
  const hashedRequest = await hash.digest();
402
523
  return `${ALGORITHM_IDENTIFIER}
403
524
  ${longDate}
@@ -427,7 +548,7 @@ ${(0, import_util_hex_encoding.toHex)(hashedRequest)}`;
427
548
  async getSignature(longDate, credentialScope, keyPromise, canonicalRequest) {
428
549
  const stringToSign = await this.createStringToSign(longDate, credentialScope, canonicalRequest);
429
550
  const hash = new this.sha256(await keyPromise);
430
- hash.update((0, import_util_utf83.toUint8Array)(stringToSign));
551
+ hash.update((0, import_util_utf84.toUint8Array)(stringToSign));
431
552
  return (0, import_util_hex_encoding.toHex)(await hash.digest());
432
553
  }
433
554
  getSigningKey(credentials, region, shortDate, service) {
@@ -0,0 +1,125 @@
1
+ import { fromHex, toHex } from "@smithy/util-hex-encoding";
2
+ import { fromUtf8 } from "@smithy/util-utf8";
3
+ export class HeaderFormatter {
4
+ format(headers) {
5
+ const chunks = [];
6
+ for (const headerName of Object.keys(headers)) {
7
+ const bytes = fromUtf8(headerName);
8
+ chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName]));
9
+ }
10
+ const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0));
11
+ let position = 0;
12
+ for (const chunk of chunks) {
13
+ out.set(chunk, position);
14
+ position += chunk.byteLength;
15
+ }
16
+ return out;
17
+ }
18
+ formatHeaderValue(header) {
19
+ switch (header.type) {
20
+ case "boolean":
21
+ return Uint8Array.from([header.value ? 0 : 1]);
22
+ case "byte":
23
+ return Uint8Array.from([2, header.value]);
24
+ case "short":
25
+ const shortView = new DataView(new ArrayBuffer(3));
26
+ shortView.setUint8(0, 3);
27
+ shortView.setInt16(1, header.value, false);
28
+ return new Uint8Array(shortView.buffer);
29
+ case "integer":
30
+ const intView = new DataView(new ArrayBuffer(5));
31
+ intView.setUint8(0, 4);
32
+ intView.setInt32(1, header.value, false);
33
+ return new Uint8Array(intView.buffer);
34
+ case "long":
35
+ const longBytes = new Uint8Array(9);
36
+ longBytes[0] = 5;
37
+ longBytes.set(header.value.bytes, 1);
38
+ return longBytes;
39
+ case "binary":
40
+ const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength));
41
+ binView.setUint8(0, 6);
42
+ binView.setUint16(1, header.value.byteLength, false);
43
+ const binBytes = new Uint8Array(binView.buffer);
44
+ binBytes.set(header.value, 3);
45
+ return binBytes;
46
+ case "string":
47
+ const utf8Bytes = fromUtf8(header.value);
48
+ const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength));
49
+ strView.setUint8(0, 7);
50
+ strView.setUint16(1, utf8Bytes.byteLength, false);
51
+ const strBytes = new Uint8Array(strView.buffer);
52
+ strBytes.set(utf8Bytes, 3);
53
+ return strBytes;
54
+ case "timestamp":
55
+ const tsBytes = new Uint8Array(9);
56
+ tsBytes[0] = 8;
57
+ tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1);
58
+ return tsBytes;
59
+ case "uuid":
60
+ if (!UUID_PATTERN.test(header.value)) {
61
+ throw new Error(`Invalid UUID received: ${header.value}`);
62
+ }
63
+ const uuidBytes = new Uint8Array(17);
64
+ uuidBytes[0] = 9;
65
+ uuidBytes.set(fromHex(header.value.replace(/\-/g, "")), 1);
66
+ return uuidBytes;
67
+ }
68
+ }
69
+ }
70
+ var HEADER_VALUE_TYPE;
71
+ (function (HEADER_VALUE_TYPE) {
72
+ HEADER_VALUE_TYPE[HEADER_VALUE_TYPE["boolTrue"] = 0] = "boolTrue";
73
+ HEADER_VALUE_TYPE[HEADER_VALUE_TYPE["boolFalse"] = 1] = "boolFalse";
74
+ HEADER_VALUE_TYPE[HEADER_VALUE_TYPE["byte"] = 2] = "byte";
75
+ HEADER_VALUE_TYPE[HEADER_VALUE_TYPE["short"] = 3] = "short";
76
+ HEADER_VALUE_TYPE[HEADER_VALUE_TYPE["integer"] = 4] = "integer";
77
+ HEADER_VALUE_TYPE[HEADER_VALUE_TYPE["long"] = 5] = "long";
78
+ HEADER_VALUE_TYPE[HEADER_VALUE_TYPE["byteArray"] = 6] = "byteArray";
79
+ HEADER_VALUE_TYPE[HEADER_VALUE_TYPE["string"] = 7] = "string";
80
+ HEADER_VALUE_TYPE[HEADER_VALUE_TYPE["timestamp"] = 8] = "timestamp";
81
+ HEADER_VALUE_TYPE[HEADER_VALUE_TYPE["uuid"] = 9] = "uuid";
82
+ })(HEADER_VALUE_TYPE || (HEADER_VALUE_TYPE = {}));
83
+ const UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;
84
+ export class Int64 {
85
+ constructor(bytes) {
86
+ this.bytes = bytes;
87
+ if (bytes.byteLength !== 8) {
88
+ throw new Error("Int64 buffers must be exactly 8 bytes");
89
+ }
90
+ }
91
+ static fromNumber(number) {
92
+ if (number > 9223372036854776000 || number < -9223372036854776000) {
93
+ throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`);
94
+ }
95
+ const bytes = new Uint8Array(8);
96
+ for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) {
97
+ bytes[i] = remaining;
98
+ }
99
+ if (number < 0) {
100
+ negate(bytes);
101
+ }
102
+ return new Int64(bytes);
103
+ }
104
+ valueOf() {
105
+ const bytes = this.bytes.slice(0);
106
+ const negative = bytes[0] & 0b10000000;
107
+ if (negative) {
108
+ negate(bytes);
109
+ }
110
+ return parseInt(toHex(bytes), 16) * (negative ? -1 : 1);
111
+ }
112
+ toString() {
113
+ return String(this.valueOf());
114
+ }
115
+ }
116
+ function negate(bytes) {
117
+ for (let i = 0; i < 8; i++) {
118
+ bytes[i] ^= 0xff;
119
+ }
120
+ for (let i = 7; i > -1; i--) {
121
+ bytes[i]++;
122
+ if (bytes[i] !== 0)
123
+ break;
124
+ }
125
+ }
@@ -1,19 +1,19 @@
1
- import { HeaderMarshaller } from "@smithy/eventstream-codec";
2
1
  import { toHex } from "@smithy/util-hex-encoding";
3
2
  import { normalizeProvider } from "@smithy/util-middleware";
4
- import { fromUtf8, toUint8Array, toUtf8 } from "@smithy/util-utf8";
3
+ import { toUint8Array } from "@smithy/util-utf8";
5
4
  import { ALGORITHM_IDENTIFIER, ALGORITHM_QUERY_PARAM, AMZ_DATE_HEADER, AMZ_DATE_QUERY_PARAM, AUTH_HEADER, CREDENTIAL_QUERY_PARAM, EVENT_ALGORITHM_IDENTIFIER, EXPIRES_QUERY_PARAM, MAX_PRESIGNED_TTL, SHA256_HEADER, SIGNATURE_QUERY_PARAM, SIGNED_HEADERS_QUERY_PARAM, TOKEN_HEADER, TOKEN_QUERY_PARAM, } from "./constants";
6
5
  import { createScope, getSigningKey } from "./credentialDerivation";
7
6
  import { getCanonicalHeaders } from "./getCanonicalHeaders";
8
7
  import { getCanonicalQuery } from "./getCanonicalQuery";
9
8
  import { getPayloadHash } from "./getPayloadHash";
9
+ import { HeaderFormatter } from "./HeaderFormatter";
10
10
  import { hasHeader } from "./headerUtil";
11
11
  import { moveHeadersToQuery } from "./moveHeadersToQuery";
12
12
  import { prepareRequest } from "./prepareRequest";
13
13
  import { iso8601 } from "./utilDate";
14
14
  export class SignatureV4 {
15
15
  constructor({ applyChecksum, credentials, region, service, sha256, uriEscapePath = true, }) {
16
- this.headerMarshaller = new HeaderMarshaller(toUtf8, fromUtf8);
16
+ this.headerFormatter = new HeaderFormatter();
17
17
  this.service = service;
18
18
  this.sha256 = sha256;
19
19
  this.uriEscapePath = uriEscapePath;
@@ -78,7 +78,7 @@ export class SignatureV4 {
78
78
  }
79
79
  async signMessage(signableMessage, { signingDate = new Date(), signingRegion, signingService }) {
80
80
  const promise = this.signEvent({
81
- headers: this.headerMarshaller.format(signableMessage.message.headers),
81
+ headers: this.headerFormatter.format(signableMessage.message.headers),
82
82
  payload: signableMessage.message.body,
83
83
  }, {
84
84
  signingDate,
@@ -0,0 +1,24 @@
1
+ import type { Int64 as IInt64, MessageHeaders } from "@smithy/types";
2
+ /**
3
+ * @internal
4
+ * TODO: duplicated from @smithy/eventstream-codec to break large dependency.
5
+ * TODO: This should be moved to its own deduped submodule in @smithy/core when submodules are implemented.
6
+ */
7
+ export declare class HeaderFormatter {
8
+ format(headers: MessageHeaders): Uint8Array;
9
+ private formatHeaderValue;
10
+ }
11
+ /**
12
+ * TODO: duplicated from @smithy/eventstream-codec to break large dependency.
13
+ * TODO: This should be moved to its own deduped submodule in @smithy/core when submodules are implemented.
14
+ */
15
+ export declare class Int64 implements IInt64 {
16
+ readonly bytes: Uint8Array;
17
+ constructor(bytes: Uint8Array);
18
+ static fromNumber(number: number): Int64;
19
+ /**
20
+ * Called implicitly by infix arithmetic operators.
21
+ */
22
+ valueOf(): number;
23
+ toString(): string;
24
+ }
@@ -47,7 +47,7 @@ export declare class SignatureV4 implements RequestPresigner, RequestSigner, Str
47
47
  private readonly sha256;
48
48
  private readonly uriEscapePath;
49
49
  private readonly applyChecksum;
50
- private readonly headerMarshaller;
50
+ private readonly headerFormatter;
51
51
  constructor({ applyChecksum, credentials, region, service, sha256, uriEscapePath, }: SignatureV4Init & SignatureV4CryptoInit);
52
52
  presign(originalRequest: HttpRequest, options?: RequestPresigningArguments): Promise<HttpRequest>;
53
53
  sign(stringToSign: string, options?: SigningArguments): Promise<string>;
@@ -0,0 +1,24 @@
1
+ import { Int64 as IInt64, MessageHeaders } from "@smithy/types";
2
+ /**
3
+ * @internal
4
+ * TODO: duplicated from @smithy/eventstream-codec to break large dependency.
5
+ * TODO: This should be moved to its own deduped submodule in @smithy/core when submodules are implemented.
6
+ */
7
+ export declare class HeaderFormatter {
8
+ format(headers: MessageHeaders): Uint8Array;
9
+ private formatHeaderValue;
10
+ }
11
+ /**
12
+ * TODO: duplicated from @smithy/eventstream-codec to break large dependency.
13
+ * TODO: This should be moved to its own deduped submodule in @smithy/core when submodules are implemented.
14
+ */
15
+ export declare class Int64 implements IInt64 {
16
+ readonly bytes: Uint8Array;
17
+ constructor(bytes: Uint8Array);
18
+ static fromNumber(number: number): Int64;
19
+ /**
20
+ * Called implicitly by infix arithmetic operators.
21
+ */
22
+ valueOf(): number;
23
+ toString(): string;
24
+ }
@@ -47,7 +47,7 @@ export declare class SignatureV4 implements RequestPresigner, RequestSigner, Str
47
47
  private readonly sha256;
48
48
  private readonly uriEscapePath;
49
49
  private readonly applyChecksum;
50
- private readonly headerMarshaller;
50
+ private readonly headerFormatter;
51
51
  constructor({ applyChecksum, credentials, region, service, sha256, uriEscapePath, }: SignatureV4Init & SignatureV4CryptoInit);
52
52
  presign(originalRequest: HttpRequest, options?: RequestPresigningArguments): Promise<HttpRequest>;
53
53
  sign(stringToSign: string, options?: SigningArguments): Promise<string>;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/signature-v4",
3
- "version": "2.2.0",
3
+ "version": "2.2.1",
4
4
  "description": "A standalone implementation of the AWS Signature V4 request signing algorithm",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -24,7 +24,6 @@
24
24
  },
25
25
  "license": "Apache-2.0",
26
26
  "dependencies": {
27
- "@smithy/eventstream-codec": "^2.2.0",
28
27
  "@smithy/is-array-buffer": "^2.2.0",
29
28
  "@smithy/types": "^2.12.0",
30
29
  "@smithy/util-hex-encoding": "^2.2.0",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/smithy-client",
3
- "version": "2.5.0",
3
+ "version": "2.5.1",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "node ../../scripts/inline smithy-client",
@@ -23,7 +23,7 @@
23
23
  },
24
24
  "license": "Apache-2.0",
25
25
  "dependencies": {
26
- "@smithy/middleware-endpoint": "^2.5.0",
26
+ "@smithy/middleware-endpoint": "^2.5.1",
27
27
  "@smithy/middleware-stack": "^2.2.0",
28
28
  "@smithy/protocol-http": "^3.3.0",
29
29
  "@smithy/types": "^2.12.0",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/util-defaults-mode-browser",
3
- "version": "2.2.0",
3
+ "version": "2.2.1",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "node ../../scripts/inline util-defaults-mode-browser",
@@ -23,7 +23,7 @@
23
23
  "license": "Apache-2.0",
24
24
  "dependencies": {
25
25
  "@smithy/property-provider": "^2.2.0",
26
- "@smithy/smithy-client": "^2.5.0",
26
+ "@smithy/smithy-client": "^2.5.1",
27
27
  "@smithy/types": "^2.12.0",
28
28
  "bowser": "^2.11.0",
29
29
  "tslib": "^2.6.2"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/util-defaults-mode-node",
3
- "version": "2.3.0",
3
+ "version": "2.3.1",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "node ../../scripts/inline util-defaults-mode-node",
@@ -26,7 +26,7 @@
26
26
  "@smithy/credential-provider-imds": "^2.3.0",
27
27
  "@smithy/node-config-provider": "^2.3.0",
28
28
  "@smithy/property-provider": "^2.2.0",
29
- "@smithy/smithy-client": "^2.5.0",
29
+ "@smithy/smithy-client": "^2.5.1",
30
30
  "@smithy/types": "^2.12.0",
31
31
  "tslib": "^2.6.2"
32
32
  },