@cdk8s/awscdk-resolver 0.0.638 → 0.0.639

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 (226) 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 +1 -1
  4. package/node_modules/@aws-sdk/client-cloudformation/dist-types/runtimeConfig.browser.d.ts +2 -0
  5. package/node_modules/@aws-sdk/client-cloudformation/dist-types/runtimeConfig.d.ts +2 -0
  6. package/node_modules/@aws-sdk/client-cloudformation/dist-types/runtimeConfig.native.d.ts +2 -0
  7. package/node_modules/@aws-sdk/client-cloudformation/dist-types/ts3.4/runtimeConfig.browser.d.ts +2 -0
  8. package/node_modules/@aws-sdk/client-cloudformation/dist-types/ts3.4/runtimeConfig.d.ts +2 -0
  9. package/node_modules/@aws-sdk/client-cloudformation/dist-types/ts3.4/runtimeConfig.native.d.ts +2 -0
  10. package/node_modules/@aws-sdk/client-cloudformation/package.json +6 -6
  11. package/node_modules/@aws-sdk/core/dist-cjs/submodules/httpAuthSchemes/index.js +66 -28
  12. package/node_modules/@aws-sdk/core/dist-cjs/submodules/protocols/index.js +133 -15
  13. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.js +7 -2
  14. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js +28 -14
  15. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.browser.js +1 -0
  16. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.js +3 -0
  17. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/clock-skew-node-config.js +8 -0
  18. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js +1 -1
  19. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js +3 -3
  20. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.browser.js +9 -0
  21. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.js +5 -1
  22. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js +1 -0
  23. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js +12 -6
  24. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/index.js +2 -1
  25. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js +1 -1
  26. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeDeserializer.js +10 -1
  27. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeSerializer.js +10 -0
  28. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/detectBufferParsing.js +18 -0
  29. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/experimental/BufferJsonShapeDeserializer.js +13 -15
  30. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/experimental/ByteJsonShapeSerializer.js +27 -17
  31. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/jsonReviver.js +22 -3
  32. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/needsReviver.js +41 -0
  33. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js +33 -13
  34. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/writeKey.js +3 -0
  35. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/XmlShapeDeserializer.js +4 -0
  36. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.d.ts +2 -1
  37. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.browser.d.ts +6 -0
  38. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.d.ts +7 -0
  39. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/aws_sdk/clock-skew-node-config.d.ts +13 -0
  40. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/aws_sdk/index.d.ts +1 -1
  41. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.d.ts +22 -6
  42. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/index.browser.d.ts +11 -0
  43. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/index.d.ts +7 -1
  44. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/utils/getDateHeader.d.ts +4 -0
  45. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.d.ts +22 -6
  46. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/utils/index.d.ts +2 -1
  47. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/detectBufferParsing.d.ts +1 -0
  48. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/experimental/ByteJsonShapeSerializer.d.ts +0 -2
  49. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/needsReviver.d.ts +11 -0
  50. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/parseJsonBody.d.ts +7 -2
  51. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/writeKey.d.ts +4 -0
  52. package/node_modules/@aws-sdk/core/dist-types/ts3.4/api-extractor-type-index.d.ts +7 -4
  53. package/node_modules/@aws-sdk/core/dist-types/ts3.4/index.d.ts +21 -61
  54. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/AccountIdEndpointModeConfigResolver.d.ts +27 -13
  55. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/AccountIdEndpointModeConstants.d.ts +16 -4
  56. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/NodeAccountIdEndpointModeConfigOptions.d.ts +14 -5
  57. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/index.d.ts +5 -16
  58. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/emitWarningIfUnsupportedVersion.d.ts +11 -4
  59. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.browser.d.ts +47 -107
  60. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.d.ts +39 -112
  61. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.native.d.ts +48 -107
  62. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/longPollMiddleware.d.ts +14 -13
  63. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-host-header/hostHeaderMiddleware.d.ts +35 -25
  64. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-logger/loggerMiddleware.d.ts +4 -14
  65. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/configuration.d.ts +6 -2
  66. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.browser.d.ts +5 -2
  67. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.d.ts +5 -2
  68. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.browser.d.ts +6 -2
  69. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.d.ts +10 -2
  70. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.native.d.ts +6 -2
  71. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/check-features.d.ts +20 -16
  72. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/configurations.d.ts +44 -21
  73. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/constants.d.ts +7 -7
  74. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/encode-features.d.ts +5 -2
  75. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/user-agent-middleware.d.ts +18 -18
  76. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/awsRegionConfig.d.ts +11 -8
  77. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/extensions.d.ts +16 -14
  78. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.browser.d.ts +4 -1
  79. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.d.ts +14 -7
  80. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.native.d.ts +4 -1
  81. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/setCredentialFeature.d.ts +7 -6
  82. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/setFeature.d.ts +12 -6
  83. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/setTokenFeature.d.ts +7 -6
  84. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/aws.d.ts +2 -2
  85. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/isVirtualHostableS3Bucket.d.ts +5 -4
  86. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/parseArn.d.ts +7 -2
  87. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/partition.d.ts +38 -28
  88. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/partitions.d.ts +638 -647
  89. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/isIpAddress.d.ts +1 -1
  90. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/resolveDefaultAwsRegionalEndpointsConfig.d.ts +56 -29
  91. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/resolveEndpoint.d.ts +1 -1
  92. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/EndpointError.d.ts +1 -1
  93. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/EndpointRuleObject.d.ts +1 -6
  94. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/ErrorRuleObject.d.ts +1 -1
  95. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/RuleSetObject.d.ts +1 -1
  96. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/TreeRuleObject.d.ts +1 -1
  97. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/shared.d.ts +1 -12
  98. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/configurations.d.ts +7 -4
  99. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/createUserAgentStringParsingProvider.d.ts +14 -7
  100. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.browser.d.ts +2 -7
  101. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.d.ts +27 -18
  102. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.native.d.ts +18 -13
  103. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/crt-availability.d.ts +8 -3
  104. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/defaultUserAgent.d.ts +28 -17
  105. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/getRuntimeUserAgentPair.d.ts +6 -2
  106. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/is-crt-available.d.ts +5 -2
  107. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/nodeAppIdConfigOptions.d.ts +13 -4
  108. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.d.ts +10 -9
  109. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.d.ts +44 -37
  110. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/NODE_AUTH_SCHEME_PREFERENCE_OPTIONS.d.ts +5 -2
  111. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.browser.d.ts +6 -0
  112. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.d.ts +7 -0
  113. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/clock-skew-node-config.d.ts +13 -0
  114. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/index.d.ts +7 -23
  115. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.d.ts +38 -13
  116. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.d.ts +133 -56
  117. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/index.browser.d.ts +11 -0
  118. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/index.d.ts +9 -24
  119. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getArrayForCommaSeparatedString.d.ts +8 -1
  120. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getBearerTokenEnvKey.d.ts +6 -1
  121. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getDateHeader.d.ts +8 -1
  122. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.d.ts +8 -1
  123. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.d.ts +26 -4
  124. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/index.d.ts +4 -3
  125. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/isClockSkewed.d.ts +9 -1
  126. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/ConfigurableSerdeContext.d.ts +8 -5
  127. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/ProtocolLib.d.ts +74 -40
  128. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/UnionSerde.d.ts +24 -9
  129. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/cbor/AwsSmithyRpcV2CborProtocol.d.ts +25 -36
  130. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/coercing-serializers.d.ts +18 -3
  131. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/common.d.ts +2 -5
  132. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/index.d.ts +22 -27
  133. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_0Protocol.d.ts +22 -21
  134. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_1Protocol.d.ts +22 -21
  135. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJsonRpcProtocol.d.ts +29 -49
  136. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsRestJsonProtocol.d.ts +36 -49
  137. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonCodec.d.ts +19 -13
  138. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonShapeDeserializer.d.ts +13 -13
  139. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonShapeSerializer.d.ts +28 -18
  140. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/awsExpectUnion.d.ts +7 -1
  141. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/detectBufferParsing.d.ts +1 -0
  142. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/experimental/BufferJsonShapeDeserializer.d.ts +29 -14
  143. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/experimental/ByteJsonShapeSerializer.d.ts +57 -30
  144. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/jsonReplacer.d.ts +21 -7
  145. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/jsonReviver.d.ts +15 -7
  146. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/needsReviver.d.ts +11 -0
  147. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/parseJsonBody.d.ts +22 -9
  148. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/AwsEc2QueryProtocol.d.ts +27 -18
  149. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/AwsQueryProtocol.d.ts +49 -57
  150. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/QuerySerializerSettings.d.ts +13 -7
  151. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/QueryShapeSerializer.d.ts +16 -21
  152. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/writeKey.d.ts +4 -0
  153. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/AwsRestXmlProtocol.d.ts +31 -47
  154. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/XmlCodec.d.ts +14 -17
  155. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/XmlShapeDeserializer.d.ts +20 -15
  156. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/XmlShapeSerializer.d.ts +21 -21
  157. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/parseXmlBody.d.ts +13 -4
  158. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/simpleFormatXml.d.ts +6 -1
  159. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/index.d.ts +3 -3
  160. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/util-arn-parser/arn.d.ts +32 -14
  161. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/util-format-url/format-url.d.ts +2 -4
  162. package/node_modules/@aws-sdk/core/package.json +10 -6
  163. package/node_modules/@aws-sdk/credential-provider-env/package.json +3 -3
  164. package/node_modules/@aws-sdk/credential-provider-http/package.json +5 -5
  165. package/node_modules/@aws-sdk/credential-provider-ini/package.json +11 -11
  166. package/node_modules/@aws-sdk/credential-provider-login/package.json +4 -4
  167. package/node_modules/@aws-sdk/credential-provider-node/package.json +9 -9
  168. package/node_modules/@aws-sdk/credential-provider-process/package.json +3 -3
  169. package/node_modules/@aws-sdk/credential-provider-sso/package.json +5 -5
  170. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +4 -4
  171. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/index.js +1 -1
  172. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/index.js +1 -1
  173. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/index.js +1 -1
  174. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/index.js +1 -1
  175. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/index.js +1 -1
  176. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/runtimeConfig.browser.d.ts +2 -0
  177. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/runtimeConfig.d.ts +2 -0
  178. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/runtimeConfig.native.d.ts +2 -0
  179. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/runtimeConfig.browser.d.ts +2 -0
  180. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/runtimeConfig.d.ts +2 -0
  181. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/runtimeConfig.native.d.ts +2 -0
  182. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/runtimeConfig.browser.d.ts +2 -0
  183. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/runtimeConfig.d.ts +2 -0
  184. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/runtimeConfig.native.d.ts +2 -0
  185. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/runtimeConfig.browser.d.ts +2 -0
  186. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/runtimeConfig.d.ts +2 -0
  187. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/runtimeConfig.native.d.ts +2 -0
  188. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.browser.d.ts +2 -0
  189. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.d.ts +2 -0
  190. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.native.d.ts +2 -0
  191. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/runtimeConfig.browser.d.ts +2 -0
  192. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/runtimeConfig.d.ts +2 -0
  193. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/runtimeConfig.native.d.ts +2 -0
  194. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/runtimeConfig.browser.d.ts +2 -0
  195. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/runtimeConfig.d.ts +2 -0
  196. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/runtimeConfig.native.d.ts +2 -0
  197. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/runtimeConfig.browser.d.ts +2 -0
  198. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/runtimeConfig.d.ts +2 -0
  199. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/runtimeConfig.native.d.ts +2 -0
  200. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.browser.d.ts +2 -0
  201. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.d.ts +2 -0
  202. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.native.d.ts +2 -0
  203. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.browser.d.ts +2 -0
  204. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.d.ts +2 -0
  205. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.native.d.ts +2 -0
  206. package/node_modules/@aws-sdk/nested-clients/package.json +6 -6
  207. package/node_modules/@aws-sdk/signature-v4-multi-region/package.json +2 -2
  208. package/node_modules/@aws-sdk/token-providers/package.json +4 -4
  209. package/node_modules/@aws-sdk/xml-builder/dist-cjs/index.js +14 -4
  210. package/node_modules/@aws-sdk/xml-builder/dist-es/xml-parser.js +14 -4
  211. package/node_modules/@aws-sdk/xml-builder/package.json +1 -1
  212. package/node_modules/@smithy/core/dist-cjs/submodules/retry/index.browser.js +1 -0
  213. package/node_modules/@smithy/core/dist-cjs/submodules/retry/index.js +1 -0
  214. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.browser.js +2 -2
  215. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.js +2 -2
  216. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.native.js +2 -2
  217. package/node_modules/@smithy/core/dist-es/submodules/retry/service-error-classification/constants.js +1 -0
  218. package/node_modules/@smithy/core/dist-es/submodules/serde/value/NumericValue.js +2 -2
  219. package/node_modules/@smithy/core/dist-types/submodules/retry/service-error-classification/constants.d.ts +1 -0
  220. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/retry/service-error-classification/constants.d.ts +1 -0
  221. package/node_modules/@smithy/core/package.json +1 -1
  222. package/node_modules/@smithy/credential-provider-imds/package.json +2 -2
  223. package/node_modules/@smithy/fetch-http-handler/package.json +2 -2
  224. package/node_modules/@smithy/node-http-handler/package.json +2 -2
  225. package/node_modules/@smithy/signature-v4/package.json +2 -2
  226. package/package.json +5 -5
