@cdk8s/awscdk-resolver 0.0.643 → 0.0.644

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 (200) 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 +2 -1
  4. package/node_modules/@aws-sdk/client-cloudformation/dist-es/models/enums.js +1 -0
  5. package/node_modules/@aws-sdk/client-cloudformation/dist-types/commands/DescribeChangeSetCommand.d.ts +1 -1
  6. package/node_modules/@aws-sdk/client-cloudformation/dist-types/models/enums.d.ts +1 -0
  7. package/node_modules/@aws-sdk/client-cloudformation/dist-types/models/models_0.d.ts +7 -3
  8. package/node_modules/@aws-sdk/client-cloudformation/dist-types/ts3.4/models/enums.d.ts +1 -0
  9. package/node_modules/@aws-sdk/client-cloudformation/package.json +6 -6
  10. package/node_modules/@aws-sdk/core/dist-cjs/submodules/protocols/index.js +856 -57
  11. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js +8 -5
  12. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsJsonRpcProtocol.js +1 -1
  13. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsRestJsonProtocol.js +1 -1
  14. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonSettings.js +1 -0
  15. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/{JsonCodec.js → codec-v1/JsonCodec.js} +1 -1
  16. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v1/JsonSettings.js +1 -0
  17. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/{JsonShapeDeserializer.js → codec-v1/JsonShapeDeserializer.js} +6 -6
  18. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/{JsonShapeSerializer.js → codec-v1/JsonShapeSerializer.js} +3 -3
  19. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.js +103 -0
  20. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v2/JsonCodec2.js +20 -0
  21. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/{experimental/BufferJsonShapeDeserializer.js → codec-v2/JsonShapeDeserializer2.js} +38 -18
  22. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/{experimental/ByteJsonShapeSerializer.js → codec-v2/JsonShapeSerializer2.js} +66 -60
  23. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/index.d.ts +9 -6
  24. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJson1_0Protocol.d.ts +1 -1
  25. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJson1_1Protocol.d.ts +1 -1
  26. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJsonRpcProtocol.d.ts +1 -1
  27. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsRestJsonProtocol.d.ts +1 -1
  28. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/JsonSettings.d.ts +7 -0
  29. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/{JsonCodec.d.ts → codec-v1/JsonCodec.d.ts} +4 -8
  30. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v1/JsonSettings.d.ts +7 -0
  31. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/{JsonShapeDeserializer.d.ts → codec-v1/JsonShapeDeserializer.d.ts} +3 -2
  32. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/{JsonShapeSerializer.d.ts → codec-v1/JsonShapeSerializer.d.ts} +3 -2
  33. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.d.ts +51 -0
  34. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v2/JsonCodec2.d.ts +13 -0
  35. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/{experimental/BufferJsonShapeDeserializer.d.ts → codec-v2/JsonShapeDeserializer2.d.ts} +4 -3
  36. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/{experimental/ByteJsonShapeSerializer.d.ts → codec-v2/JsonShapeSerializer2.d.ts} +19 -16
  37. package/node_modules/@aws-sdk/core/dist-types/ts3.4/api-extractor-type-index.d.ts +4 -7
  38. package/node_modules/@aws-sdk/core/dist-types/ts3.4/index.d.ts +61 -21
  39. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/AccountIdEndpointModeConfigResolver.d.ts +13 -27
  40. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/AccountIdEndpointModeConstants.d.ts +4 -16
  41. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/NodeAccountIdEndpointModeConfigOptions.d.ts +5 -14
  42. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/index.d.ts +16 -5
  43. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/emitWarningIfUnsupportedVersion.d.ts +4 -11
  44. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.browser.d.ts +107 -47
  45. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.d.ts +112 -39
  46. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.native.d.ts +107 -48
  47. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/longPollMiddleware.d.ts +13 -14
  48. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-host-header/hostHeaderMiddleware.d.ts +25 -35
  49. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-logger/loggerMiddleware.d.ts +14 -4
  50. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/configuration.d.ts +2 -6
  51. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.browser.d.ts +2 -5
  52. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.d.ts +2 -5
  53. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.browser.d.ts +2 -6
  54. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.d.ts +2 -10
  55. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.native.d.ts +2 -6
  56. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/check-features.d.ts +16 -20
  57. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/configurations.d.ts +21 -44
  58. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/constants.d.ts +7 -7
  59. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/encode-features.d.ts +2 -5
  60. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/user-agent-middleware.d.ts +18 -18
  61. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/awsRegionConfig.d.ts +8 -11
  62. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/extensions.d.ts +14 -16
  63. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.browser.d.ts +1 -4
  64. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.d.ts +7 -14
  65. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.native.d.ts +1 -4
  66. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/setCredentialFeature.d.ts +6 -7
  67. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/setFeature.d.ts +6 -12
  68. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/setTokenFeature.d.ts +6 -7
  69. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/aws.d.ts +2 -2
  70. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/isVirtualHostableS3Bucket.d.ts +4 -5
  71. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/parseArn.d.ts +2 -7
  72. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/partition.d.ts +28 -38
  73. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/partitions.d.ts +647 -638
  74. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/isIpAddress.d.ts +1 -1
  75. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/resolveDefaultAwsRegionalEndpointsConfig.d.ts +29 -56
  76. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/resolveEndpoint.d.ts +1 -1
  77. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/EndpointError.d.ts +1 -1
  78. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/EndpointRuleObject.d.ts +6 -1
  79. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/ErrorRuleObject.d.ts +1 -1
  80. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/RuleSetObject.d.ts +1 -1
  81. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/TreeRuleObject.d.ts +1 -1
  82. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/shared.d.ts +12 -1
  83. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/configurations.d.ts +4 -7
  84. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/createUserAgentStringParsingProvider.d.ts +7 -14
  85. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.browser.d.ts +7 -2
  86. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.d.ts +18 -27
  87. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.native.d.ts +13 -18
  88. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/crt-availability.d.ts +3 -8
  89. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/defaultUserAgent.d.ts +17 -28
  90. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/getRuntimeUserAgentPair.d.ts +2 -6
  91. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/is-crt-available.d.ts +2 -5
  92. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/nodeAppIdConfigOptions.d.ts +4 -13
  93. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.d.ts +9 -10
  94. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.d.ts +39 -44
  95. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/NODE_AUTH_SCHEME_PREFERENCE_OPTIONS.d.ts +2 -5
  96. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.browser.d.ts +1 -6
  97. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.d.ts +1 -7
  98. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/clock-skew-node-config.d.ts +4 -13
  99. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/index.d.ts +23 -7
  100. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.d.ts +13 -38
  101. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.d.ts +57 -133
  102. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/index.browser.d.ts +32 -11
  103. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/index.d.ts +32 -9
  104. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getArrayForCommaSeparatedString.d.ts +1 -8
  105. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getBearerTokenEnvKey.d.ts +1 -6
  106. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getDateHeader.d.ts +2 -8
  107. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.d.ts +1 -8
  108. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.d.ts +6 -26
  109. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/index.d.ts +4 -4
  110. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/isClockSkewed.d.ts +1 -9
  111. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/ConfigurableSerdeContext.d.ts +5 -8
  112. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/ProtocolLib.d.ts +40 -74
  113. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/UnionSerde.d.ts +9 -24
  114. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/cbor/AwsSmithyRpcV2CborProtocol.d.ts +36 -25
  115. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/coercing-serializers.d.ts +3 -18
  116. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/common.d.ts +5 -2
  117. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/index.d.ts +30 -22
  118. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_0Protocol.d.ts +21 -22
  119. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_1Protocol.d.ts +21 -22
  120. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJsonRpcProtocol.d.ts +49 -29
  121. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsRestJsonProtocol.d.ts +49 -36
  122. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonSettings.d.ts +4 -0
  123. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/awsExpectUnion.d.ts +1 -7
  124. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonCodec.d.ts +11 -0
  125. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonSettings.d.ts +4 -0
  126. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonShapeDeserializer.d.ts +13 -0
  127. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonShapeSerializer.d.ts +18 -0
  128. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.d.ts +27 -0
  129. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonCodec2.d.ts +9 -0
  130. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonShapeDeserializer2.d.ts +15 -0
  131. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonShapeSerializer2.d.ts +39 -0
  132. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/detectBufferParsing.d.ts +1 -1
  133. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/jsonReplacer.d.ts +7 -21
  134. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/jsonReviver.d.ts +7 -15
  135. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/needsReviver.d.ts +2 -11
  136. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/parseJsonBody.d.ts +14 -22
  137. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/AwsEc2QueryProtocol.d.ts +18 -27
  138. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/AwsQueryProtocol.d.ts +57 -49
  139. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/QuerySerializerSettings.d.ts +7 -13
  140. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/QueryShapeSerializer.d.ts +21 -16
  141. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/writeKey.d.ts +1 -4
  142. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/AwsRestXmlProtocol.d.ts +47 -31
  143. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/XmlCodec.d.ts +17 -14
  144. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/XmlShapeDeserializer.d.ts +15 -20
  145. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/XmlShapeSerializer.d.ts +21 -21
  146. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/parseXmlBody.d.ts +4 -13
  147. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/simpleFormatXml.d.ts +1 -6
  148. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/index.d.ts +3 -3
  149. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/util-arn-parser/arn.d.ts +14 -32
  150. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/util-format-url/format-url.d.ts +4 -2
  151. package/node_modules/@aws-sdk/core/package.json +3 -3
  152. package/node_modules/@aws-sdk/credential-provider-env/package.json +3 -3
  153. package/node_modules/@aws-sdk/credential-provider-http/package.json +5 -5
  154. package/node_modules/@aws-sdk/credential-provider-ini/package.json +11 -11
  155. package/node_modules/@aws-sdk/credential-provider-login/package.json +4 -4
  156. package/node_modules/@aws-sdk/credential-provider-node/package.json +9 -9
  157. package/node_modules/@aws-sdk/credential-provider-process/package.json +3 -3
  158. package/node_modules/@aws-sdk/credential-provider-sso/package.json +5 -5
  159. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +4 -4
  160. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/index.js +1 -1
  161. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/index.js +1 -1
  162. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/index.js +1 -1
  163. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/index.js +1 -1
  164. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/index.js +1 -1
  165. package/node_modules/@aws-sdk/nested-clients/package.json +6 -6
  166. package/node_modules/@aws-sdk/signature-v4-multi-region/package.json +2 -2
  167. package/node_modules/@aws-sdk/token-providers/package.json +4 -4
  168. package/node_modules/@smithy/core/dist-cjs/submodules/cbor/index.js +1561 -337
  169. package/node_modules/@smithy/core/dist-es/submodules/cbor/CborCodec.js +4 -205
  170. package/node_modules/@smithy/core/dist-es/submodules/cbor/cbor-encode.js +1 -1
  171. package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v1/CborShapeDeserializer.js +113 -0
  172. package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v1/CborShapeSerializer.js +103 -0
  173. package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v2/CborShapeDeserializer2.js +621 -0
  174. package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v2/CborShapeSerializer2.js +602 -0
  175. package/node_modules/@smithy/core/dist-es/submodules/cbor/index.js +5 -1
  176. package/node_modules/@smithy/core/dist-types/submodules/cbor/CborCodec.d.ts +5 -27
  177. package/node_modules/@smithy/core/dist-types/submodules/cbor/SmithyRpcV2CborProtocol.d.ts +2 -2
  178. package/node_modules/@smithy/core/dist-types/submodules/cbor/codec-v1/CborShapeDeserializer.d.ts +13 -0
  179. package/node_modules/@smithy/core/dist-types/submodules/cbor/codec-v1/CborShapeSerializer.d.ts +15 -0
  180. package/node_modules/@smithy/core/dist-types/submodules/cbor/codec-v2/CborShapeDeserializer2.d.ts +18 -0
  181. package/node_modules/@smithy/core/dist-types/submodules/cbor/codec-v2/CborShapeSerializer2.d.ts +35 -0
  182. package/node_modules/@smithy/core/dist-types/submodules/cbor/index.d.ts +5 -1
  183. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/CborCodec.d.ts +5 -27
  184. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/SmithyRpcV2CborProtocol.d.ts +2 -2
  185. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/codec-v1/CborShapeDeserializer.d.ts +13 -0
  186. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/codec-v1/CborShapeSerializer.d.ts +15 -0
  187. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/codec-v2/CborShapeDeserializer2.d.ts +18 -0
  188. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/codec-v2/CborShapeSerializer2.d.ts +35 -0
  189. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/index.d.ts +5 -1
  190. package/node_modules/@smithy/core/package.json +2 -1
  191. package/node_modules/@smithy/credential-provider-imds/package.json +2 -2
  192. package/node_modules/@smithy/fetch-http-handler/package.json +2 -2
  193. package/node_modules/@smithy/node-http-handler/package.json +2 -2
  194. package/node_modules/@smithy/signature-v4/package.json +2 -2
  195. package/package.json +5 -5
  196. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonCodec.d.ts +0 -19
  197. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonShapeDeserializer.d.ts +0 -13
  198. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonShapeSerializer.d.ts +0 -28
  199. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/experimental/BufferJsonShapeDeserializer.d.ts +0 -29
  200. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/experimental/ByteJsonShapeSerializer.d.ts +0 -57