package/.jsii CHANGED
@@ -7,7 +7,7 @@
7
7
  "url": "https://aws.amazon.com"
8
8
  },
9
9
  "bundled": {
10
- "@aws-sdk/client-cloudformation": "^3.1094.0"
10
+ "@aws-sdk/client-cloudformation": "^3.1095.0"
11
11
  },
12
12
  "dependencies": {
13
13
  "aws-cdk-lib": "^2.195.0",
@@ -4082,6 +4082,6 @@
4082
4082
  "symbolId": "src/resolve:AwsCdkResolver"
4083
4083
  }
4084
4084
  },
4085
- "version": "0.0.638",
4086
- "fingerprint": "GCTa4K5dxr2iWrAz2LlBR/JUz4NkSvt5ZCmKNB0pbfw="
4085
+ "version": "0.0.639",
4086
+ "fingerprint": "2hrT7ZA4E9XPrmFCj2J8xj7k4p0pmhrTQILOu9RbfZI="
4087
4087
  }
package/lib/resolve.js CHANGED
@@ -39,7 +39,7 @@ const child_process_1 = require("child_process");
39
39
  const path = __importStar(require("path"));
40
40
  const aws_cdk_lib_1 = require("aws-cdk-lib");
41
41
  class AwsCdkResolver {
42
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@cdk8s/awscdk-resolver.AwsCdkResolver", version: "0.0.638" };
42
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@cdk8s/awscdk-resolver.AwsCdkResolver", version: "0.0.639" };
43
43
  resolve(context) {
44
44
  if (!aws_cdk_lib_1.Token.isUnresolved(context.value)) {
45
45
  return;
@@ -69,7 +69,7 @@ const commonParams = {
69
69
  UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
70
70
  };
71
71
 
72
- var version = "3.1093.0";
72
+ var version = "3.1094.0";
73
73
  var packageInfo = {
74
74
  version: version};
75
75
 
@@ -42,6 +42,7 @@ export declare const getRuntimeConfig: (config: CloudFormationClientConfig) => {
42
42
  logger?: import("@smithy/types").Logger;
43
43
  }) => import("@smithy/types").EndpointV2;
44
44
  tls?: boolean;
45
+ ignoreConfiguredEndpointUrls?: boolean;
45
46
  serviceConfiguredEndpoint?: never;
46
47
  authSchemePreference?: string[] | import("@smithy/types").Provider<string[]>;
47
48
  httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
@@ -52,4 +53,5 @@ export declare const getRuntimeConfig: (config: CloudFormationClientConfig) => {
52
53
  systemClockOffset?: number;
53
54
  signingRegion?: string;
54
55
  signerConstructor?: new (options: import("@smithy/signature-v4").SignatureV4Init & import("@smithy/signature-v4").SignatureV4CryptoInit) => import("@smithy/types").RequestSigner;
56
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
55
57
  };
@@ -43,6 +43,7 @@ export declare const getRuntimeConfig: (config: CloudFormationClientConfig) => {
43
43
  logger?: import("@smithy/types").Logger;
44
44
  }) => import("@smithy/types").EndpointV2;
45
45
  tls?: boolean;
46
+ ignoreConfiguredEndpointUrls?: boolean;
46
47
  serviceConfiguredEndpoint?: never;
47
48
  httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
48
49
  httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").CloudFormationHttpAuthSchemeProvider;
@@ -52,4 +53,5 @@ export declare const getRuntimeConfig: (config: CloudFormationClientConfig) => {
52
53
  systemClockOffset?: number;
53
54
  signingRegion?: string;
54
55
  signerConstructor?: new (options: import("@smithy/signature-v4").SignatureV4Init & import("@smithy/signature-v4").SignatureV4CryptoInit) => import("@smithy/types").RequestSigner;
56
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
55
57
  };
@@ -41,6 +41,7 @@ export declare const getRuntimeConfig: (config: CloudFormationClientConfig) => {
41
41
  logger?: import("@smithy/types").Logger;
42
42
  }) => import("@smithy/types").EndpointV2;