@@ -1,13 +1,14 @@
1
1
  export { AwsSmithyRpcV2CborProtocol } from "./cbor/AwsSmithyRpcV2CborProtocol";
2
- export { _toStr, _toBool, _toNum } from "./coercing-serializers";
3
2
  export { AwsJson1_0Protocol } from "./json/AwsJson1_0Protocol";
4
3
  export { AwsJson1_1Protocol } from "./json/AwsJson1_1Protocol";
5
4
  export { AwsJsonRpcProtocol } from "./json/AwsJsonRpcProtocol";
6
5
  export { AwsRestJsonProtocol } from "./json/AwsRestJsonProtocol";
7
- export { JsonCodec } from "./json/JsonCodec";
8
- export { JsonShapeDeserializer } from "./json/JsonShapeDeserializer";
9
- export { JsonShapeSerializer } from "./json/JsonShapeSerializer";
10
- export { awsExpectUnion } from "./json/awsExpectUnion";
6
+ export { JsonCodec } from "./json/codec-v1/JsonCodec";
7
+ export { JsonShapeDeserializer } from "./json/codec-v1/JsonShapeDeserializer";
8
+ export { JsonShapeSerializer } from "./json/codec-v1/JsonShapeSerializer";
9
+ export { JsonCodec2 } from "./json/codec-v2/JsonCodec2";
10
+ export { JsonShapeDeserializer2 } from "./json/codec-v2/JsonShapeDeserializer2";
11
+ export { JsonShapeSerializer2 } from "./json/codec-v2/JsonShapeSerializer2";
11
12
  export { parseJsonBody, parseJsonErrorBody, loadRestJsonErrorCode, loadJsonRpcErrorCode } from "./json/parseJsonBody";