43
43
  tls?: boolean;
44
+ ignoreConfiguredEndpointUrls?: boolean;
44
45
  serviceConfiguredEndpoint?: never;
45
46
  authSchemePreference?: string[] | import("@smithy/types").Provider<string[]>;
46
47
  httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
@@ -51,4 +52,5 @@ export declare const getRuntimeConfig: (config: CloudFormationClientConfig) => {
51
52
  systemClockOffset?: number;
52
53
  signingRegion?: string;
53
54
  signerConstructor?: new (options: import("@smithy/signature-v4").SignatureV4Init & import("@smithy/signature-v4").SignatureV4CryptoInit) => import("@smithy/types").RequestSigner;
55
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
54
56
  };
@@ -71,6 +71,7 @@ export declare const getRuntimeConfig: (config: CloudFormationClientConfig) => {
71
71
  },
72
72
  ) => import("@smithy/types").EndpointV2;
73
73
  tls?: boolean;
74
+ ignoreConfiguredEndpointUrls?: boolean;
74
75
  serviceConfiguredEndpoint?: never;
75
76
  authSchemePreference?: string[] | import("@smithy/types").Provider<string[]>;
76
77
  httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
@@ -90,4 +91,5 @@ export declare const getRuntimeConfig: (config: CloudFormationClientConfig) => {
90
91
  options: import("@smithy/signature-v4").SignatureV4Init &
91
92
  import("@smithy/signature-v4").SignatureV4CryptoInit,
92
93
  ) => import("@smithy/types").RequestSigner;
94
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
93
95
  };
@@ -72,6 +72,7 @@ export declare const getRuntimeConfig: (config: CloudFormationClientConfig) => {
72
72
  },
73
73
  ) => import("@smithy/types").EndpointV2;
74
74
  tls?: boolean;
75
+ ignoreConfiguredEndpointUrls?: boolean;
75
76
  serviceConfiguredEndpoint?: never;
76
77
  httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
77
78
  httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").CloudFormationHttpAuthSchemeProvider;
@@ -90,4 +91,5 @@ export declare const getRuntimeConfig: (config: CloudFormationClientConfig) => {
90
91
  options: import("@smithy/signature-v4").SignatureV4Init &
91
92
  import("@smithy/signature-v4").SignatureV4CryptoInit,
92
93
  ) => import("@smithy/types").RequestSigner;
94
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
93
95
  };
@@ -75,6 +75,7 @@ export declare const getRuntimeConfig: (config: CloudFormationClientConfig) => {
75
75
  },
76
76
  ) => import("@smithy/types").EndpointV2;
77
77
  tls?: boolean;
78
+ ignoreConfiguredEndpointUrls?: boolean;
78
79
  serviceConfiguredEndpoint?: never;
79
80
  authSchemePreference?: string[] | import("@smithy/types").Provider<string[]>;
80
81
  httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
@@ -94,4 +95,5 @@ export declare const getRuntimeConfig: (config: CloudFormationClientConfig) => {
94
95
  options: import("@smithy/signature-v4").SignatureV4Init &
95
96
  import("@smithy/signature-v4").SignatureV4CryptoInit,
96
97
  ) => import("@smithy/types").RequestSigner;
98
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
97
99
  };
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-cloudformation",
3
- "version": "3.1094.0",
3
+ "version": "3.1095.0",
4
4
  "description": "AWS SDK for JavaScript Cloudformation Client for Node.js, Browser and React Native",
5
5
  "homepage": "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-cloudformation",
6
6
  "license": "Apache-2.0",
@@ -48,12 +48,12 @@
48
48
  "test:index": "tsc --noEmit ./test/index-types.ts && node ./test/index-objects.spec.mjs"
49
49
  },
50
50
  "dependencies": {
51
- "@aws-sdk/core": "^3.976.0",
52
- "@aws-sdk/credential-provider-node": "^3.972.71",
51
+ "@aws-sdk/core": "^3.977.0",
52
+ "@aws-sdk/credential-provider-node": "^3.972.72",
53
53
  "@aws-sdk/types": "^3.974.2",
54
- "@smithy/core": "^3.29.4",
55
- "@smithy/fetch-http-handler": "^5.6.6",
56
- "@smithy/node-http-handler": "^4.9.6",
54
+ "@smithy/core": "^3.29.8",
55
+ "@smithy/fetch-http-handler": "^5.6.10",
56
+ "@smithy/node-http-handler": "^4.9.10",
57
57
  "@smithy/types": "^4.16.1",
58
58
  "tslib": "^2.6.2"
59
59
  },
@@ -1,21 +1,27 @@
1
- const { HttpResponse, HttpRequest } = require("@smithy/core/protocols");
2
- const { normalizeProvider, memoizeIdentityProvider, isIdentityExpired, doesIdentityRequireRefresh } = require("@smithy/core");
3
- const { ProviderError } = require("@smithy/core/config");
1
+ const { ProviderError, booleanSelector, SelectorType, loadConfig } = require("@smithy/core/config");
4
2
  const { setCredentialFeature } = require("@aws-sdk/core/client");
3
+ const { normalizeProvider, memoizeIdentityProvider, isIdentityExpired, doesIdentityRequireRefresh } = require("@smithy/core");
5
4
  const { SignatureV4 } = require("@smithy/signature-v4");
5
+ const { HttpResponse, HttpRequest } = require("@smithy/core/protocols");
6
6
 
7
7
  const getDateHeader = (response) => HttpResponse.isInstance(response) ? (response.headers?.date ?? response.headers?.Date) : undefined;
8
+ const getAgeHeader = (response) => HttpResponse.isInstance(response) ? (response.headers?.age ?? response.headers?.Age) : undefined;
8
9
 
9
10
  const getSkewCorrectedDate = (systemClockOffset) => new Date(Date.now() + systemClockOffset);
10
11
 