12
13
  export { AwsEc2QueryProtocol } from "./query/AwsEc2QueryProtocol";
13
14
  export { AwsQueryProtocol } from "./query/AwsQueryProtocol";
@@ -17,3 +18,5 @@ export { XmlCodec } from "./xml/XmlCodec";
17
18
  export { XmlShapeDeserializer } from "./xml/XmlShapeDeserializer";
18
19
  export { XmlShapeSerializer } from "./xml/XmlShapeSerializer";
19
20
  export { parseXmlBody, parseXmlErrorBody, loadRestXmlErrorCode } from "./xml/parseXmlBody";
21
+ export { awsExpectUnion } from "./json/awsExpectUnion";
22
+ export { _toStr, _toBool, _toNum } from "./coercing-serializers";
@@ -1,7 +1,7 @@
1
1
  import { RpcProtocol } from "@smithy/core/protocols";
2
2
  import { deref, NormalizedSchema } from "@smithy/core/schema";
3
3
  import { ProtocolLib } from "../ProtocolLib";
4
- import { JsonCodec } from "./JsonCodec";
4
+ import { JsonCodec } from "./codec-v1/JsonCodec";
5
5
  import { loadJsonRpcErrorCode } from "./parseJsonBody";
6
6
  export class AwsJsonRpcProtocol extends RpcProtocol {
7
7
  serializer;
@@ -1,7 +1,7 @@
1
1
  import { HttpBindingProtocol, HttpInterceptingShapeDeserializer, HttpInterceptingShapeSerializer, } from "@smithy/core/protocols";
2
2
  import { NormalizedSchema } from "@smithy/core/schema";
3
3
  import { ProtocolLib } from "../ProtocolLib";
4
- import { JsonCodec } from "./JsonCodec";
4
+ import { JsonCodec } from "./codec-v1/JsonCodec";
5
5
  import { loadRestJsonErrorCode } from "./parseJsonBody";
6
6
  export class AwsRestJsonProtocol extends HttpBindingProtocol {
7
7
  serializer;
@@ -1,4 +1,4 @@
1
- import { SerdeContextConfig } from "../ConfigurableSerdeContext";
1
+ import { SerdeContextConfig } from "../../ConfigurableSerdeContext";
2
2
  import { JsonShapeDeserializer } from "./JsonShapeDeserializer";
3
3
  import { JsonShapeSerializer } from "./JsonShapeSerializer";
4
4
  export class JsonCodec extends SerdeContextConfig {
@@ -2,12 +2,12 @@ import { determineTimestampFormat } from "@smithy/core/protocols";
2
2
  import { NormalizedSchema } from "@smithy/core/schema";
3
3
  import { LazyJsonString, NumericValue, parseEpochTimestamp, parseRfc3339DateTimeWithOffset, parseRfc7231DateTime, } from "@smithy/core/serde";
4
4
  import { fromBase64 } from "@smithy/core/serde";
5
- import { SerdeContextConfig } from "../ConfigurableSerdeContext";
6
- import { UnionSerde } from "../UnionSerde";
7
- import { jsonReviver } from "./jsonReviver";
8
- import { needsReviver } from "./needsReviver";
9
- import { parseJsonBody } from "./parseJsonBody";
10
- import { writeKey } from "../writeKey";
5
+ import { SerdeContextConfig } from "../../ConfigurableSerdeContext";
6
+ import { UnionSerde } from "../../UnionSerde";
7
+ import { jsonReviver } from "../jsonReviver";
8
+ import { needsReviver } from "../needsReviver";
9
+ import { parseJsonBody } from "../parseJsonBody";
10
+ import { writeKey } from "../../writeKey";
11
11
  export class JsonShapeDeserializer extends SerdeContextConfig {
12
12
  settings;
13
13
  constructor(settings) {
@@ -1,9 +1,9 @@
1
1
  import { determineTimestampFormat } from "@smithy/core/protocols";
2
2
  import { NormalizedSchema } from "@smithy/core/schema";
3
3
  import { dateToUtcString, generateIdempotencyToken, LazyJsonString, NumericValue, toBase64 } from "@smithy/core/serde";
4
- import { SerdeContextConfig } from "../ConfigurableSerdeContext";
5
- import { JsonReplacer } from "./jsonReplacer";
6
- import { writeKey } from "../writeKey";
4
+ import { SerdeContextConfig } from "../../ConfigurableSerdeContext";
5
+ import { JsonReplacer } from "../jsonReplacer";
6
+ import { writeKey } from "../../writeKey";
7
7
  export class JsonShapeSerializer extends SerdeContextConfig {
8
8
  settings;
9
9
  buffer;
@@ -0,0 +1,103 @@
1
+ import { toUtf8 } from "@smithy/core/serde";
2
+ export class JsonBytesStringAdapter extends Uint8Array {
3
+ string = null;
4
+ static allocUnsafe(bytes) {
5
+ if (typeof Buffer === "function") {
6
+ const buffer = Buffer.allocUnsafe(bytes);
7
+ return new JsonBytesStringAdapter(buffer.buffer, buffer.byteOffset, buffer.byteLength);
8
+ }
9
+ return new JsonBytesStringAdapter(bytes);
10
+ }
11
+ toString() {
12
+ return this.s();
13
+ }
14
+ valueOf() {
15
+ return this.s();
16
+ }
17
+ includes(searchString, position) {
18
+ if (typeof searchString === "string") {
19
+ return this.s().includes(searchString, position);
20
+ }
21
+ return Uint8Array.prototype.includes.call(this, searchString, position);
22
+ }
23
+ indexOf(searchString, position) {
24
+ if (typeof searchString === "string") {
25
+ return this.s().indexOf(searchString, position);
26
+ }
27
+ return Uint8Array.prototype.indexOf.call(this, searchString, position);
28
+ }
29
+ lastIndexOf(searchString, position) {
30
+ if (typeof searchString === "string") {
31
+ return this.s().lastIndexOf(searchString, position);
32
+ }
33
+ const fn = Uint8Array.prototype.lastIndexOf;
34
+ if (position !== undefined) {
35
+ return fn.call(this, searchString, position);
36
+ }
37
+ return fn.call(this, searchString);
38
+ }
39
+ startsWith(searchString, position) {
40
+ return this.s().startsWith(searchString, position);
41
+ }
42
+ endsWith(searchString, endPosition) {
43
+ return this.s().endsWith(searchString, endPosition);
44
+ }
45
+ match(regexp) {
46
+ return this.s().match(regexp);
47
+ }
48
+ replace(searchValue, replaceValue) {
49
+ return this.s().replace(searchValue, replaceValue);
50
+ }
51
+ search(regexp) {
52
+ return this.s().search(regexp);
53
+ }
54
+ split(separator, limit) {
55
+ return this.s().split(separator, limit);
56
+ }
57
+ substring(start, end) {
58
+ return this.s().substring(start, end);
59
+ }
60
+ trim() {
61
+ return this.s().trim();
62
+ }
63
+ trimStart() {
64
+ return this.s().trimStart();
65
+ }
66
+ trimEnd() {
67
+ return this.s().trimEnd();
68
+ }
69
+ charAt(pos) {
70
+ return this.s().charAt(pos);
71
+ }
72
+ charCodeAt(index) {
73
+ return this.s().charCodeAt(index);
74
+ }
75
+ padStart(maxLength, fillString) {
76
+ return this.s().padStart(maxLength, fillString);
77
+ }
78
+ padEnd(maxLength, fillString) {
79
+ return this.s().padEnd(maxLength, fillString);
80
+ }
81
+ repeat(count) {
82
+ return this.s().repeat(count);
83
+ }
84
+ toUpperCase() {
85
+ return this.s().toUpperCase();
86
+ }
87
+ toLowerCase() {
88
+ return this.s().toLowerCase();
89
+ }
90
+ s() {
91
+ if (this.string == null) {
92
+ const n = Date.now();
93
+ if (n > warned + 60_000) {
94
+ console.warn("@aws-sdk/core/protocols - WARN - JsonCodec2: you have called a string method on a Uint8Array request body. " +
95
+ "It has been automatically converted to string. In a future version this will throw an error.");
96
+ warned = n;
97
+ }
98
+ this.string = toUtf8(this);
99
+ }
100
+ return this.string;
101
+ }
102
+ }
103
+ var warned = 0;
@@ -0,0 +1,20 @@
1
+ import { SerdeContextConfig } from "../../ConfigurableSerdeContext";
2
+ import { JsonShapeDeserializer2 } from "./JsonShapeDeserializer2";
3
+ import { JsonShapeSerializer2 } from "./JsonShapeSerializer2";
4
+ export class JsonCodec2 extends SerdeContextConfig {
5
+ settings;
6
+ constructor(settings) {
7
+ super();
8
+ this.settings = settings;
9
+ }
10
+ createSerializer() {
11
+ const serializer = new JsonShapeSerializer2(this.settings);
12
+ serializer.setSerdeContext(this.serdeContext);
13
+ return serializer;
14
+ }
15
+ createDeserializer() {
16
+ const deserializer = new JsonShapeDeserializer2(this.settings);
17
+ deserializer.setSerdeContext(this.serdeContext);
18
+ return deserializer;
19
+ }
20
+ }
@@ -1,7 +1,6 @@
1
1
  import { determineTimestampFormat } from "@smithy/core/protocols";
2
2
  import { NormalizedSchema } from "@smithy/core/schema";
3
- import { LazyJsonString, NumericValue, parseEpochTimestamp, parseRfc3339DateTimeWithOffset, parseRfc7231DateTime, } from "@smithy/core/serde";
4
- import { fromBase64 } from "@smithy/core/serde";
3
+ import { fromBase64, LazyJsonString, NumericValue, parseEpochTimestamp, parseRfc3339DateTimeWithOffset, parseRfc7231DateTime, } from "@smithy/core/serde";
5
4
  import { SerdeContextConfig } from "../../ConfigurableSerdeContext";
6
5
  import { UnionSerde } from "../../UnionSerde";
7
6
  import { detectBufferParsing } from "../detectBufferParsing";
@@ -9,7 +8,7 @@ import { jsonReviver } from "../jsonReviver";
9
8
  import { needsReviver } from "../needsReviver";
10
9
  import { parseJsonBody } from "../parseJsonBody";
11
10
  import { writeKey } from "../../writeKey";
12
- export class BufferJsonShapeDeserializer extends SerdeContextConfig {
11
+ export class JsonShapeDeserializer2 extends SerdeContextConfig {
13
12
  settings;
14
13
  constructor(settings) {
15
14
  super();
@@ -19,14 +18,20 @@ export class BufferJsonShapeDeserializer extends SerdeContextConfig {
19
18
  const reviver = needsReviver(schema) ? jsonReviver : undefined;
20
19
  let parsed;
21
20
  if (typeof data === "string") {
21
+ if (data.length === 0) {
22
+ return {};
23
+ }
22
24
  parsed = JSON.parse(data, reviver);
23
25
  }
24
26
  else if (data instanceof Uint8Array && detectBufferParsing()) {
27
+ if (data.byteLength === 0) {
28
+ return {};
29
+ }
25
30
  const buf = Buffer.isBuffer(data) ? data : Buffer.from(data.buffer, data.byteOffset, data.byteLength);
26
31
  parsed = JSON.parse(buf, reviver);
27
32
  }
28
33
  else {
29
- parsed = await parseJsonBody(data, this.serdeContext);
34
+ parsed = await parseJsonBody(data, this.serdeContext, schema);
30
35
  }
31
36
  return this._read(schema, parsed);
32
37
  }
@@ -42,19 +47,23 @@ export class BufferJsonShapeDeserializer extends SerdeContextConfig {
42
47
  }
43
48
  if (Array.isArray(value) && ns.isListSchema()) {
44
49
  const listMember = ns.getValueSchema();
45
- for (let i = 0; i < value.length; ++i) {
46
- value[i] = this._read(listMember, value[i]);
50
+ if (this.needsTransform(listMember)) {
51
+ for (let i = 0; i < value.length; ++i) {
52
+ value[i] = this._read(listMember, value[i]);
53
+ }
47
54
  }
48
55
  return value;
49
56
  }
50
57
  if (ns.isMapSchema()) {
51
58
  const mapMember = ns.getValueSchema();
52
59
  const map = value;
53
- for (const k in map) {
54
- if (k === "__proto__") {
55
- writeKey(map);
60
+ if (this.needsTransform(mapMember)) {
61
+ for (const k in map) {
62
+ if (k === "__proto__") {
63
+ writeKey(map);
64
+ }
65
+ map[k] = this._read(mapMember, map[k]);
56
66
  }
57
- map[k] = this._read(mapMember, map[k]);
58
67
  }
59
68
  return map;
60
69
  }
@@ -130,10 +139,6 @@ export class BufferJsonShapeDeserializer extends SerdeContextConfig {
130
139
  }
131
140
  }
132
141
  }
133
- return value;
134
- }
135
- else {
136
- return value;
137
142
  }
138
143
  }
139
144
  return value;
@@ -141,9 +146,10 @@ export class BufferJsonShapeDeserializer extends SerdeContextConfig {
141
146
  _readStruct(ns, record) {
142
147
  const union = ns.isUnionSchema();
143
148
  const out = {};
144
- let nameMap = void 0;
149
+ let nameMap;
150
+ const hasType = typeof record.__type === "string";
145
151
  const { jsonName } = this.settings;
146
- if (jsonName) {
152
+ if (jsonName && hasType) {
147
153
  nameMap = {};
148
154
  }
149
155
  let unionSerde;
@@ -154,7 +160,9 @@ export class BufferJsonShapeDeserializer extends SerdeContextConfig {
154
160
  let fromKey = memberName;
155
161
  if (jsonName) {
156
162
  fromKey = memberSchema.getMergedTraits().jsonName ?? fromKey;
157
- nameMap[fromKey] = memberName;
163
+ if (hasType) {
164
+ nameMap[fromKey] = memberName;
165
+ }
158
166
  }
159
167
  if (union) {
160
168
  unionSerde.mark(fromKey);
@@ -166,7 +174,7 @@ export class BufferJsonShapeDeserializer extends SerdeContextConfig {
166
174
  if (union) {
167
175
  unionSerde.writeUnknown();
168
176
  }
169
- else if (typeof record.__type === "string") {
177
+ else if (hasType) {
170
178
  for (const k in record) {
171
179
  const v = record[k];
172
180
  const t = jsonName ? (nameMap[k] ?? k) : k;
@@ -177,4 +185,16 @@ export class BufferJsonShapeDeserializer extends SerdeContextConfig {
177
185
  }
178
186
  return out;
179
187
  }
188
+ needsTransform(ns) {
189
+ if (ns.isBlobSchema() || ns.isTimestampSchema() || ns.isBigIntegerSchema() || ns.isBigDecimalSchema()) {
190
+ return true;
191
+ }
192
+ if (ns.isDocumentSchema() || ns.isStructSchema() || ns.isListSchema() || ns.isMapSchema()) {
193
+ return true;
194
+ }
195
+ if (ns.isStringSchema() && ns.getMergedTraits().mediaType) {
196
+ return true;
197
+ }
198
+ return false;
199
+ }
180
200
  }
@@ -3,6 +3,7 @@ import { NormalizedSchema } from "@smithy/core/schema";
3
3
  import { dateToUtcString, generateIdempotencyToken, LazyJsonString, NumericValue, toBase64 } from "@smithy/core/serde";
4
4
  import { SerdeContextConfig } from "../../ConfigurableSerdeContext";
5
5
  import { writeKey } from "../../writeKey";
6
+ import { JsonBytesStringAdapter } from "./JsonBytesStringAdapter";
6
7
  const encoder = new TextEncoder();
7
8
  const OPEN_BRACE = 0x7b;
8
9
  const CLOSE_BRACE = 0x7d;
@@ -30,13 +31,15 @@ for (let i = 0; i < 0x20; i++) {
30
31
  }
31
32
  const INITIAL_BUFFER_SIZE = 2048;
32
33
  function alloc(size) {
33
- return typeof Buffer !== "undefined" ? Buffer.allocUnsafe(size) : new Uint8Array(size);
34
+ return JsonBytesStringAdapter.allocUnsafe(size);
34
35
  }
35
- export class ByteJsonShapeSerializer extends SerdeContextConfig {
36
+ export class JsonShapeSerializer2 extends SerdeContextConfig {
36
37
  settings;
37
38
  json;
38
39
  i = 0;
39
40
  rootSchema;
41
+ rawValue;
42
+ passthrough = false;
40
43
  constructor(settings) {
41
44
  super();
42
45
  this.settings = settings;
@@ -44,38 +47,25 @@ export class ByteJsonShapeSerializer extends SerdeContextConfig {
44
47
  }
45
48
  write(schema, value) {
46
49
  this.i = 0;
50
+ this.rawValue = value;
47
51
  this.rootSchema = NormalizedSchema.of(schema);
48
- this.writeValue(this.rootSchema, value, undefined);
52
+ this.passthrough = this.rootSchema.isBlobSchema() || this.rootSchema.isStringSchema();
53
+ if (!this.passthrough) {
54
+ this.writeValue(this.rootSchema, value, undefined);
55
+ }
49
56
  }
50
57
  writeDiscriminatedDocument(schema, value) {
51
58
  this.i = 0;
52
59
  this.rootSchema = NormalizedSchema.of(schema);
53
60
  const ns = this.rootSchema;
54
61
  if (ns.isStructSchema() && value != null && typeof value === "object") {
55
- this.ensure(2);
56
- this.json[this.i++] = OPEN_BRACE;
57
- this.writeAsciiQuoted("__type");
58
- this.json[this.i++] = COLON;
59
- this.writeAsciiQuoted(ns.getName(true) ?? "Unknown");
60
- let wroteAny = true;
61
- const { jsonName } = this.settings;
62
- for (const [memberName, memberSchema] of ns.structIterator()) {
63
- const item = value[memberName];
64
- if (item == null && !memberSchema.isIdempotencyToken()) {
65
- continue;
66
- }
67
- if (wroteAny) {
68
- this.ensure(1);
69
- this.json[this.i++] = COMMA;
70
- }
71
- const targetKey = jsonName ? (memberSchema.getMergedTraits().jsonName ?? memberName) : memberName;
72
- this.writeAsciiQuoted(targetKey);
73
- this.json[this.i++] = COLON;
74
- this.writeValue(memberSchema, item, ns);
75
- wroteAny = true;
76
- }
77
- this.ensure(1);
78
- this.json[this.i++] = CLOSE_BRACE;
62
+ this.writeValue(ns, value, undefined);
63
+ const prefix = `"__type":"${ns.getName(true) ?? "Unknown"}",`;
64
+ const z = prefix.length;
65
+ this.ensure(z);
66
+ this.json.copyWithin(1 + z, 1, this.i);
67
+ encoder.encodeInto(prefix, this.json.subarray(1));
68
+ this.i += z;
79
69
  }
80
70
  else {
81
71
  this.writeValue(ns, value, undefined);
@@ -85,6 +75,11 @@ export class ByteJsonShapeSerializer extends SerdeContextConfig {
85
75
  this.rootSchema = undefined;
86
76
  const finalPosition = this.i;
87
77
  this.i = 0;
78
+ const raw = this.rawValue;
79
+ this.rawValue = undefined;
80
+ if (finalPosition === 0) {
81
+ return raw;
82
+ }
88
83
  const result = this.json.subarray(0, finalPosition);
89
84
  this.json = alloc(INITIAL_BUFFER_SIZE);
90
85
  return result;
@@ -123,7 +118,7 @@ export class ByteJsonShapeSerializer extends SerdeContextConfig {
123
118
  this.i = i;
124
119
  }
125
120
  writeJsonString(s) {
126
- this.ensure(s.length * 2 + 2);
121
+ this.ensure(s.length * 3 + 2);
127
122
  this.json[this.i++] = QUOTE;
128
123
  const z = s.length;
129
124
  for (let j = 0; j < z; ++j) {
@@ -150,7 +145,7 @@ export class ByteJsonShapeSerializer extends SerdeContextConfig {
150
145
  this.ensure(4);
151
146
  const { written } = encoder.encodeInto(s.substring(j, j + 2), this.json.subarray(this.i));
152
147
  this.i += written;
153
- j++;
148
+ ++j;
154
149
  }
155
150
  else {
156
151
  this.ensure(6);
@@ -190,15 +185,16 @@ export class ByteJsonShapeSerializer extends SerdeContextConfig {
190
185
  static B64 = (() => {
191
186
  const chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
192
187
  const table = new Uint8Array(64);
193
- for (let i = 0; i < 64; i++)
188
+ for (let i = 0; i < 64; ++i) {
194
189
  table[i] = chars.charCodeAt(i);
190
+ }
195
191
  return table;
196
192
  })();
197
193
  writeBase64(data) {
198
194
  const b64Len = Math.ceil(data.length / 3) * 4;
199
195
  this.ensure(b64Len + 2);
200
196
  const json = this.json;
201
- const B64 = ByteJsonShapeSerializer.B64;
197
+ const B64 = JsonShapeSerializer2.B64;
202
198
  let i = this.i;
203
199
  json[i++] = QUOTE;
204
200
  const len = data.length;
@@ -250,6 +246,16 @@ export class ByteJsonShapeSerializer extends SerdeContextConfig {
250
246
  }
251
247
  const ns = NormalizedSchema.of(schema);
252
248
  const isObject = typeof value === "object";
249
+ if (ns.isStringSchema()) {
250
+ const mediaType = ns.getMergedTraits().mediaType;
251
+ if (mediaType) {
252
+ const isJson = mediaType === "application/json" || mediaType.endsWith("+json");
253
+ if (isJson) {
254
+ this.writeJsonString(LazyJsonString.from(value).toString());
255
+ return;
256
+ }
257
+ }
258
+ }
253
259
  if (isObject) {
254
260
  if (ns.isStructSchema()) {
255
261
  this.writeStruct(ns, value);
@@ -289,16 +295,6 @@ export class ByteJsonShapeSerializer extends SerdeContextConfig {
289
295
  return;
290
296
  }
291
297
  if (typeof value === "string") {
292
- if (ns.isStringSchema()) {
293
- const mediaType = ns.getMergedTraits().mediaType;
294
- if (mediaType) {
295
- const isJson = mediaType === "application/json" || mediaType.endsWith("+json");
296
- if (isJson) {
297
- this.writeJsonString(LazyJsonString.from(value).toString());
298
- return;
299
- }
300
- }
301
- }
302
298
  if (ns.isBlobSchema()) {
303
299
  const b64 = (this.serdeContext?.base64Encoder ?? toBase64)(value);
304
300
  this.writeAsciiQuoted(b64);
@@ -318,14 +314,16 @@ export class ByteJsonShapeSerializer extends SerdeContextConfig {
318
314
  }
319
315
  if (typeof value === "boolean") {
320
316
  this.ensure(5);
317
+ let { i, json } = this;
321
318
  if (value) {
322
- this.json.set(TRUE, this.i);
323
- this.i += 4;
319
+ json.set(TRUE, i);
320
+ i += 4;
324
321
  }
325
322
  else {
326
- this.json.set(FALSE, this.i);
327
- this.i += 5;
323
+ json.set(FALSE, i);
324
+ i += 5;
328
325
  }
326
+ this.i = i;
329
327
  return;
330
328
  }
331
329
  if (typeof value === "bigint") {
@@ -337,7 +335,6 @@ export class ByteJsonShapeSerializer extends SerdeContextConfig {
337
335
  writeStruct(ns, value) {
338
336
  this.ensure(2);
339
337
  this.json[this.i++] = OPEN_BRACE;
340
- let first = true;
341
338
  let wroteAny = false;
342
339
  const hasType = typeof value.__type === "string";
343
340
  let writtenKeys;
@@ -346,13 +343,13 @@ export class ByteJsonShapeSerializer extends SerdeContextConfig {
346
343
  }
347
344
  for (const [memberName, memberSchema] of ns.structIterator()) {
348
345
  const item = value[memberName];
349
- if (item == null && !memberSchema.isIdempotencyToken())
346
+ if (item == null && !memberSchema.isIdempotencyToken()) {
350
347
  continue;
351
- if (!first) {
348
+ }
349
+ if (wroteAny) {
352
350
  this.ensure(1);
353
351
  this.json[this.i++] = COMMA;
354
352
  }
355
- first = false;
356
353
  wroteAny = true;
357
354
  const targetKey = this.settings.jsonName ? (memberSchema.getMergedTraits().jsonName ?? memberName) : memberName;
358
355
  if (writtenKeys) {
@@ -375,17 +372,17 @@ export class ByteJsonShapeSerializer extends SerdeContextConfig {
375
372
  }
376
373
  else if (hasType) {
377
374
  for (const k in value) {
378
- const targetKey = this.settings.jsonName ? (writtenKeys.has(k) ? k : k) : k;
379
- if (writtenKeys.has(targetKey))
375
+ if (writtenKeys.has(k)) {
380
376
  continue;
381
- writtenKeys.add(targetKey);
377
+ }
378
+ writtenKeys.add(k);
382
379
  const v = value[k];
383
- if (!first) {
380
+ if (wroteAny) {
384
381
  this.ensure(1);
385
382
  this.json[this.i++] = COMMA;
386
383
  }
387
- first = false;
388
- this.writeAsciiQuoted(targetKey);
384
+ wroteAny = true;
385
+ this.writeAsciiQuoted(k);
389
386
  this.ensure(1);
390
387
  this.json[this.i++] = COLON;
391
388
  this.writeValue(15, v, undefined);
@@ -395,20 +392,30 @@ export class ByteJsonShapeSerializer extends SerdeContextConfig {
395
392
  this.json[this.i++] = CLOSE_BRACE;
396
393
  }
397
394
  writeList(ns, value, isDocument) {
398
- this.ensure(2);
399
- this.json[this.i++] = OPEN_BRACKET;
400
395
  const sparse = !!ns.getMergedTraits().sparse;
401
396
  const valueSchema = ns.getValueSchema();
397
+ if (!isDocument) {
398
+ if (valueSchema.isStringSchema() || valueSchema.isNumericSchema() || valueSchema.isBooleanSchema()) {
399
+ const json = sparse ? JSON.stringify(value) : JSON.stringify(value.filter((_) => _ != null));
400
+ this.ensure(json.length * 3);
401
+ this.i += encoder.encodeInto(json, this.json.subarray(this.i)).written;
402
+ return;
403
+ }
404
+ }
405
+ this.ensure(2);
406
+ this.json[this.i++] = OPEN_BRACKET;
407
+ let wroteFirstItem = false;
402
408
  for (let i = 0; i < value.length; ++i) {
403
409
  const item = value[i];
404
410
  if (isDocument ? item === undefined : item == null && !sparse) {
405
411
  continue;
406
412
  }
407
- if (i !== 0) {
413
+ if (wroteFirstItem) {
408
414
  this.ensure(1);
409
415
  this.json[this.i++] = COMMA;
410
416
  }
411
417
  this.writeValue(valueSchema, item, undefined);
418
+ wroteFirstItem = true;
412
419
  }
413
420
  this.ensure(1);
414
421
  this.json[this.i++] = CLOSE_BRACKET;
@@ -430,8 +437,7 @@ export class ByteJsonShapeSerializer extends SerdeContextConfig {
430
437
  }
431
438
  const json = JSON.stringify(input);
432
439
  this.ensure(json.length * 3);
433
- const { written } = encoder.encodeInto(json, this.json.subarray(this.i));
434
- this.i += written;
440
+ this.i += encoder.encodeInto(json, this.json.subarray(this.i)).written;
435
441
  return;
436
442
  }
437
443
  }
@@ -1,14 +1,15 @@
1
1
  export { AwsSmithyRpcV2CborProtocol } from "./cbor/AwsSmithyRpcV2CborProtocol";
2
- export { _toStr, _toBool, _toNum } from "./coercing-serializers";
3
2
  export { AwsJson1_0Protocol } from "./json/AwsJson1_0Protocol";
4
3
  export { AwsJson1_1Protocol } from "./json/AwsJson1_1Protocol";
5
4
  export { AwsJsonRpcProtocol } from "./json/AwsJsonRpcProtocol";
6
5
  export { AwsRestJsonProtocol } from "./json/AwsRestJsonProtocol";
7
- export { JsonCodec } from "./json/JsonCodec";
8
- export type { JsonSettings } from "./json/JsonCodec";
9
- export { JsonShapeDeserializer } from "./json/JsonShapeDeserializer";
10
- export { JsonShapeSerializer } from "./json/JsonShapeSerializer";
11
- export { awsExpectUnion } from "./json/awsExpectUnion";
6
+ export { JsonCodec } from "./json/codec-v1/JsonCodec";
7
+ export type { JsonSettings } from "./json/JsonSettings";
8
+ export { JsonShapeDeserializer } from "./json/codec-v1/JsonShapeDeserializer";
9
+ export { JsonShapeSerializer } from "./json/codec-v1/JsonShapeSerializer";
10
+ export { JsonCodec2 } from "./json/codec-v2/JsonCodec2";
11
+ export { JsonShapeDeserializer2 } from "./json/codec-v2/JsonShapeDeserializer2";
12
+ export { JsonShapeSerializer2 } from "./json/codec-v2/JsonShapeSerializer2";
12
13
  export { parseJsonBody, parseJsonErrorBody, loadRestJsonErrorCode, loadJsonRpcErrorCode } from "./json/parseJsonBody";
13
14
  export { AwsEc2QueryProtocol } from "./query/AwsEc2QueryProtocol";
14
15
  export { AwsQueryProtocol } from "./query/AwsQueryProtocol";
@@ -20,3 +21,5 @@ export type { XmlSettings } from "./xml/XmlCodec";
20
21
  export { XmlShapeDeserializer } from "./xml/XmlShapeDeserializer";
21
22
  export { XmlShapeSerializer } from "./xml/XmlShapeSerializer";
22
23
  export { parseXmlBody, parseXmlErrorBody, loadRestXmlErrorCode } from "./xml/parseXmlBody";
24
+ export { awsExpectUnion } from "./json/awsExpectUnion";
25
+ export { _toStr, _toBool, _toNum } from "./coercing-serializers";
@@ -1,6 +1,6 @@
1
1
  import type { TypeRegistry } from "@smithy/core/schema";
2
2
  import { AwsJsonRpcProtocol } from "./AwsJsonRpcProtocol";
3
- import type { JsonCodec } from "./JsonCodec";
3
+ import type { JsonCodec } from "./codec-v1/JsonCodec";
4
4
  /**
5
5
  * @public
6
6
  * @see https://smithy.io/2.0/aws/protocols/aws-json-1_1-protocol.html#differences-between-awsjson1-0-and-awsjson1-1
@@ -1,6 +1,6 @@
1
1
  import type { TypeRegistry } from "@smithy/core/schema";
2
2
  import { AwsJsonRpcProtocol } from "./AwsJsonRpcProtocol";
3
- import type { JsonCodec } from "./JsonCodec";
3
+ import type { JsonCodec } from "./codec-v1/JsonCodec";
4
4
  /**
5
5
  * @public
6
6
  * @see https://smithy.io/2.0/aws/protocols/aws-json-1_1-protocol.html#differences-between-awsjson1-0-and-awsjson1-1