11
- const isClockSkewed = (clockTime, systemClockOffset) => Math.abs(getSkewCorrectedDate(systemClockOffset).getTime() - clockTime) >= 300000;
12
-
13
- const getUpdatedSystemClockOffset = (clockTime, currentSystemClockOffset) => {
14
- const clockTimeInMs = Date.parse(clockTime);
15
- if (isClockSkewed(clockTimeInMs, currentSystemClockOffset)) {
16
- return clockTimeInMs - Date.now();
12
+ const getUpdatedSystemClockOffset = (clockTime, currentSystemClockOffset, timeRequestSent, ageHeader) => {
13
+ if (ageHeader !== undefined) {
14
+ return currentSystemClockOffset;
15
+ }
16
+ const serverTime = Date.parse(clockTime);
17
+ const timeResponseReceived = Date.now();
18
+ if (timeRequestSent !== undefined && timeResponseReceived - timeRequestSent > 900_000) {
19
+ return currentSystemClockOffset;
17
20
  }
18
- return currentSystemClockOffset;
21
+ const candidateSkew = timeRequestSent !== undefined
22
+ ? serverTime - (timeRequestSent + timeResponseReceived) / 2
23
+ : serverTime - timeResponseReceived;
24
+ return candidateSkew;
19
25
  };
20
26
 
21
27
  const throwSigningPropertyError = (name, property) => {
@@ -57,9 +63,14 @@ class AwsSdkSigV4Signer {
57
63
  signingName = second?.signingName ?? signingName;
58
64
  }
59
65
  }
60
- signingProperties._preRequestSystemClockOffset = config.systemClockOffset;
66
+ const noSkewCorrection = (await config.disableClockSkewCorrection?.()) === true;
67
+ signingProperties._disableClockSkewCorrection = noSkewCorrection;
68
+ if (!noSkewCorrection) {
69
+ signingProperties._preRequestSystemClockOffset = config.systemClockOffset;
70
+ signingProperties._requestSentAt = Date.now();
71
+ }
61
72
  const signedRequest = await signer.sign(httpRequest, {
62
- signingDate: getSkewCorrectedDate(config.systemClockOffset),
73
+ signingDate: noSkewCorrection ? new Date() : getSkewCorrectedDate(config.systemClockOffset),
63
74
  signingRegion: signingRegion,
64
75
  signingService: signingName,
65
76
  });
@@ -68,27 +79,36 @@ class AwsSdkSigV4Signer {
68
79
  errorHandler(signingProperties) {
69
80
  return (error) => {
70
81
  const errorException = error;
71
- const serverTime = errorException.ServerTime ?? getDateHeader(errorException.$response);
72
- if (serverTime) {
73
- const config = throwSigningPropertyError("config", signingProperties.config);
74
- const preRequestOffset = signingProperties._preRequestSystemClockOffset;
75
- const newOffset = getUpdatedSystemClockOffset(serverTime, config.systemClockOffset);
76
- const isLocalCorrection = newOffset !== config.systemClockOffset;
77
- const isConcurrentCorrection = preRequestOffset !== undefined && preRequestOffset !== newOffset;
78
- const clockSkewCorrected = isLocalCorrection || isConcurrentCorrection;
79
- if (clockSkewCorrected && errorException.$metadata) {
82
+ if (!signingProperties._disableClockSkewCorrection) {
83
+ const serverTime = errorException.ServerTime ?? getDateHeader(errorException.$response);
84
+ if (serverTime) {
85
+ const config = throwSigningPropertyError("config", signingProperties.config);
86
+ const preRequestOffset = signingProperties._preRequestSystemClockOffset;
87
+ const timeRequestSent = signingProperties._requestSentAt;
88
+ const ageHeader = getAgeHeader(errorException.$response);
89
+ const newOffset = getUpdatedSystemClockOffset(serverTime, config.systemClockOffset, timeRequestSent, ageHeader);
80
90
  config.systemClockOffset = newOffset;
81
- errorException.$metadata.clockSkewCorrected = true;
91
+ const skewExceedsThreshold = Math.abs(newOffset) >= 240_000;
92
+ const isLocalCorrection = newOffset !== preRequestOffset;
93
+ const isConcurrentCorrection = preRequestOffset !== undefined && preRequestOffset !== newOffset;
94
+ if (skewExceedsThreshold && (isLocalCorrection || isConcurrentCorrection) && errorException.$metadata) {
95
+ errorException.$metadata.clockSkewCorrected = true;
96
+ }
82
97
  }
83
98
  }
84
99
  throw error;
85
100
  };
86
101
  }
87
102
  successHandler(httpResponse, signingProperties) {
103
+ if (signingProperties._disableClockSkewCorrection) {
104
+ return;
105
+ }
88
106
  const dateHeader = getDateHeader(httpResponse);
89
107
  if (dateHeader) {
90
108
  const config = throwSigningPropertyError("config", signingProperties.config);
91
- config.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, config.systemClockOffset);
109
+ const timeRequestSent = signingProperties._requestSentAt;
110
+ const ageHeader = getAgeHeader(httpResponse);
111
+ config.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, config.systemClockOffset, timeRequestSent, ageHeader);
92
112
  }
93
113
  }
94
114
  }
@@ -103,9 +123,14 @@ class AwsSdkSigV4ASigner extends AwsSdkSigV4Signer {
103
123
  const configResolvedSigningRegionSet = await config.sigv4aSigningRegionSet?.();
104
124
  const multiRegionOverride = (configResolvedSigningRegionSet ??
105
125
  signingRegionSet ?? [signingRegion]).join(",");
106
- signingProperties._preRequestSystemClockOffset = config.systemClockOffset;
126
+ const noSkewCorrection = (await config.disableClockSkewCorrection?.()) === true;
127
+ signingProperties._disableClockSkewCorrection = noSkewCorrection;
128
+ if (!noSkewCorrection) {
129
+ signingProperties._preRequestSystemClockOffset = config.systemClockOffset;
130
+ signingProperties._requestSentAt = Date.now();
131
+ }
107
132
  const signedRequest = await signer.sign(httpRequest, {
108
- signingDate: getSkewCorrectedDate(config.systemClockOffset),
133
+ signingDate: noSkewCorrection ? new Date() : getSkewCorrectedDate(config.systemClockOffset),
109
134
  signingRegion: multiRegionOverride,
110
135
  signingService: signingName,
111
136
  });
@@ -162,7 +187,7 @@ const NODE_SIGV4A_CONFIG_OPTIONS = {
162
187
  default: undefined,
163
188
  };
164
189
 
165
- const resolveAwsSdkSigV4Config = (config) => {
190
+ const bindResolveAwsSdkSigV4Config = (defaultDisableClockSkewCorrection) => (config) => {
166
191
  let inputCredentials = config.credentials;
167
192
  let isUserSupplied = !!config.credentials;
168
193
  let resolvedCredentials = undefined;
@@ -260,11 +285,11 @@ const resolveAwsSdkSigV4Config = (config) => {
260
285
  systemClockOffset,
261
286
  signingEscapePath,
262
287
  signer,
288
+ disableClockSkewCorrection: normalizeProvider(config.disableClockSkewCorrection ?? defaultDisableClockSkewCorrection),
263
289
  });
264
290
  return resolvedConfig;
265
291
  };
266
- const resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config;
267
- function normalizeCredentialProvider(config, { credentials, credentialDefaultProvider, }) {
292
+ function normalizeCredentialProvider(config, { credentials, credentialDefaultProvider }) {
268
293
  let credentialsProvider;
269
294
  if (credentials) {
270
295
  if (!credentials?.memoized) {
@@ -299,6 +324,19 @@ function bindCallerConfig(config, credentialsProvider) {
299
324
  return fn;
300
325
  }
301
326
 
327
+ const ENV_DISABLE_CLOCK_SKEW_CORRECTION = "AWS_DISABLE_CLOCK_SKEW_CORRECTION";
328
+ const CONFIG_DISABLE_CLOCK_SKEW_CORRECTION = "disable_clock_skew_correction";
329
+ const NODE_DISABLE_CLOCK_SKEW_CORRECTION_CONFIG_OPTIONS = {
330
+ environmentVariableSelector: (env) => booleanSelector(env, ENV_DISABLE_CLOCK_SKEW_CORRECTION, SelectorType.ENV),
331
+ configFileSelector: (profile) => booleanSelector(profile, CONFIG_DISABLE_CLOCK_SKEW_CORRECTION, SelectorType.CONFIG),
332
+ default: false,
333
+ };
334
+
335
+ const DEFAULT_DISABLE_CLOCK_SKEW_CORRECTION = loadConfig(NODE_DISABLE_CLOCK_SKEW_CORRECTION_CONFIG_OPTIONS);
336
+
337
+ const resolveAwsSdkSigV4Config = bindResolveAwsSdkSigV4Config(DEFAULT_DISABLE_CLOCK_SKEW_CORRECTION);
338
+ const resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config;
339
+
302
340
  exports.AWSSDKSigV4Signer = AWSSDKSigV4Signer;
303
341
  exports.AwsSdkSigV4ASigner = AwsSdkSigV4ASigner;
304
342
  exports.AwsSdkSigV4Signer = AwsSdkSigV4Signer;
@@ -281,12 +281,18 @@ function jsonReviver(key, value, context) {
281
281
  if (context?.source) {
282
282
  const numericString = context.source;
283
283
  if (typeof value === "number") {
284
- if (value > Number.MAX_SAFE_INTEGER || value < Number.MIN_SAFE_INTEGER || numericString !== String(value)) {
285
- const isFractional = numericString.includes(".");
286
- if (isFractional) {
284
+ const inSafeRange = value <= Number.MAX_SAFE_INTEGER && value >= Number.MIN_SAFE_INTEGER;
285
+ if (!inSafeRange || numericString !== String(value)) {
286
+ if (inSafeRange && /[eE]/.test(numericString) && String(Number(numericString)) === String(value)) {
287
+ return value;
288
+ }
289
+ if (isFractionalNumeric(numericString)) {
287
290
  return new NumericValue(numericString, "bigDecimal");
288
291
  }
289
292
  else {
293
+ if (/[eE]/.test(numericString)) {
294
+ return BigInt(Number(numericString));
295
+ }
290
296
  return BigInt(numericString);
291
297
  }
292
298
  }
@@ -294,25 +300,114 @@ function jsonReviver(key, value, context) {
294
300
  }
295
301
  return value;
296
302
  }
303
+ function isFractionalNumeric(s) {
304
+ const dotIndex = s.indexOf(".");
305
+ if (dotIndex === -1) {
306
+ return false;
307
+ }
308
+ const eIndex = s.search(/[eE]/);
309
+ if (eIndex === -1) {
310
+ return true;
311
+ }
312
+ const fracDigits = eIndex - dotIndex - 1;
313
+ const exp = parseInt(s.slice(eIndex + 1), 10);
314
+ return exp < fracDigits;
315
+ }
316
+
317
+ const REVIVER_SYMBOL = Symbol.for("@aws-sdk/reviver");
318
+ function needsReviver(schema) {
319
+ const ns = NormalizedSchema.of(schema);
320
+ const raw = ns.getSchema();
321
+ if (Array.isArray(raw) && ns.isStructSchema()) {
322
+ if (REVIVER_SYMBOL in raw) {
323
+ return raw[REVIVER_SYMBOL];
324
+ }
325
+ const result = _check(ns, new Set());
326
+ raw[REVIVER_SYMBOL] = result;
327
+ return result;
328
+ }
329
+ return _check(ns, new Set());
330
+ }
331
+ function _check(ns, seen) {
332
+ const raw = ns.getSchema();
333
+ if (seen.has(raw)) {
334
+ return false;
335
+ }
336
+ seen.add(raw);
337
+ if (ns.isBigIntegerSchema() || ns.isBigDecimalSchema()) {
338
+ return true;
339
+ }
340
+ if (ns.isStructSchema()) {
341
+ for (const [, memberSchema] of ns.structIterator()) {
342
+ if (_check(memberSchema, seen)) {
343
+ return true;
344
+ }
345
+ }
346
+ }
347
+ else if (ns.isListSchema() || ns.isMapSchema()) {
348
+ if (_check(ns.getValueSchema(), seen)) {
349
+ return true;
350
+ }
351
+ }
352
+ else if (ns.isDocumentSchema()) {
353
+ return true;
354
+ }
355
+ return false;
356
+ }
297
357
 
298
358
  const collectBodyString = (streamBody, context) => collectBody(streamBody, context).then((body) => (context?.utf8Encoder ?? toUtf8)(body));
299
359
 
300
- const parseJsonBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {
301
- if (encoded.length) {
360
+ let canParseBuffer;
361
+ function detectBufferParsing() {
362
+ if (canParseBuffer === undefined) {
302
363
  try {
303
- return JSON.parse(encoded);
364
+ if (typeof Buffer !== "function") {
365
+ canParseBuffer = false;
366
+ }
367
+ else {
368
+ const result = JSON.parse(Buffer.from([0x7b, 0x7d]));
369
+ canParseBuffer = result !== null && typeof result === "object";
370
+ }
304
371
  }
305
- catch (e) {
306
- if (e?.name === "SyntaxError") {
307
- Object.defineProperty(e, "$responseBodyText", {
308
- value: encoded,
309
- });
372
+ catch {
373
+ canParseBuffer = false;
374
+ }
375
+ }
376
+ return canParseBuffer;
377
+ }
378
+
379
+ async function parseJsonBody(streamBody, context, schema) {
380
+ let parsingInput;
381
+ if (detectBufferParsing() && typeof streamBody?.[Symbol.asyncIterator] === "function") {
382
+ const buffer = await collectBody(streamBody, context);
383
+ if (typeof Buffer === "function") {
384
+ if (Buffer.isBuffer(buffer)) {
385
+ parsingInput = buffer;
386
+ }
387
+ else {
388
+ parsingInput = Buffer.from(buffer.buffer, buffer.byteOffset, buffer.byteLength);
310
389
  }
311
- throw e;
312
390
  }
313
391
  }
314
- return {};
315
- });
392
+ if (!parsingInput) {
393
+ parsingInput = await collectBodyString(streamBody, context);
394
+ }
395
+ if (parsingInput.length === 0) {
396
+ return {};
397
+ }
398
+ const reviver = schema && needsReviver(schema) ? jsonReviver : undefined;
399
+ try {
400
+ return JSON.parse(parsingInput, reviver);
401
+ }
402
+ catch (e) {
403
+ if (e?.name === "SyntaxError") {
404
+ Object.defineProperty(e, "$responseBodyText", {
405
+ value: typeof parsingInput === "string" ? parsingInput : parsingInput.toString("utf8"),
406
+ });
407
+ }
408
+ throw e;
409
+ }
410
+ }
316
411
  const parseJsonErrorBody = async (errorBody, context) => {
317
412
  const value = await parseJsonBody(errorBody, context);
318
413
  value.message = value.message ?? value.Message;
@@ -366,6 +461,10 @@ const loadErrorCode = ({ headers }, data, order) => {
366
461
  }
367
462
  };
368
463
 
464
+ function writeKey(obj) {
465
+ Object.defineProperty(obj, "__proto__", { value: undefined, writable: true, enumerable: true, configurable: true });
466
+ }
467
+
369
468
  class JsonShapeDeserializer extends SerdeContextConfig {
370
469
  settings;
371
470
  constructor(settings) {
@@ -373,7 +472,8 @@ class JsonShapeDeserializer extends SerdeContextConfig {
373
472
  this.settings = settings;
374
473
  }
375
474
  async read(schema, data) {
376
- return this._read(schema, typeof data === "string" ? JSON.parse(data, jsonReviver) : await parseJsonBody(data, this.serdeContext));
475
+ const reviver = needsReviver(schema) ? jsonReviver : undefined;
476
+ return this._read(schema, typeof data === "string" ? JSON.parse(data, reviver) : await parseJsonBody(data, this.serdeContext, schema));
377
477
  }
378
478
  readObject(schema, data) {
379
479
  return this._read(schema, data);
@@ -434,6 +534,9 @@ class JsonShapeDeserializer extends SerdeContextConfig {
434
534
  const mapMember = ns.getValueSchema();
435
535
  const out = {};
436
536
  for (const _k in value) {
537
+ if (_k === "__proto__") {
538
+ writeKey(out);
539
+ }
437
540
  out[_k] = this._read(mapMember, value[_k]);
438
541
  }
439
542
  return out;
@@ -492,6 +595,9 @@ class JsonShapeDeserializer extends SerdeContextConfig {
492
595
  if (isObject) {
493
596
  const out = Array.isArray(value) ? [] : {};
494
597
  for (const k in value) {
598
+ if (k === "__proto__") {
599
+ writeKey(out);
600
+ }
495
601
  const v = value[k];
496
602
  if (v instanceof NumericValue) {
497
603
  out[k] = v;
@@ -617,6 +723,9 @@ class JsonShapeSerializer extends SerdeContextConfig {
617
723
  const { $unknown } = record;
618
724
  if (Array.isArray($unknown)) {
619
725
  const [k, v] = $unknown;
726
+ if (k === "__proto__") {
727
+ writeKey(out);
728
+ }
620
729
  out[k] = this._write(15, v);
621
730
  }
622
731
  }
@@ -649,6 +758,9 @@ class JsonShapeSerializer extends SerdeContextConfig {
649
758
  for (const _k in value) {
650
759
  const _v = value[_k];
651
760
  if (sparse || _v != null) {
761
+ if (_k === "__proto__") {
762
+ writeKey(out);
763
+ }
652
764
  out[_k] = this._write(mapMember, _v);
653
765
  }
654
766
  }
@@ -714,6 +826,9 @@ class JsonShapeSerializer extends SerdeContextConfig {
714
826
  const out = Array.isArray(value) ? [] : {};
715
827
  for (const k in value) {
716
828
  const v = value[k];
829
+ if (k === "__proto__") {
830
+ writeKey(out);
831
+ }
717
832
  if (v instanceof NumericValue) {
718
833
  this.useReplacer = true;
719
834
  out[k] = v;
@@ -1037,6 +1152,9 @@ class XmlShapeDeserializer extends SerdeContextConfig {
1037
1152
  for (const entry of entries) {
1038
1153
  const key = entry[keyProperty];
1039
1154
  const value = entry[valueProperty];
1155
+ if (key === "__proto__") {
1156
+ writeKey(buffer);
1157
+ }
1040
1158
  buffer[key] = this.readSchema(memberNs, value);
1041
1159
  }
1042
1160
  return buffer;
@@ -10,9 +10,14 @@ export class AwsSdkSigV4ASigner extends AwsSdkSigV4Signer {
10
10
  const configResolvedSigningRegionSet = await config.sigv4aSigningRegionSet?.();
11
11
  const multiRegionOverride = (configResolvedSigningRegionSet ??
12
12
  signingRegionSet ?? [signingRegion]).join(",");
13
- signingProperties._preRequestSystemClockOffset = config.systemClockOffset;
13
+ const noSkewCorrection = (await config.disableClockSkewCorrection?.()) === true;
14
+ signingProperties._disableClockSkewCorrection = noSkewCorrection;
15
+ if (!noSkewCorrection) {
16
+ signingProperties._preRequestSystemClockOffset = config.systemClockOffset;
17
+ signingProperties._requestSentAt = Date.now();
18
+ }
14
19
  const signedRequest = await signer.sign(httpRequest, {
15
- signingDate: getSkewCorrectedDate(config.systemClockOffset),
20
+ signingDate: noSkewCorrection ? new Date() : getSkewCorrectedDate(config.systemClockOffset),
16
21
  signingRegion: multiRegionOverride,
17
22
  signingService: signingName,
18
23
  });
@@ -1,5 +1,5 @@
1
1
  import { HttpRequest } from "@smithy/core/protocols";
2
- import { getDateHeader, getSkewCorrectedDate, getUpdatedSystemClockOffset } from "../utils";
2
+ import { getAgeHeader, getDateHeader, getSkewCorrectedDate, getUpdatedSystemClockOffset } from "../utils";
3
3
  const throwSigningPropertyError = (name, property) => {
4
4
  if (!property) {
5
5
  throw new Error(`Property \`${name}\` is not resolved for AWS SDK SigV4Auth`);
@@ -39,9 +39,14 @@ export class AwsSdkSigV4Signer {
39
39
  signingName = second?.signingName ?? signingName;
40
40
  }
41
41
  }
42
- signingProperties._preRequestSystemClockOffset = config.systemClockOffset;
42
+ const noSkewCorrection = (await config.disableClockSkewCorrection?.()) === true;
43
+ signingProperties._disableClockSkewCorrection = noSkewCorrection;
44
+ if (!noSkewCorrection) {
45
+ signingProperties._preRequestSystemClockOffset = config.systemClockOffset;
46
+ signingProperties._requestSentAt = Date.now();
47
+ }
43
48
  const signedRequest = await signer.sign(httpRequest, {
44
- signingDate: getSkewCorrectedDate(config.systemClockOffset),
49
+ signingDate: noSkewCorrection ? new Date() : getSkewCorrectedDate(config.systemClockOffset),
45
50
  signingRegion: signingRegion,
46
51
  signingService: signingName,
47
52
  });
@@ -50,27 +55,36 @@ export class AwsSdkSigV4Signer {
50
55
  errorHandler(signingProperties) {
51
56
  return (error) => {
52
57
  const errorException = error;
53
- const serverTime = errorException.ServerTime ?? getDateHeader(errorException.$response);
54
- if (serverTime) {
55
- const config = throwSigningPropertyError("config", signingProperties.config);
56
- const preRequestOffset = signingProperties._preRequestSystemClockOffset;
57
- const newOffset = getUpdatedSystemClockOffset(serverTime, config.systemClockOffset);
58
- const isLocalCorrection = newOffset !== config.systemClockOffset;
59
- const isConcurrentCorrection = preRequestOffset !== undefined && preRequestOffset !== newOffset;
60
- const clockSkewCorrected = isLocalCorrection || isConcurrentCorrection;
61
- if (clockSkewCorrected && errorException.$metadata) {
58
+ if (!signingProperties._disableClockSkewCorrection) {
59
+ const serverTime = errorException.ServerTime ?? getDateHeader(errorException.$response);
60
+ if (serverTime) {
61
+ const config = throwSigningPropertyError("config", signingProperties.config);
62
+ const preRequestOffset = signingProperties._preRequestSystemClockOffset;
63
+ const timeRequestSent = signingProperties._requestSentAt;
64
+ const ageHeader = getAgeHeader(errorException.$response);
65
+ const newOffset = getUpdatedSystemClockOffset(serverTime, config.systemClockOffset, timeRequestSent, ageHeader);
62
66
  config.systemClockOffset = newOffset;
63
- errorException.$metadata.clockSkewCorrected = true;
67
+ const skewExceedsThreshold = Math.abs(newOffset) >= 240_000;
68
+ const isLocalCorrection = newOffset !== preRequestOffset;
69
+ const isConcurrentCorrection = preRequestOffset !== undefined && preRequestOffset !== newOffset;
70
+ if (skewExceedsThreshold && (isLocalCorrection || isConcurrentCorrection) && errorException.$metadata) {
71
+ errorException.$metadata.clockSkewCorrected = true;
72
+ }
64
73
  }
65
74
  }
66
75
  throw error;
67
76
  };
68
77
  }
69
78
  successHandler(httpResponse, signingProperties) {
79
+ if (signingProperties._disableClockSkewCorrection) {
80
+ return;
81
+ }
70
82
  const dateHeader = getDateHeader(httpResponse);
71
83
  if (dateHeader) {
72
84
  const config = throwSigningPropertyError("config", signingProperties.config);
73
- config.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, config.systemClockOffset);
85
+ const timeRequestSent = signingProperties._requestSentAt;
86
+ const ageHeader = getAgeHeader(httpResponse);
87
+ config.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, config.systemClockOffset, timeRequestSent, ageHeader);
74
88
  }
75
89
  }
76
90
  }
@@ -0,0 +1 @@
1
+ export const DEFAULT_DISABLE_CLOCK_SKEW_CORRECTION = false;
@@ -0,0 +1,3 @@
1
+ import { loadConfig } from "@smithy/core/config";
2
+ import { NODE_DISABLE_CLOCK_SKEW_CORRECTION_CONFIG_OPTIONS } from "./clock-skew-node-config";
3
+ export const DEFAULT_DISABLE_CLOCK_SKEW_CORRECTION = loadConfig(NODE_DISABLE_CLOCK_SKEW_CORRECTION_CONFIG_OPTIONS);