cdk-preflight 1.12.0 → 1.12.1

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 (402) hide show
  1. package/.jsii +3 -3
  2. package/lib/index.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/CloudFormationClient.d.ts +2 -1
  5. package/node_modules/@aws-sdk/client-cloudformation/package.json +6 -6
  6. package/node_modules/@aws-sdk/client-ec2/README.md +28 -0
  7. package/node_modules/@aws-sdk/client-ec2/dist-cjs/index.js +499 -113
  8. package/node_modules/@aws-sdk/client-ec2/dist-es/EC2.js +10 -0
  9. package/node_modules/@aws-sdk/client-ec2/dist-es/commands/GetCapacityManagerSupportabilityScoresCommand.js +4 -0
  10. package/node_modules/@aws-sdk/client-ec2/dist-es/commands/GetImageFindingsCommand.js +4 -0
  11. package/node_modules/@aws-sdk/client-ec2/dist-es/commands/GetTransitGatewayAttachmentNatConfigurationCommand.js +4 -0
  12. package/node_modules/@aws-sdk/client-ec2/dist-es/commands/ModifyTransitGatewayAttachmentNatConfigurationCommand.js +4 -0
  13. package/node_modules/@aws-sdk/client-ec2/dist-es/commands/index.js +4 -0
  14. package/node_modules/@aws-sdk/client-ec2/dist-es/models/enums.js +80 -29
  15. package/node_modules/@aws-sdk/client-ec2/dist-es/pagination/GetImageFindingsPaginator.js +4 -0
  16. package/node_modules/@aws-sdk/client-ec2/dist-es/pagination/index.js +1 -0
  17. package/node_modules/@aws-sdk/client-ec2/dist-es/schemas/schemas_0.js +365 -83
  18. package/node_modules/@aws-sdk/client-ec2/dist-types/EC2.d.ts +35 -0
  19. package/node_modules/@aws-sdk/client-ec2/dist-types/EC2Client.d.ts +8 -3
  20. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/CreateCapacityReservationFleetCommand.d.ts +82 -1
  21. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/CreateCarrierGatewayCommand.d.ts +1 -1
  22. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/CreateTransitGatewayRouteCommand.d.ts +1 -1
  23. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DeleteLaunchTemplateCommand.d.ts +2 -1
  24. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DeleteTransitGatewayRouteCommand.d.ts +1 -1
  25. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DeleteTransitGatewayRouteTableCommand.d.ts +5 -2
  26. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DescribeCapacityReservationFleetsCommand.d.ts +81 -0
  27. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DescribeFleetHistoryCommand.d.ts +2 -1
  28. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DescribeImagesCommand.d.ts +9 -0
  29. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DescribeInstanceStatusCommand.d.ts +5 -0
  30. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DescribeNetworkInsightsAnalysesCommand.d.ts +48 -0
  31. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DescribeReservedInstancesModificationsCommand.d.ts +2 -1
  32. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DescribeReservedInstancesOfferingsCommand.d.ts +1 -2
  33. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DescribeTransitGatewayAttachmentsCommand.d.ts +1 -0
  34. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DisassociateTransitGatewayPolicyTableCommand.d.ts +1 -1
  35. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/DisassociateTransitGatewayRouteTableCommand.d.ts +1 -2
  36. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetAllowedImagesSettingsCommand.d.ts +9 -0
  37. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetCapacityManagerMetricDataCommand.d.ts +2 -2
  38. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetCapacityManagerMetricDimensionsCommand.d.ts +1 -1
  39. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetCapacityManagerSupportabilityScoresCommand.d.ts +183 -0
  40. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetImageFindingsCommand.d.ts +90 -0
  41. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetNetworkInsightsAccessScopeAnalysisFindingsCommand.d.ts +19 -0
  42. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetTransitGatewayAttachmentNatConfigurationCommand.d.ts +82 -0
  43. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetVerifiedAccessEndpointTargetsCommand.d.ts +2 -1
  44. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetVerifiedAccessGroupPolicyCommand.d.ts +1 -1
  45. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetVpcResourcesBlockingEncryptionEnforcementCommand.d.ts +1 -1
  46. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetVpnConnectionDeviceSampleConfigurationCommand.d.ts +1 -1
  47. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetVpnConnectionDeviceTypesCommand.d.ts +1 -1
  48. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/GetVpnTunnelReplacementStatusCommand.d.ts +1 -2
  49. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/ModifyTransitGatewayAttachmentNatConfigurationCommand.d.ts +107 -0
  50. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/RejectTransitGatewayPeeringAttachmentCommand.d.ts +1 -1
  51. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/RejectTransitGatewayVpcAttachmentCommand.d.ts +1 -1
  52. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/RejectVpcEndpointConnectionsCommand.d.ts +1 -1
  53. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/RejectVpcPeeringConnectionCommand.d.ts +1 -1
  54. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/ReleaseAddressCommand.d.ts +1 -1
  55. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/ReleaseHostsCommand.d.ts +1 -1
  56. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/ReleaseIpamPoolAllocationCommand.d.ts +1 -1
  57. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/ReplaceIamInstanceProfileAssociationCommand.d.ts +1 -1
  58. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/ReplaceImageCriteriaInAllowedImagesSettingsCommand.d.ts +9 -0
  59. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/ReplaceTransitGatewayRouteCommand.d.ts +1 -1
  60. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/SearchTransitGatewayRoutesCommand.d.ts +1 -1
  61. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/StartNetworkInsightsAnalysisCommand.d.ts +48 -0
  62. package/node_modules/@aws-sdk/client-ec2/dist-types/commands/index.d.ts +4 -0
  63. package/node_modules/@aws-sdk/client-ec2/dist-types/models/enums.d.ts +192 -77
  64. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_0.d.ts +165 -291
  65. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_1.d.ts +1839 -1665
  66. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_2.d.ts +25 -12
  67. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_3.d.ts +27 -38
  68. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_4.d.ts +241 -242
  69. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_5.d.ts +247 -57
  70. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_6.d.ts +537 -341
  71. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_7.d.ts +389 -246
  72. package/node_modules/@aws-sdk/client-ec2/dist-types/models/models_8.d.ts +360 -3
  73. package/node_modules/@aws-sdk/client-ec2/dist-types/pagination/GetImageFindingsPaginator.d.ts +7 -0
  74. package/node_modules/@aws-sdk/client-ec2/dist-types/pagination/index.d.ts +1 -0
  75. package/node_modules/@aws-sdk/client-ec2/dist-types/schemas/schemas_0.d.ts +21 -0
  76. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/EC2.d.ts +75 -0
  77. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/EC2Client.d.ts +24 -0
  78. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/CreateCapacityReservationFleetCommand.d.ts +1 -1
  79. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/CreateCarrierGatewayCommand.d.ts +1 -1
  80. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/DeleteLaunchTemplateCommand.d.ts +2 -1
  81. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/DescribeFleetHistoryCommand.d.ts +2 -1
  82. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/DescribeReservedInstancesModificationsCommand.d.ts +2 -4
  83. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/DescribeReservedInstancesOfferingsCommand.d.ts +4 -2
  84. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/DisassociateTransitGatewayPolicyTableCommand.d.ts +1 -1
  85. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/DisassociateTransitGatewayRouteTableCommand.d.ts +4 -2
  86. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/GetCapacityManagerSupportabilityScoresCommand.d.ts +42 -0
  87. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/GetImageFindingsCommand.d.ts +38 -0
  88. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/GetTransitGatewayAttachmentNatConfigurationCommand.d.ts +42 -0
  89. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/GetVerifiedAccessEndpointTargetsCommand.d.ts +2 -4
  90. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/GetVerifiedAccessGroupPolicyCommand.d.ts +1 -1
  91. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/GetVpcResourcesBlockingEncryptionEnforcementCommand.d.ts +1 -1
  92. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/GetVpnConnectionDeviceSampleConfigurationCommand.d.ts +1 -1
  93. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/GetVpnConnectionDeviceTypesCommand.d.ts +1 -1
  94. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/GetVpnTunnelReplacementStatusCommand.d.ts +4 -2
  95. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/ModifyTransitGatewayAttachmentNatConfigurationCommand.d.ts +42 -0
  96. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/RejectTransitGatewayPeeringAttachmentCommand.d.ts +1 -1
  97. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/RejectTransitGatewayVpcAttachmentCommand.d.ts +1 -1
  98. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/RejectVpcEndpointConnectionsCommand.d.ts +1 -1
  99. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/RejectVpcPeeringConnectionCommand.d.ts +1 -1
  100. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/ReleaseAddressCommand.d.ts +1 -1
  101. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/ReleaseHostsCommand.d.ts +1 -1
  102. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/ReleaseIpamPoolAllocationCommand.d.ts +1 -1
  103. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/ReplaceIamInstanceProfileAssociationCommand.d.ts +1 -1
  104. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/commands/index.d.ts +4 -0
  105. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/enums.d.ts +99 -35
  106. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_0.d.ts +27 -60
  107. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_1.d.ts +118 -69
  108. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_2.d.ts +6 -6
  109. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_3.d.ts +10 -9
  110. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_4.d.ts +31 -34
  111. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_5.d.ts +37 -14
  112. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_6.d.ts +89 -68
  113. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_7.d.ts +86 -64
  114. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/models/models_8.d.ts +76 -1
  115. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/pagination/GetImageFindingsPaginator.d.ts +11 -0
  116. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/pagination/index.d.ts +1 -0
  117. package/node_modules/@aws-sdk/client-ec2/dist-types/ts3.4/schemas/schemas_0.d.ts +21 -0
  118. package/node_modules/@aws-sdk/client-ec2/package.json +8 -8
  119. package/node_modules/@aws-sdk/client-lambda/README.md +1 -1
  120. package/node_modules/@aws-sdk/client-lambda/dist-cjs/index.js +9 -3
  121. package/node_modules/@aws-sdk/client-lambda/dist-es/models/enums.js +4 -0
  122. package/node_modules/@aws-sdk/client-lambda/dist-es/schemas/schemas_0.js +3 -2
  123. package/node_modules/@aws-sdk/client-lambda/dist-types/Lambda.d.ts +1 -1
  124. package/node_modules/@aws-sdk/client-lambda/dist-types/LambdaClient.d.ts +3 -2
  125. package/node_modules/@aws-sdk/client-lambda/dist-types/commands/CreateEventSourceMappingCommand.d.ts +2 -0
  126. package/node_modules/@aws-sdk/client-lambda/dist-types/commands/DeleteEventSourceMappingCommand.d.ts +1 -0
  127. package/node_modules/@aws-sdk/client-lambda/dist-types/commands/DeleteFunctionConcurrencyCommand.d.ts +1 -1
  128. package/node_modules/@aws-sdk/client-lambda/dist-types/commands/GetEventSourceMappingCommand.d.ts +1 -0
  129. package/node_modules/@aws-sdk/client-lambda/dist-types/commands/GetFunctionCommand.d.ts +1 -1
  130. package/node_modules/@aws-sdk/client-lambda/dist-types/commands/ListEventSourceMappingsCommand.d.ts +1 -0
  131. package/node_modules/@aws-sdk/client-lambda/dist-types/commands/ListFunctionEventInvokeConfigsCommand.d.ts +1 -1
  132. package/node_modules/@aws-sdk/client-lambda/dist-types/commands/ListVersionsByFunctionCommand.d.ts +1 -1
  133. package/node_modules/@aws-sdk/client-lambda/dist-types/commands/PublishVersionCommand.d.ts +1 -1
  134. package/node_modules/@aws-sdk/client-lambda/dist-types/commands/PutFunctionConcurrencyCommand.d.ts +1 -1
  135. package/node_modules/@aws-sdk/client-lambda/dist-types/commands/PutFunctionRecursionConfigCommand.d.ts +1 -1
  136. package/node_modules/@aws-sdk/client-lambda/dist-types/commands/UpdateEventSourceMappingCommand.d.ts +2 -0
  137. package/node_modules/@aws-sdk/client-lambda/dist-types/commands/UpdateFunctionUrlConfigCommand.d.ts +1 -1
  138. package/node_modules/@aws-sdk/client-lambda/dist-types/index.d.ts +1 -1
  139. package/node_modules/@aws-sdk/client-lambda/dist-types/models/enums.d.ts +12 -0
  140. package/node_modules/@aws-sdk/client-lambda/dist-types/models/models_0.d.ts +21 -16
  141. package/node_modules/@aws-sdk/client-lambda/dist-types/ts3.4/models/enums.d.ts +6 -0
  142. package/node_modules/@aws-sdk/client-lambda/dist-types/ts3.4/models/models_0.d.ts +2 -0
  143. package/node_modules/@aws-sdk/client-lambda/package.json +7 -7
  144. package/node_modules/@aws-sdk/client-service-quotas/dist-cjs/index.js +1 -1
  145. package/node_modules/@aws-sdk/client-service-quotas/dist-types/ServiceQuotasClient.d.ts +2 -1
  146. package/node_modules/@aws-sdk/client-service-quotas/package.json +6 -6
  147. package/node_modules/@aws-sdk/client-sts/dist-cjs/index.js +1 -1
  148. package/node_modules/@aws-sdk/client-sts/dist-types/STSClient.d.ts +2 -1
  149. package/node_modules/@aws-sdk/client-sts/package.json +8 -8
  150. package/node_modules/@aws-sdk/core/dist-cjs/submodules/client/index.js +38 -13
  151. package/node_modules/@aws-sdk/core/dist-cjs/submodules/httpAuthSchemes/index.js +7 -7
  152. package/node_modules/@aws-sdk/core/dist-cjs/submodules/protocols/index.js +104 -1549
  153. package/node_modules/@aws-sdk/core/dist-cjs/submodules/util/index.js +2 -1
  154. package/node_modules/@aws-sdk/core/dist-es/submodules/client/getDefaultSocketTimeout.js +10 -0
  155. package/node_modules/@aws-sdk/core/dist-es/submodules/client/index.browser.js +1 -0
  156. package/node_modules/@aws-sdk/core/dist-es/submodules/client/index.js +1 -0
  157. package/node_modules/@aws-sdk/core/dist-es/submodules/client/index.native.js +1 -0
  158. package/node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-host-header/hostHeaderMiddleware.js +4 -2
  159. package/node_modules/@aws-sdk/core/dist-es/submodules/client/util-endpoints/lib/aws/parseArn.js +4 -2
  160. package/node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-browser/defaultUserAgent.js +18 -9
  161. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/NODE_AUTH_SCHEME_PREFERENCE_OPTIONS.js +6 -3
  162. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js +1 -4
  163. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js +2 -7
  164. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsJsonRpcProtocol.js +1 -3
  165. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsRestJsonProtocol.js +1 -3
  166. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsSmithyRpcV2JsonProtocol.js +51 -0
  167. package/node_modules/@aws-sdk/core/dist-es/submodules/util/util-arn-parser/arn.js +2 -1
  168. package/node_modules/@aws-sdk/core/dist-types/submodules/client/getDefaultSocketTimeout.d.ts +11 -0
  169. package/node_modules/@aws-sdk/core/dist-types/submodules/client/index.browser.d.ts +1 -0
  170. package/node_modules/@aws-sdk/core/dist-types/submodules/client/index.d.ts +1 -0
  171. package/node_modules/@aws-sdk/core/dist-types/submodules/client/index.native.d.ts +1 -0
  172. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.d.ts +3 -7
  173. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/index.d.ts +3 -8
  174. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJson1_0Protocol.d.ts +1 -2
  175. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJson1_1Protocol.d.ts +1 -2
  176. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJsonRpcProtocol.d.ts +2 -3
  177. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsRestJsonProtocol.d.ts +2 -3
  178. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsSmithyRpcV2JsonProtocol.d.ts +25 -0
  179. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/getDefaultSocketTimeout.d.ts +4 -0
  180. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.browser.d.ts +1 -0
  181. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.d.ts +1 -0
  182. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.native.d.ts +1 -0
  183. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/index.d.ts +11 -10
  184. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_0Protocol.d.ts +1 -2
  185. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_1Protocol.d.ts +1 -2
  186. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJsonRpcProtocol.d.ts +2 -3
  187. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsRestJsonProtocol.d.ts +2 -3
  188. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsSmithyRpcV2JsonProtocol.d.ts +36 -0
  189. package/node_modules/@aws-sdk/core/package.json +5 -5
  190. package/node_modules/@aws-sdk/credential-provider-env/package.json +4 -4
  191. package/node_modules/@aws-sdk/credential-provider-http/package.json +5 -5
  192. package/node_modules/@aws-sdk/credential-provider-ini/package.json +11 -11
  193. package/node_modules/@aws-sdk/credential-provider-login/package.json +5 -5
  194. package/node_modules/@aws-sdk/credential-provider-node/package.json +9 -9
  195. package/node_modules/@aws-sdk/credential-provider-process/package.json +4 -4
  196. package/node_modules/@aws-sdk/credential-provider-sso/package.json +6 -6
  197. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +5 -5
  198. package/node_modules/@aws-sdk/middleware-sdk-ec2/package.json +5 -5
  199. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/index.js +3 -2
  200. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/index.js +10 -2
  201. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/index.js +3 -2
  202. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/index.js +3 -2
  203. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/index.js +3 -2
  204. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/runtimeConfig.js +2 -1
  205. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/models/enums.js +7 -0
  206. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/runtimeConfig.js +2 -1
  207. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/runtimeConfig.js +2 -1
  208. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/runtimeConfig.js +2 -1
  209. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/runtimeConfig.js +2 -1
  210. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/CognitoIdentityClient.d.ts +2 -1
  211. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/runtimeConfig.d.ts +1 -0
  212. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/Signin.d.ts +1 -2
  213. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/SigninClient.d.ts +3 -3
  214. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/commands/CreateOAuth2TokenCommand.d.ts +5 -59
  215. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/commands/CreateOAuth2TokenWithIAMCommand.d.ts +5 -33
  216. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/index.d.ts +1 -2
  217. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/models/enums.d.ts +16 -9
  218. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/models/errors.d.ts +8 -39
  219. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/models/models_0.d.ts +36 -48
  220. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/runtimeConfig.d.ts +1 -0
  221. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/SSOClient.d.ts +2 -1
  222. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/runtimeConfig.d.ts +1 -0
  223. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/SSOOIDCClient.d.ts +2 -1
  224. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/runtimeConfig.d.ts +1 -0
  225. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/STSClient.d.ts +2 -1
  226. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.d.ts +1 -0
  227. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/runtimeConfig.d.ts +1 -0
  228. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/models/enums.d.ts +7 -0
  229. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/runtimeConfig.d.ts +1 -0
  230. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/runtimeConfig.d.ts +1 -0
  231. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.d.ts +1 -0
  232. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.d.ts +1 -0
  233. package/node_modules/@aws-sdk/nested-clients/package.json +6 -6
  234. package/node_modules/@aws-sdk/signature-v4-multi-region/package.json +3 -3
  235. package/node_modules/@aws-sdk/token-providers/dist-cjs/index.js +37 -19
  236. package/node_modules/@aws-sdk/token-providers/dist-es/fromSso.js +37 -19
  237. package/node_modules/@aws-sdk/token-providers/package.json +5 -5
  238. package/node_modules/@aws-sdk/types/dist-types/feature-ids.d.ts +3 -0
  239. package/node_modules/@aws-sdk/types/dist-types/ts3.4/feature-ids.d.ts +3 -0
  240. package/node_modules/@aws-sdk/types/package.json +1 -1
  241. package/node_modules/@aws-sdk/xml-builder/package.json +1 -1
  242. package/node_modules/@smithy/core/dist-cjs/index.js +4 -2
  243. package/node_modules/@smithy/core/dist-cjs/submodules/cbor/index.js +45 -53
  244. package/node_modules/@smithy/core/dist-cjs/submodules/client/index.js +52 -19
  245. package/node_modules/@smithy/core/dist-cjs/submodules/config/index.browser.js +8 -4
  246. package/node_modules/@smithy/core/dist-cjs/submodules/config/index.js +16 -8
  247. package/node_modules/@smithy/core/dist-cjs/submodules/config/index.native.js +8 -4
  248. package/node_modules/@smithy/core/dist-cjs/submodules/endpoints/index.browser.js +2 -1
  249. package/node_modules/@smithy/core/dist-cjs/submodules/endpoints/index.js +10 -5
  250. package/node_modules/@smithy/core/dist-cjs/submodules/event-streams/index.browser.js +28 -9
  251. package/node_modules/@smithy/core/dist-cjs/submodules/event-streams/index.js +28 -9
  252. package/node_modules/@smithy/core/dist-cjs/submodules/protocols/index.js +91 -58
  253. package/node_modules/@smithy/core/dist-cjs/submodules/retry/index.browser.js +53 -15
  254. package/node_modules/@smithy/core/dist-cjs/submodules/retry/index.js +57 -17
  255. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.browser.js +13 -4
  256. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.js +7 -1
  257. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.native.js +13 -4
  258. package/node_modules/@smithy/core/dist-cjs/submodules/transport/index.js +6 -3
  259. package/node_modules/@smithy/core/dist-es/legacy-root-exports/util-identity-and-auth/DefaultIdentityProviderConfig.js +2 -1
  260. package/node_modules/@smithy/core/dist-es/normalizeProvider.js +2 -1
  261. package/node_modules/@smithy/core/dist-es/submodules/cbor/SmithyRpcV2CborProtocol.js +12 -37
  262. package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v1/CborShapeDeserializer.js +8 -4
  263. package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v1/CborShapeSerializer.js +6 -3
  264. package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v2/CborShapeDeserializer2.js +12 -6
  265. package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v2/CborShapeSerializer2.js +4 -2
  266. package/node_modules/@smithy/core/dist-es/submodules/cbor/parseCborBody.js +2 -1
  267. package/node_modules/@smithy/core/dist-es/submodules/client/middleware-stack/MiddlewareStack.js +10 -5
  268. package/node_modules/@smithy/core/dist-es/submodules/client/smithy-client/command.js +17 -2
  269. package/node_modules/@smithy/core/dist-es/submodules/client/smithy-client/create-aggregated-client.js +2 -1
  270. package/node_modules/@smithy/core/dist-es/submodules/client/smithy-client/exceptions.js +4 -2
  271. package/node_modules/@smithy/core/dist-es/submodules/client/smithy-client/extensions/checksum.js +2 -1
  272. package/node_modules/@smithy/core/dist-es/submodules/client/smithy-client/get-value-from-text-node.js +2 -1
  273. package/node_modules/@smithy/core/dist-es/submodules/client/smithy-client/object-mapping.js +4 -2
  274. package/node_modules/@smithy/core/dist-es/submodules/client/smithy-client/schemaLogFilter.js +10 -4
  275. package/node_modules/@smithy/core/dist-es/submodules/client/smithy-client/serde-json.js +2 -1
  276. package/node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/getHomeDir.js +8 -4
  277. package/node_modules/@smithy/core/dist-es/submodules/config/util-config-provider/booleanSelector.js +6 -3
  278. package/node_modules/@smithy/core/dist-es/submodules/config/util-config-provider/numberSelector.js +2 -1
  279. package/node_modules/@smithy/core/dist-es/submodules/endpoints/middleware-endpoint/adaptors/getEndpointUrlConfig.js +8 -4
  280. package/node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/resolveEndpoint.js +2 -1
  281. package/node_modules/@smithy/core/dist-es/submodules/event-streams/EventStreamSerde.js +6 -3
  282. package/node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-codec/HeaderMarshaller.js +12 -1
  283. package/node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-codec/Int64.js +2 -1
  284. package/node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-codec/SmithyMessageDecoderStream.js +2 -1
  285. package/node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-serde/utils.js +2 -1
  286. package/node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-serde-universal/getUnmarshalledStream.js +4 -2
  287. package/node_modules/@smithy/core/dist-es/submodules/protocols/AbstractRpcV2Protocol.js +35 -0
  288. package/node_modules/@smithy/core/dist-es/submodules/protocols/HttpBindingProtocol.js +8 -4
  289. package/node_modules/@smithy/core/dist-es/submodules/protocols/HttpProtocol.js +4 -2
  290. package/node_modules/@smithy/core/dist-es/submodules/protocols/RpcProtocol.js +6 -2
  291. package/node_modules/@smithy/core/dist-es/submodules/protocols/index.js +1 -0
  292. package/node_modules/@smithy/core/dist-es/submodules/protocols/json/SmithyRpcV2JsonProtocol.js +8 -31
  293. package/node_modules/@smithy/core/dist-es/submodules/protocols/json/codec-v1/JsonShapeDeserializer.js +7 -5
  294. package/node_modules/@smithy/core/dist-es/submodules/protocols/json/codec-v1/JsonShapeSerializer.js +7 -5
  295. package/node_modules/@smithy/core/dist-es/submodules/protocols/json/codec-v2/JsonShapeDeserializer2.js +7 -5
  296. package/node_modules/@smithy/core/dist-es/submodules/protocols/json/codec-v2/JsonShapeSerializer2.js +11 -8
  297. package/node_modules/@smithy/core/dist-es/submodules/protocols/protocol-http/extensions/httpExtensionConfiguration.js +3 -0
  298. package/node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/configurations.js +4 -2
  299. package/node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/parseRetryAfterHeader.js +2 -1
  300. package/node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/retry-pre-sra-deprecated/StandardRetryStrategy.js +6 -3
  301. package/node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/retryMiddleware.js +17 -8
  302. package/node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/util.js +6 -3
  303. package/node_modules/@smithy/core/dist-es/submodules/retry/util-retry/race.js +22 -0
  304. package/node_modules/@smithy/core/dist-es/submodules/serde/index.browser.js +1 -0
  305. package/node_modules/@smithy/core/dist-es/submodules/serde/index.js +1 -0
  306. package/node_modules/@smithy/core/dist-es/submodules/serde/index.native.js +1 -0
  307. package/node_modules/@smithy/core/dist-es/submodules/serde/parse-utils.js +2 -1
  308. package/node_modules/@smithy/core/dist-es/submodules/serde/util-body-length/calculateBodyLength.browser.js +6 -3
  309. package/node_modules/@smithy/core/dist-es/submodules/transport/httpResponse.js +2 -1
  310. package/node_modules/@smithy/core/dist-es/submodules/transport/normalizeProvider.js +2 -1
  311. package/node_modules/@smithy/core/dist-es/submodules/transport/toEndpointV1.js +2 -1
  312. package/node_modules/@smithy/core/dist-types/submodules/cbor/SmithyRpcV2CborProtocol.d.ts +5 -14
  313. package/node_modules/@smithy/core/dist-types/submodules/protocols/AbstractRpcV2Protocol.d.ts +45 -0
  314. package/node_modules/@smithy/core/dist-types/submodules/protocols/RpcProtocol.d.ts +12 -0
  315. package/node_modules/@smithy/core/dist-types/submodules/protocols/index.d.ts +1 -0
  316. package/node_modules/@smithy/core/dist-types/submodules/protocols/json/SmithyRpcV2JsonProtocol.d.ts +5 -14
  317. package/node_modules/@smithy/core/dist-types/submodules/protocols/protocol-http/extensions/httpExtensionConfiguration.d.ts +1 -0
  318. package/node_modules/@smithy/core/dist-types/submodules/retry/util-retry/race.d.ts +3 -0
  319. package/node_modules/@smithy/core/dist-types/submodules/serde/index.browser.d.ts +1 -0
  320. package/node_modules/@smithy/core/dist-types/submodules/serde/index.d.ts +1 -0
  321. package/node_modules/@smithy/core/dist-types/submodules/serde/index.native.d.ts +1 -0
  322. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/SmithyRpcV2CborProtocol.d.ts +5 -14
  323. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/AbstractRpcV2Protocol.d.ts +45 -0
  324. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/RpcProtocol.d.ts +12 -0
  325. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/index.d.ts +1 -0
  326. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/json/SmithyRpcV2JsonProtocol.d.ts +5 -14
  327. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/protocol-http/extensions/httpExtensionConfiguration.d.ts +1 -0
  328. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/retry/util-retry/race.d.ts +3 -0
  329. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/serde/index.browser.d.ts +1 -0
  330. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/serde/index.d.ts +1 -0
  331. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/serde/index.native.d.ts +1 -0
  332. package/node_modules/@smithy/core/package.json +2 -2
  333. package/node_modules/@smithy/node-http-handler/dist-cjs/index.js +84 -29
  334. package/node_modules/@smithy/node-http-handler/dist-es/get-transformed-headers.js +2 -1
  335. package/node_modules/@smithy/node-http-handler/dist-es/node-http-handler.js +23 -11
  336. package/node_modules/@smithy/node-http-handler/dist-es/node-http2-handler.js +26 -2
  337. package/node_modules/@smithy/node-http-handler/dist-es/resolve-default-socket-timeout.js +4 -0
  338. package/node_modules/@smithy/node-http-handler/dist-es/set-socket-timeout.js +30 -15
  339. package/node_modules/@smithy/node-http-handler/dist-types/resolve-default-socket-timeout.d.ts +4 -0
  340. package/node_modules/@smithy/node-http-handler/dist-types/set-socket-timeout.d.ts +10 -1
  341. package/node_modules/@smithy/node-http-handler/dist-types/ts3.4/resolve-default-socket-timeout.d.ts +4 -0
  342. package/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-socket-timeout.d.ts +10 -1
  343. package/node_modules/@smithy/node-http-handler/package.json +3 -3
  344. package/node_modules/@smithy/signature-v4/dist-cjs/index.js +23 -11
  345. package/node_modules/@smithy/signature-v4/dist-es/HeaderFormatter.js +4 -2
  346. package/node_modules/@smithy/signature-v4/dist-es/SignatureV4Base.js +4 -2
  347. package/node_modules/@smithy/signature-v4/dist-es/getCanonicalHeaders.js +5 -1
  348. package/node_modules/@smithy/signature-v4/dist-es/getCanonicalQuery.js +2 -1
  349. package/node_modules/@smithy/signature-v4/dist-es/getPayloadHash.js +2 -1
  350. package/node_modules/@smithy/signature-v4/dist-es/headerUtil.js +6 -3
  351. package/node_modules/@smithy/signature-v4/dist-es/moveHeadersToQuery.js +2 -1
  352. package/node_modules/@smithy/signature-v4/dist-es/prepareRequest.js +2 -1
  353. package/node_modules/@smithy/signature-v4/package.json +2 -2
  354. package/node_modules/@smithy/types/dist-types/middleware.d.ts +6 -0
  355. package/node_modules/@smithy/types/dist-types/ts3.4/middleware.d.ts +6 -0
  356. package/node_modules/@smithy/types/package.json +1 -1
  357. package/package.json +1 -1
  358. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonSettings.js +0 -1
  359. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v1/JsonCodec.js +0 -20
  360. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v1/JsonSettings.js +0 -1
  361. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v1/JsonShapeDeserializer.js +0 -160
  362. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v1/JsonShapeSerializer.js +0 -193
  363. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.js +0 -103
  364. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v2/JsonCodec2.js +0 -20
  365. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v2/JsonShapeDeserializer2.js +0 -200
  366. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v2/JsonShapeSerializer2.js +0 -519
  367. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/detectBufferParsing.js +0 -18
  368. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/jsonReplacer.js +0 -46
  369. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/jsonReviver.js +0 -121
  370. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/needsReviver.js +0 -41
  371. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js +0 -89
  372. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/JsonSettings.d.ts +0 -7
  373. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v1/JsonCodec.d.ts +0 -15
  374. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v1/JsonSettings.d.ts +0 -7
  375. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v1/JsonShapeDeserializer.d.ts +0 -14
  376. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v1/JsonShapeSerializer.d.ts +0 -29
  377. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.d.ts +0 -51
  378. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v2/JsonCodec2.d.ts +0 -13
  379. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v2/JsonShapeDeserializer2.d.ts +0 -30
  380. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v2/JsonShapeSerializer2.d.ts +0 -60
  381. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/detectBufferParsing.d.ts +0 -1
  382. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/jsonReplacer.d.ts +0 -21
  383. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/jsonReviver.d.ts +0 -15
  384. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/needsReviver.d.ts +0 -11
  385. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/parseJsonBody.d.ts +0 -22
  386. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonSettings.d.ts +0 -4
  387. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonCodec.d.ts +0 -11
  388. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonSettings.d.ts +0 -4
  389. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonShapeDeserializer.d.ts +0 -13
  390. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonShapeSerializer.d.ts +0 -18
  391. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.d.ts +0 -27
  392. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonCodec2.d.ts +0 -9
  393. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonShapeDeserializer2.d.ts +0 -15
  394. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonShapeSerializer2.d.ts +0 -39
  395. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/detectBufferParsing.d.ts +0 -1
  396. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/jsonReplacer.d.ts +0 -7
  397. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/jsonReviver.d.ts +0 -7
  398. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/needsReviver.d.ts +0 -2
  399. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/parseJsonBody.d.ts +0 -14
  400. /package/node_modules/@smithy/core/dist-es/submodules/{protocols → serde}/writeKey.js +0 -0
  401. /package/node_modules/@smithy/core/dist-types/submodules/{protocols → serde}/writeKey.d.ts +0 -0
  402. /package/node_modules/@smithy/core/dist-types/ts3.4/submodules/{protocols → serde}/writeKey.d.ts +0 -0
@@ -1,9 +1,20 @@
1
1
  const { SmithyRpcV2CborProtocol, loadSmithyRpcV2CborErrorCode } = require("@smithy/core/cbor");
2
2
  const { TypeRegistry, NormalizedSchema, deref } = require("@smithy/core/schema");
3
3
  const { decorateServiceException, getValueFromTextNode } = require("@smithy/core/client");
4
- const { collectBody, determineTimestampFormat, RpcProtocol, HttpBindingProtocol, HttpInterceptingShapeSerializer, HttpInterceptingShapeDeserializer, FromStringShapeDeserializer, extendedEncodeURIComponent } = require("@smithy/core/protocols");
5
- const { NumericValue, toUtf8, fromBase64, LazyJsonString, parseEpochTimestamp, parseRfc7231DateTime, parseRfc3339DateTimeWithOffset, generateIdempotencyToken, toBase64, dateToUtcString, expectUnion } = require("@smithy/core/serde");
4
+ const { RpcProtocol, JsonCodec2, loadJsonRpcErrorCode, HttpBindingProtocol, HttpInterceptingShapeSerializer, HttpInterceptingShapeDeserializer, loadRestJsonErrorCode, SmithyRpcV2JsonProtocol, loadSmithyRpcV2JsonErrorCode, FromStringShapeDeserializer, determineTimestampFormat, extendedEncodeURIComponent, collectBody } = require("@smithy/core/protocols");
5
+ const { JsonCodec, JsonShapeDeserializer, JsonShapeDeserializer2, JsonShapeSerializer, JsonShapeSerializer2, parseJsonBody, parseJsonErrorBody } = require("@smithy/core/protocols");
6
+ exports.JsonCodec = JsonCodec;
7
+ exports.JsonCodec2 = JsonCodec2;
8
+ exports.JsonShapeDeserializer = JsonShapeDeserializer;
9
+ exports.JsonShapeDeserializer2 = JsonShapeDeserializer2;
10
+ exports.JsonShapeSerializer = JsonShapeSerializer;
11
+ exports.JsonShapeSerializer2 = JsonShapeSerializer2;
12
+ exports.loadJsonRpcErrorCode = loadJsonRpcErrorCode;
13
+ exports.loadRestJsonErrorCode = loadRestJsonErrorCode;
14
+ exports.parseJsonBody = parseJsonBody;
15
+ exports.parseJsonErrorBody = parseJsonErrorBody;
6
16
  const { parseXML, XmlNode, XmlText } = require("@aws-sdk/xml-builder");
17
+ const { toUtf8, toBase64, generateIdempotencyToken, NumericValue, dateToUtcString, fromBase64, expectUnion } = require("@smithy/core/serde");
7
18
 
8
19
  class ProtocolLib {
9
20
  queryCompat;
@@ -162,1167 +173,34 @@ class AwsSmithyRpcV2CborProtocol extends SmithyRpcV2CborProtocol {
162
173
  }
163
174
  async handleError(operationSchema, context, response, dataObject, metadata) {
164
175
  if (this.awsQueryCompatible) {
165
- this.mixin.setQueryCompatError(dataObject, response);
166
- }
167
- const errorName = (() => {
168
- const compatHeader = response.headers["x-amzn-query-error"];
169
- if (compatHeader && this.awsQueryCompatible) {
170
- return compatHeader.split(";")[0];
171
- }
172
- return loadSmithyRpcV2CborErrorCode(response, dataObject) ?? "Unknown";
173
- })();
174
- this.mixin.compose(this.compositeErrorRegistry, errorName, this.options.defaultNamespace);
175
- const { errorSchema, errorMetadata } = await this.mixin.getErrorSchemaOrThrowBaseException(errorName, this.options.defaultNamespace, response, dataObject, metadata, this.awsQueryCompatible ? this.mixin.findQueryCompatibleError : undefined);
176
- const ns = NormalizedSchema.of(errorSchema);
177
- const message = dataObject.message ?? dataObject.Message ?? "UnknownError";
178
- const ErrorCtor = this.compositeErrorRegistry.getErrorCtor(errorSchema) ?? Error;
179
- const exception = new ErrorCtor({});
180
- const output = {};
181
- for (const [name, member] of ns.structIterator()) {
182
- if (dataObject[name] != null) {
183
- output[name] = this.deserializer.readValue(member, dataObject[name]);
184
- }
185
- }
186
- if (this.awsQueryCompatible) {
187
- this.mixin.queryCompatOutput(dataObject, output);
188
- }
189
- throw this.mixin.decorateServiceException(Object.assign(exception, errorMetadata, {
190
- $fault: ns.getMergedTraits().error,
191
- message,
192
- }, output), dataObject);
193
- }
194
- }
195
-
196
- class SerdeContextConfig {
197
- serdeContext;
198
- setSerdeContext(serdeContext) {
199
- this.serdeContext = serdeContext;
200
- }
201
- }
202
-
203
- class UnionSerde {
204
- from;
205
- to;
206
- keys;
207
- constructor(from, to) {
208
- this.from = from;
209
- this.to = to;
210
- const keys = Object.keys(this.from);
211
- const set = new Set(keys);
212
- set.delete("__type");
213
- this.keys = set;
214
- }
215
- mark(key) {
216
- this.keys.delete(key);
217
- }
218
- hasUnknown() {
219
- return this.keys.size === 1 && Object.keys(this.to).length === 0;
220
- }
221
- writeUnknown() {
222
- if (this.hasUnknown()) {
223
- const k = this.keys.values().next().value;
224
- const v = this.from[k];
225
- this.to.$unknown = [k, v];
226
- }
227
- }
228
- }
229
-
230
- let canParseBuffer;
231
- function detectBufferParsing() {
232
- if (canParseBuffer === undefined) {
233
- try {
234
- if (typeof Buffer !== "function") {
235
- canParseBuffer = false;
236
- }
237
- else {
238
- const result = JSON.parse(Buffer.from([0x7b, 0x7d]));
239
- canParseBuffer = result !== null && typeof result === "object";
240
- }
241
- }
242
- catch {
243
- canParseBuffer = false;
244
- }
245
- }
246
- return canParseBuffer;
247
- }
248
-
249
- function jsonReviver(key, value, context) {
250
- if (context?.source) {
251
- const numericString = context.source;
252
- if (typeof value === "number") {
253
- const inSafeRange = value <= Number.MAX_SAFE_INTEGER && value >= Number.MIN_SAFE_INTEGER;
254
- if (inSafeRange) {
255
- if (isRepresentable(numericString, value)) {
256
- return value;
257
- }
258
- return new NumericValue(numericString, "bigDecimal");
259
- }
260
- else {
261
- if (isFractionalBigNumeric(numericString)) {
262
- return new NumericValue(numericString, "bigDecimal");
263
- }
264
- if (/[eE]/.test(numericString)) {
265
- return expandExponentToBigInt(numericString);
266
- }
267
- return BigInt(numericString);
268
- }
269
- }
270
- }
271
- return value;
272
- }
273
- function isFractionalBigNumeric(s) {
274
- const dotIndex = s.indexOf(".");
275
- if (dotIndex === -1) {
276
- return false;
277
- }
278
- const eIndex = s.search(/[eE]/);
279
- if (eIndex === -1) {
280
- return true;
281
- }
282
- const fracDigits = eIndex - dotIndex - 1;
283
- const exp = parseInt(s.slice(eIndex + 1), 10);
284
- return exp < fracDigits;
285
- }
286
- function isRepresentable(numericString, value) {
287
- if (numericString === String(value)) {
288
- return true;
289
- }
290
- if (Object.is(value, -0)) {
291
- return true;
292
- }
293
- if (/[eE]/.test(numericString)) {
294
- return expandToDecimal(numericString) === expandToDecimal(String(value));
295
- }
296
- const normalized = numericString.replace(/(\.\d*?)0+$/, "$1").replace(/\.$/, "");
297
- const canonical = String(value);
298
- if (normalized === canonical) {
299
- return true;
300
- }
301
- if (/[eE]/.test(canonical)) {
302
- return normalized === expandToDecimal(canonical);
303
- }
304
- return false;
305
- }
306
- function expandToDecimal(s) {
307
- const negative = s.startsWith("-");
308
- const abs = negative ? s.slice(1) : s;
309
- const eIndex = abs.search(/[eE]/);
310
- let result;
311
- if (eIndex === -1) {
312
- result = abs;
313
- }
314
- else {
315
- const exp = parseInt(abs.slice(eIndex + 1), 10);
316
- const mantissa = abs.slice(0, eIndex);
317
- const dotIndex = mantissa.indexOf(".");
318
- let digits;
319
- let intLen;
320
- if (dotIndex === -1) {
321
- digits = mantissa;
322
- intLen = mantissa.length;
323
- }
324
- else {
325
- digits = mantissa.slice(0, dotIndex) + mantissa.slice(dotIndex + 1);
326
- intLen = dotIndex;
327
- }
328
- digits = digits.replace(/0+$/, "") || "0";
329
- const newDotPos = intLen + exp;
330
- if (digits === "0") {
331
- result = "0";
332
- }
333
- else if (newDotPos <= 0) {
334
- result = "0." + "0".repeat(-newDotPos) + digits;
335
- }
336
- else if (newDotPos >= digits.length) {
337
- result = digits + "0".repeat(newDotPos - digits.length);
338
- }
339
- else {
340
- result = digits.slice(0, newDotPos) + "." + digits.slice(newDotPos);
341
- }
342
- }
343
- if (result.includes(".")) {
344
- result = result.replace(/(\.\d*?)0+$/, "$1").replace(/\.$/, "");
345
- }
346
- return (negative ? "-" : "") + result;
347
- }
348
- function expandExponentToBigInt(s) {
349
- const eIndex = s.search(/[eE]/);
350
- const exp = parseInt(s.slice(eIndex + 1), 10);
351
- const negative = s.startsWith("-");
352
- const mantissa = s.slice(negative ? 1 : 0, eIndex);
353
- const dotIndex = mantissa.indexOf(".");
354
- let digits;
355
- let shift;
356
- if (dotIndex === -1) {
357
- digits = mantissa;
358
- shift = exp;
359
- }
360
- else {
361
- digits = mantissa.slice(0, dotIndex) + mantissa.slice(dotIndex + 1);
362
- const fracDigits = mantissa.length - dotIndex - 1;
363
- shift = exp - fracDigits;
364
- }
365
- digits = digits.replace(/0+$/, "") || "0";
366
- const result = BigInt(digits) * 10n ** BigInt(shift + (mantissa.replace(".", "").length - digits.length));
367
- return negative ? -result : result;
368
- }
369
-
370
- const REVIVER_SYMBOL = Symbol.for("@aws-sdk/reviver");
371
- function needsReviver(schema) {
372
- const ns = NormalizedSchema.of(schema);
373
- const raw = ns.getSchema();
374
- if (Array.isArray(raw) && ns.isStructSchema()) {
375
- if (REVIVER_SYMBOL in raw) {
376
- return raw[REVIVER_SYMBOL];
377
- }
378
- const result = _check(ns, new Set());
379
- raw[REVIVER_SYMBOL] = result;
380
- return result;
381
- }
382
- return _check(ns, new Set());
383
- }
384
- function _check(ns, seen) {
385
- const raw = ns.getSchema();
386
- if (seen.has(raw)) {
387
- return false;
388
- }
389
- seen.add(raw);
390
- if (ns.isBigIntegerSchema() || ns.isBigDecimalSchema()) {
391
- return true;
392
- }
393
- if (ns.isStructSchema()) {
394
- for (const [, memberSchema] of ns.structIterator()) {
395
- if (_check(memberSchema, seen)) {
396
- return true;
397
- }
398
- }
399
- }
400
- else if (ns.isListSchema() || ns.isMapSchema()) {
401
- if (_check(ns.getValueSchema(), seen)) {
402
- return true;
403
- }
404
- }
405
- else if (ns.isDocumentSchema()) {
406
- return true;
407
- }
408
- return false;
409
- }
410
-
411
- const collectBodyString = (streamBody, context) => collectBody(streamBody, context).then((body) => (context?.utf8Encoder ?? toUtf8)(body));
412
-
413
- async function parseJsonBody(streamBody, context, schema) {
414
- let parsingInput;
415
- if (detectBufferParsing() && typeof streamBody?.[Symbol.asyncIterator] === "function") {
416
- const buffer = await collectBody(streamBody, context);
417
- if (typeof Buffer === "function") {
418
- if (Buffer.isBuffer(buffer)) {
419
- parsingInput = buffer;
420
- }
421
- else {
422
- parsingInput = Buffer.from(buffer.buffer, buffer.byteOffset, buffer.byteLength);
423
- }
424
- }
425
- }
426
- if (!parsingInput) {
427
- parsingInput = await collectBodyString(streamBody, context);
428
- }
429
- if (parsingInput.length === 0) {
430
- return {};
431
- }
432
- const reviver = schema && needsReviver(schema) ? jsonReviver : undefined;
433
- try {
434
- return JSON.parse(parsingInput, reviver);
435
- }
436
- catch (e) {
437
- if (e?.name === "SyntaxError") {
438
- Object.defineProperty(e, "$responseBodyText", {
439
- value: typeof parsingInput === "string" ? parsingInput : parsingInput.toString("utf8"),
440
- });
441
- }
442
- throw e;
443
- }
444
- }
445
- const parseJsonErrorBody = async (errorBody, context) => {
446
- const value = await parseJsonBody(errorBody, context);
447
- value.message = value.message ?? value.Message;
448
- return value;
449
- };
450
- const findKey = (object, key) => Object.keys(object).find((k) => k.toLowerCase() === key.toLowerCase());
451
- const sanitizeErrorCode = (rawValue) => {
452
- let cleanValue = rawValue;
453
- if (typeof cleanValue === "number") {
454
- cleanValue = cleanValue.toString();
455
- }
456
- if (cleanValue.indexOf(",") >= 0) {
457
- cleanValue = cleanValue.split(",")[0];
458
- }
459
- if (cleanValue.indexOf(":") >= 0) {
460
- cleanValue = cleanValue.split(":")[0];
461
- }
462
- if (cleanValue.indexOf("#") >= 0) {
463
- cleanValue = cleanValue.split("#")[1];
464
- }
465
- return cleanValue;
466
- };
467
- const loadRestJsonErrorCode = (output, data) => {
468
- return loadErrorCode(output, data, ["header", "code", "type"]);
469
- };
470
- const loadJsonRpcErrorCode = (output, data, queryCompat = false) => {
471
- return loadErrorCode(output, data, queryCompat ? ["code", "header", "type"] : ["type", "code", "header"]);
472
- };
473
- const loadErrorCode = ({ headers }, data, order) => {
474
- while (order.length > 0) {
475
- const location = order.shift();
476
- switch (location) {
477
- case "header":
478
- const headerKey = findKey(headers ?? {}, "x-amzn-errortype");
479
- if (headerKey !== undefined) {
480
- return sanitizeErrorCode(headers[headerKey]);
481
- }
482
- break;
483
- case "code":
484
- const codeKey = findKey(data ?? {}, "code");
485
- if (codeKey && data[codeKey] !== undefined) {
486
- return sanitizeErrorCode(data[codeKey]);
487
- }
488
- break;
489
- case "type":
490
- if (data?.__type !== undefined) {
491
- return sanitizeErrorCode(data.__type);
492
- }
493
- break;
494
- }
495
- }
496
- };
497
-
498
- function writeKey(obj) {
499
- Object.defineProperty(obj, "__proto__", { value: undefined, writable: true, enumerable: true, configurable: true });
500
- }
501
-
502
- class JsonShapeDeserializer2 extends SerdeContextConfig {
503
- settings;
504
- constructor(settings) {
505
- super();
506
- this.settings = settings;
507
- }
508
- async read(schema, data) {
509
- const reviver = needsReviver(schema) ? jsonReviver : undefined;
510
- let parsed;
511
- if (typeof data === "string") {
512
- if (data.length === 0) {
513
- return {};
514
- }
515
- parsed = JSON.parse(data, reviver);
516
- }
517
- else if (data instanceof Uint8Array && detectBufferParsing()) {
518
- if (data.byteLength === 0) {
519
- return {};
520
- }
521
- const buf = Buffer.isBuffer(data) ? data : Buffer.from(data.buffer, data.byteOffset, data.byteLength);
522
- parsed = JSON.parse(buf, reviver);
523
- }
524
- else {
525
- parsed = await parseJsonBody(data, this.serdeContext, schema);
526
- }
527
- return this._read(schema, parsed);
528
- }
529
- readObject(schema, data) {
530
- return this._read(schema, data);
531
- }
532
- _read(schema, value) {
533
- const isObject = value !== null && typeof value === "object";
534
- const ns = NormalizedSchema.of(schema);
535
- if (isObject) {
536
- if (ns.isStructSchema()) {
537
- return this._readStruct(ns, value);
538
- }
539
- if (Array.isArray(value) && ns.isListSchema()) {
540
- const listMember = ns.getValueSchema();
541
- if (this.needsTransform(listMember)) {
542
- for (let i = 0; i < value.length; ++i) {
543
- value[i] = this._read(listMember, value[i]);
544
- }
545
- }
546
- return value;
547
- }
548
- if (ns.isMapSchema()) {
549
- const mapMember = ns.getValueSchema();
550
- const map = value;
551
- if (this.needsTransform(mapMember)) {
552
- for (const k in map) {
553
- if (k === "__proto__") {
554
- writeKey(map);
555
- }
556
- map[k] = this._read(mapMember, map[k]);
557
- }
558
- }
559
- return map;
560
- }
561
- }
562
- if (ns.isBlobSchema() && typeof value === "string") {
563
- return fromBase64(value);
564
- }
565
- const mediaType = ns.getMergedTraits().mediaType;
566
- if (ns.isStringSchema() && typeof value === "string" && mediaType) {
567
- const isJson = mediaType === "application/json" || mediaType.endsWith("+json");
568
- if (isJson) {
569
- return LazyJsonString.from(value);
570
- }
571
- return value;
572
- }
573
- if (ns.isTimestampSchema() && value != null) {
574
- const format = determineTimestampFormat(ns, this.settings);
575
- switch (format) {
576
- case 5:
577
- return parseRfc3339DateTimeWithOffset(value);
578
- case 6:
579
- return parseRfc7231DateTime(value);
580
- case 7:
581
- return parseEpochTimestamp(value);
582
- default:
583
- console.warn("Missing timestamp format, parsing value with Date constructor:", value);
584
- return new Date(value);
585
- }
586
- }
587
- if (ns.isBigIntegerSchema() && (typeof value === "number" || typeof value === "string")) {
588
- return BigInt(value);
589
- }
590
- if (ns.isBigDecimalSchema() && value != undefined) {
591
- if (value instanceof NumericValue) {
592
- return value;
593
- }
594
- const untyped = value;
595
- if (untyped.type === "bigDecimal" && "string" in untyped) {
596
- return new NumericValue(untyped.string, untyped.type);
597
- }
598
- return new NumericValue(String(value), "bigDecimal");
599
- }
600
- if (ns.isNumericSchema() && typeof value === "string") {
601
- switch (value) {
602
- case "Infinity":
603
- return Infinity;
604
- case "-Infinity":
605
- return -Infinity;
606
- case "NaN":
607
- return NaN;
608
- }
609
- return value;
610
- }
611
- if (ns.isDocumentSchema()) {
612
- if (isObject) {
613
- if (Array.isArray(value)) {
614
- for (let i = 0; i < value.length; ++i) {
615
- const v = value[i];
616
- if (!(v instanceof NumericValue)) {
617
- value[i] = this._read(ns, v);
618
- }
619
- }
620
- }
621
- else {
622
- const doc = value;
623
- for (const k in doc) {
624
- if (k === "__proto__") {
625
- writeKey(doc);
626
- }
627
- const v = doc[k];
628
- if (!(v instanceof NumericValue)) {
629
- doc[k] = this._read(ns, v);
630
- }
631
- }
632
- }
633
- }
634
- }
635
- return value;
636
- }
637
- _readStruct(ns, record) {
638
- const union = ns.isUnionSchema();
639
- const out = {};
640
- let nameMap;
641
- const hasType = typeof record.__type === "string";
642
- const { jsonName } = this.settings;
643
- if (jsonName && hasType) {
644
- nameMap = {};
645
- }
646
- let unionSerde;
647
- if (union) {
648
- unionSerde = new UnionSerde(record, out);
649
- }
650
- for (const [memberName, memberSchema] of ns.structIterator()) {
651
- let fromKey = memberName;
652
- if (jsonName) {
653
- fromKey = memberSchema.getMergedTraits().jsonName ?? fromKey;
654
- if (hasType) {
655
- nameMap[fromKey] = memberName;
656
- }
657
- }
658
- if (union) {
659
- unionSerde.mark(fromKey);
660
- }
661
- if (record[fromKey] != null) {
662
- out[memberName] = this._read(memberSchema, record[fromKey]);
663
- }
664
- }
665
- if (union) {
666
- unionSerde.writeUnknown();
667
- }
668
- else if (hasType) {
669
- for (const k in record) {
670
- const v = record[k];
671
- const t = jsonName ? (nameMap[k] ?? k) : k;
672
- if (!(t in out)) {
673
- out[t] = v;
674
- }
675
- }
676
- }
677
- return out;
678
- }
679
- needsTransform(ns) {
680
- if (ns.isBlobSchema() || ns.isTimestampSchema() || ns.isBigIntegerSchema() || ns.isBigDecimalSchema()) {
681
- return true;
682
- }
683
- if (ns.isDocumentSchema() || ns.isStructSchema() || ns.isListSchema() || ns.isMapSchema()) {
684
- return true;
685
- }
686
- if (ns.isStringSchema() && ns.getMergedTraits().mediaType) {
687
- return true;
688
- }
689
- return false;
690
- }
691
- }
692
-
693
- class JsonBytesStringAdapter extends Uint8Array {
694
- string = null;
695
- static allocUnsafe(bytes) {
696
- if (typeof Buffer === "function") {
697
- const buffer = Buffer.allocUnsafe(bytes);
698
- return new JsonBytesStringAdapter(buffer.buffer, buffer.byteOffset, buffer.byteLength);
699
- }
700
- return new JsonBytesStringAdapter(bytes);
701
- }
702
- toString() {
703
- return this.s();
704
- }
705
- valueOf() {
706
- return this.s();
707
- }
708
- includes(searchString, position) {
709
- if (typeof searchString === "string") {
710
- return this.s().includes(searchString, position);
711
- }
712
- return Uint8Array.prototype.includes.call(this, searchString, position);
713
- }
714
- indexOf(searchString, position) {
715
- if (typeof searchString === "string") {
716
- return this.s().indexOf(searchString, position);
717
- }
718
- return Uint8Array.prototype.indexOf.call(this, searchString, position);
719
- }
720
- lastIndexOf(searchString, position) {
721
- if (typeof searchString === "string") {
722
- return this.s().lastIndexOf(searchString, position);
723
- }
724
- const fn = Uint8Array.prototype.lastIndexOf;
725
- if (position !== undefined) {
726
- return fn.call(this, searchString, position);
727
- }
728
- return fn.call(this, searchString);
729
- }
730
- startsWith(searchString, position) {
731
- return this.s().startsWith(searchString, position);
732
- }
733
- endsWith(searchString, endPosition) {
734
- return this.s().endsWith(searchString, endPosition);
735
- }
736
- match(regexp) {
737
- return this.s().match(regexp);
738
- }
739
- replace(searchValue, replaceValue) {
740
- return this.s().replace(searchValue, replaceValue);
741
- }
742
- search(regexp) {
743
- return this.s().search(regexp);
744
- }
745
- split(separator, limit) {
746
- return this.s().split(separator, limit);
747
- }
748
- substring(start, end) {
749
- return this.s().substring(start, end);
750
- }
751
- trim() {
752
- return this.s().trim();
753
- }
754
- trimStart() {
755
- return this.s().trimStart();
756
- }
757
- trimEnd() {
758
- return this.s().trimEnd();
759
- }
760
- charAt(pos) {
761
- return this.s().charAt(pos);
762
- }
763
- charCodeAt(index) {
764
- return this.s().charCodeAt(index);
765
- }
766
- padStart(maxLength, fillString) {
767
- return this.s().padStart(maxLength, fillString);
768
- }
769
- padEnd(maxLength, fillString) {
770
- return this.s().padEnd(maxLength, fillString);
771
- }
772
- repeat(count) {
773
- return this.s().repeat(count);
774
- }
775
- toUpperCase() {
776
- return this.s().toUpperCase();
777
- }
778
- toLowerCase() {
779
- return this.s().toLowerCase();
780
- }
781
- s() {
782
- if (this.string == null) {
783
- const n = Date.now();
784
- if (n > warned + 60_000) {
785
- console.warn("@aws-sdk/core/protocols - WARN - JsonCodec2: you have called a string method on a Uint8Array request body. " +
786
- "It has been automatically converted to string. In a future version this will throw an error.");
787
- warned = n;
788
- }
789
- this.string = toUtf8(this);
790
- }
791
- return this.string;
792
- }
793
- }
794
- var warned = 0;
795
-
796
- const encoder = new TextEncoder();
797
- const OPEN_BRACE = 0x7b;
798
- const CLOSE_BRACE = 0x7d;
799
- const OPEN_BRACKET = 0x5b;
800
- const CLOSE_BRACKET = 0x5d;
801
- const QUOTE = 0x22;
802
- const COLON = 0x3a;
803
- const COMMA = 0x2c;
804
- const BACKSLASH = 0x5c;
805
- const TRUE = new Uint8Array([0x74, 0x72, 0x75, 0x65]);
806
- const FALSE = new Uint8Array([0x66, 0x61, 0x6c, 0x73, 0x65]);
807
- const NULL = new Uint8Array([0x6e, 0x75, 0x6c, 0x6c]);
808
- const ESCAPE_TABLE = new Array(128).fill(null);
809
- ESCAPE_TABLE[0x08] = "b";
810
- ESCAPE_TABLE[0x09] = "t";
811
- ESCAPE_TABLE[0x0a] = "n";
812
- ESCAPE_TABLE[0x0c] = "f";
813
- ESCAPE_TABLE[0x0d] = "r";
814
- ESCAPE_TABLE[0x22] = '"';
815
- ESCAPE_TABLE[0x5c] = "\\";
816
- for (let i = 0; i < 0x20; i++) {
817
- if (ESCAPE_TABLE[i] === null) {
818
- ESCAPE_TABLE[i] = "u00" + i.toString(16).padStart(2, "0");
819
- }
820
- }
821
- const INITIAL_BUFFER_SIZE = 2048;
822
- function alloc(size) {
823
- return JsonBytesStringAdapter.allocUnsafe(size);
824
- }
825
- class JsonShapeSerializer2 extends SerdeContextConfig {
826
- settings;
827
- json;
828
- i = 0;
829
- rootSchema;
830
- rawValue;
831
- passthrough = false;
832
- constructor(settings) {
833
- super();
834
- this.settings = settings;
835
- this.json = alloc(INITIAL_BUFFER_SIZE);
836
- }
837
- write(schema, value) {
838
- this.i = 0;
839
- this.rawValue = value;
840
- this.rootSchema = NormalizedSchema.of(schema);
841
- this.passthrough = this.rootSchema.isBlobSchema() || this.rootSchema.isStringSchema();
842
- if (!this.passthrough) {
843
- this.writeValue(this.rootSchema, value, undefined);
844
- }
845
- }
846
- writeDiscriminatedDocument(schema, value) {
847
- this.i = 0;
848
- this.rootSchema = NormalizedSchema.of(schema);
849
- const ns = this.rootSchema;
850
- if (ns.isStructSchema() && value != null && typeof value === "object") {
851
- this.writeValue(ns, value, undefined);
852
- const prefix = `"__type":"${ns.getName(true) ?? "Unknown"}",`;
853
- const z = prefix.length;
854
- this.ensure(z);
855
- this.json.copyWithin(1 + z, 1, this.i);
856
- encoder.encodeInto(prefix, this.json.subarray(1));
857
- this.i += z;
858
- }
859
- else {
860
- this.writeValue(ns, value, undefined);
861
- }
862
- }
863
- flush() {
864
- this.rootSchema = undefined;
865
- const finalPosition = this.i;
866
- this.i = 0;
867
- const raw = this.rawValue;
868
- this.rawValue = undefined;
869
- if (finalPosition === 0) {
870
- return raw;
871
- }
872
- const result = this.json.subarray(0, finalPosition);
873
- this.json = alloc(INITIAL_BUFFER_SIZE);
874
- return result;
875
- }
876
- ensure(byteCount) {
877
- const { i, json } = this;
878
- if (i + byteCount > json.length) {
879
- let newSize = json.length * 2;
880
- while (newSize < i + byteCount) {
881
- newSize *= 2;
882
- }
883
- const next = alloc(newSize);
884
- next.set(this.json);
885
- this.json = next;
886
- }
887
- }
888
- writeAscii(s) {
889
- const z = s.length;
890
- this.ensure(z);
891
- let { i, json } = this;
892
- for (let j = 0; j < z; ++j) {
893
- json[i] = s.charCodeAt(j);
894
- i += 1;
895
- }
896
- this.i = i;
897
- }
898
- writeAsciiQuoted(s) {
899
- const z = s.length;
900
- this.ensure(z + 4);
901
- let { json, i } = this;
902
- json[i++] = QUOTE;
903
- for (let j = 0; j < z; ++j) {
904
- json[i++] = s.charCodeAt(j);
905
- }
906
- json[i++] = QUOTE;
907
- this.i = i;
908
- }
909
- writeJsonString(s) {
910
- this.ensure(s.length * 3 + 2);
911
- this.json[this.i++] = QUOTE;
912
- const z = s.length;
913
- for (let j = 0; j < z; ++j) {
914
- const c = s.charCodeAt(j);
915
- if (c > 0x22 && c < 0x5c) {
916
- this.json[this.i++] = c;
917
- }
918
- else if (c < 0x80) {
919
- const esc = ESCAPE_TABLE[c];
920
- if (esc !== null) {
921
- this.ensure(esc.length + 1);
922
- this.json[this.i++] = BACKSLASH;
923
- for (let k = 0; k < esc.length; k++) {
924
- this.json[this.i++] = esc.charCodeAt(k);
925
- }
926
- }
927
- else {
928
- this.json[this.i++] = c;
929
- }
930
- }
931
- else if (c >= 0xd800 && c <= 0xdbff) {
932
- const next = j + 1 < z ? s.charCodeAt(j + 1) : 0;
933
- if (next >= 0xdc00 && next <= 0xdfff) {
934
- this.ensure(4);
935
- const { written } = encoder.encodeInto(s.substring(j, j + 2), this.json.subarray(this.i));
936
- this.i += written;
937
- ++j;
938
- }
939
- else {
940
- this.ensure(6);
941
- this.writeUnicodeEscape(c);
942
- }
943
- }
944
- else if (c >= 0xdc00 && c <= 0xdfff) {
945
- this.ensure(6);
946
- this.writeUnicodeEscape(c);
947
- }
948
- else {
949
- let { i, json } = this;
950
- if (c < 0x800) {
951
- json[i++] = 0xc0 | (c >> 6);
952
- json[i++] = 0x80 | (c & 0x3f);
953
- }
954
- else {
955
- json[i++] = 0xe0 | (c >> 12);
956
- json[i++] = 0x80 | ((c >> 6) & 0x3f);
957
- json[i++] = 0x80 | (c & 0x3f);
958
- }
959
- this.i = i;
960
- }
961
- }
962
- this.json[this.i++] = QUOTE;
963
- }
964
- writeUnicodeEscape(code) {
965
- let { json, i } = this;
966
- json[i++] = BACKSLASH;
967
- json[i++] = 0x75;
968
- const hex = code.toString(16).padStart(4, "0");
969
- for (let j = 0; j < 4; ++j) {
970
- json[i++] = hex.charCodeAt(j);
971
- }
972
- this.i = i;
973
- }
974
- static B64 = (() => {
975
- const chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
976
- const table = new Uint8Array(64);
977
- for (let i = 0; i < 64; ++i) {
978
- table[i] = chars.charCodeAt(i);
979
- }
980
- return table;
981
- })();
982
- writeBase64(data) {
983
- const b64Len = Math.ceil(data.length / 3) * 4;
984
- this.ensure(b64Len + 2);
985
- const json = this.json;
986
- const B64 = JsonShapeSerializer2.B64;
987
- let i = this.i;
988
- json[i++] = QUOTE;
989
- const len = data.length;
990
- const remainder = len % 3;
991
- const mainLen = len - remainder;
992
- for (let j = 0; j < mainLen; j += 3) {
993
- const a = data[j];
994
- const b = data[j + 1];
995
- const c = data[j + 2];
996
- json[i++] = B64[a >> 2];
997
- json[i++] = B64[((a & 0x03) << 4) | (b >> 4)];
998
- json[i++] = B64[((b & 0x0f) << 2) | (c >> 6)];
999
- json[i++] = B64[c & 0x3f];
1000
- }
1001
- if (remainder === 2) {
1002
- const a = data[mainLen];
1003
- const b = data[mainLen + 1];
1004
- json[i++] = B64[a >> 2];
1005
- json[i++] = B64[((a & 0x03) << 4) | (b >> 4)];
1006
- json[i++] = B64[(b & 0x0f) << 2];
1007
- json[i++] = 0x3d;
1008
- }
1009
- else if (remainder === 1) {
1010
- const a = data[mainLen];
1011
- json[i++] = B64[a >> 2];
1012
- json[i++] = B64[(a & 0x03) << 4];
1013
- json[i++] = 0x3d;
1014
- json[i++] = 0x3d;
1015
- }
1016
- json[i++] = QUOTE;
1017
- this.i = i;
1018
- }
1019
- writeValue(schema, value, container) {
1020
- if (value == null) {
1021
- if (container?.isStructSchema()) {
1022
- if (value === undefined) {
1023
- const ns = NormalizedSchema.of(schema);
1024
- if (ns.isIdempotencyToken()) {
1025
- this.writeAsciiQuoted(generateIdempotencyToken());
1026
- return;
1027
- }
1028
- }
1029
- return;
1030
- }
1031
- this.ensure(4);
1032
- this.json.set(NULL, this.i);
1033
- this.i += 4;
1034
- return;
1035
- }
1036
- const ns = NormalizedSchema.of(schema);
1037
- const isObject = typeof value === "object";
1038
- if (ns.isStringSchema()) {
1039
- const mediaType = ns.getMergedTraits().mediaType;
1040
- if (mediaType) {
1041
- const isJson = mediaType === "application/json" || mediaType.endsWith("+json");
1042
- if (isJson) {
1043
- this.writeJsonString(LazyJsonString.from(value).toString());
1044
- return;
1045
- }
1046
- }
1047
- }
1048
- if (isObject) {
1049
- if (ns.isStructSchema()) {
1050
- this.writeStruct(ns, value);
1051
- return;
1052
- }
1053
- if (Array.isArray(value) && (ns.isListSchema() || ns.isDocumentSchema())) {
1054
- this.writeList(ns, value, ns.isDocumentSchema());
1055
- return;
1056
- }
1057
- if (ns.isMapSchema()) {
1058
- this.writeMap(ns, value, false);
1059
- return;
1060
- }
1061
- if (value instanceof Uint8Array && (ns.isBlobSchema() || ns.isDocumentSchema())) {
1062
- this.writeBase64(value);
1063
- return;
1064
- }
1065
- if (value instanceof Date && (ns.isTimestampSchema() || ns.isDocumentSchema())) {
1066
- this.writeTimestamp(ns, value);
1067
- return;
1068
- }
1069
- if (value instanceof NumericValue) {
1070
- this.writeAscii(value.string);
1071
- return;
1072
- }
1073
- if (ns.isDocumentSchema()) {
1074
- if (Array.isArray(value)) {
1075
- this.writeList(ns, value, true);
1076
- }
1077
- else {
1078
- this.writeMap(ns, value, true);
1079
- }
1080
- return;
1081
- }
1082
- const json = JSON.stringify(value);
1083
- this.writeAscii(json);
1084
- return;
1085
- }
1086
- if (typeof value === "string") {
1087
- if (ns.isBlobSchema()) {
1088
- const b64 = (this.serdeContext?.base64Encoder ?? toBase64)(value);
1089
- this.writeAsciiQuoted(b64);
1090
- return;
1091
- }
1092
- this.writeJsonString(value);
1093
- return;
1094
- }
1095
- if (typeof value === "number") {
1096
- if (Math.abs(value) === Infinity || Number.isNaN(value)) {
1097
- this.writeAsciiQuoted(String(value));
1098
- return;
1099
- }
1100
- const numStr = String(value);
1101
- this.writeAscii(numStr);
1102
- return;
1103
- }
1104
- if (typeof value === "boolean") {
1105
- this.ensure(5);
1106
- let { i, json } = this;
1107
- if (value) {
1108
- json.set(TRUE, i);
1109
- i += 4;
1110
- }
1111
- else {
1112
- json.set(FALSE, i);
1113
- i += 5;
1114
- }
1115
- this.i = i;
1116
- return;
1117
- }
1118
- if (typeof value === "bigint") {
1119
- this.writeAscii(value.toString());
1120
- return;
1121
- }
1122
- this.writeAscii(String(value));
1123
- }
1124
- writeStruct(ns, value) {
1125
- this.ensure(2);
1126
- this.json[this.i++] = OPEN_BRACE;
1127
- let wroteAny = false;
1128
- const hasType = typeof value.__type === "string";
1129
- let writtenKeys;
1130
- if (hasType) {
1131
- writtenKeys = new Set();
1132
- }
1133
- for (const [memberName, memberSchema] of ns.structIterator()) {
1134
- const item = value[memberName];
1135
- if (item == null && !memberSchema.isIdempotencyToken()) {
1136
- continue;
1137
- }
1138
- if (wroteAny) {
1139
- this.ensure(1);
1140
- this.json[this.i++] = COMMA;
1141
- }
1142
- wroteAny = true;
1143
- const targetKey = this.settings.jsonName ? (memberSchema.getMergedTraits().jsonName ?? memberName) : memberName;
1144
- if (writtenKeys) {
1145
- writtenKeys.add(memberName);
1146
- writtenKeys.add(targetKey);
1147
- }
1148
- this.writeAsciiQuoted(targetKey);
1149
- this.json[this.i++] = COLON;
1150
- this.writeValue(memberSchema, item, ns);
1151
- }
1152
- if (!wroteAny && ns.isUnionSchema()) {
1153
- const { $unknown } = value;
1154
- if (Array.isArray($unknown)) {
1155
- const [k, v] = $unknown;
1156
- this.writeAsciiQuoted(k);
1157
- this.ensure(1);
1158
- this.json[this.i++] = COLON;
1159
- this.writeValue(15, v, ns);
1160
- }
1161
- }
1162
- else if (hasType) {
1163
- for (const k in value) {
1164
- if (writtenKeys.has(k)) {
1165
- continue;
1166
- }
1167
- writtenKeys.add(k);
1168
- const v = value[k];
1169
- if (wroteAny) {
1170
- this.ensure(1);
1171
- this.json[this.i++] = COMMA;
1172
- }
1173
- wroteAny = true;
1174
- this.writeAsciiQuoted(k);
1175
- this.ensure(1);
1176
- this.json[this.i++] = COLON;
1177
- this.writeValue(15, v, undefined);
1178
- }
1179
- }
1180
- this.ensure(1);
1181
- this.json[this.i++] = CLOSE_BRACE;
1182
- }
1183
- writeList(ns, value, isDocument) {
1184
- const sparse = !!ns.getMergedTraits().sparse;
1185
- const valueSchema = ns.getValueSchema();
1186
- if (!isDocument) {
1187
- if (valueSchema.isStringSchema() || valueSchema.isNumericSchema() || valueSchema.isBooleanSchema()) {
1188
- let hasSpecials = false;
1189
- for (let i = 0; i < value.length; ++i) {
1190
- const v = value[i];
1191
- if (Number.isNaN(v) || v === Infinity || v === -Infinity || (v == null && !sparse)) {
1192
- hasSpecials = true;
1193
- break;
1194
- }
1195
- }
1196
- let json;
1197
- if (!hasSpecials) {
1198
- json = JSON.stringify(value);
1199
- }
1200
- else {
1201
- const out = [];
1202
- for (let i = 0; i < value.length; ++i) {
1203
- const v = value[i];
1204
- if (v == null && !sparse)
1205
- continue;
1206
- if (Number.isNaN(v) || v === Infinity || v === -Infinity) {
1207
- out.push(String(v));
1208
- }
1209
- else {
1210
- out.push(v);
1211
- }
1212
- }
1213
- json = JSON.stringify(out);
1214
- }
1215
- this.ensure(json.length * 3);
1216
- this.i += encoder.encodeInto(json, this.json.subarray(this.i)).written;
1217
- return;
1218
- }
1219
- }
1220
- this.ensure(2);
1221
- this.json[this.i++] = OPEN_BRACKET;
1222
- let wroteFirstItem = false;
1223
- for (let i = 0; i < value.length; ++i) {
1224
- const item = value[i];
1225
- if (isDocument ? item === undefined : item == null && !sparse) {
1226
- continue;
1227
- }
1228
- if (wroteFirstItem) {
1229
- this.ensure(1);
1230
- this.json[this.i++] = COMMA;
1231
- }
1232
- this.writeValue(valueSchema, item, undefined);
1233
- wroteFirstItem = true;
1234
- }
1235
- this.ensure(1);
1236
- this.json[this.i++] = CLOSE_BRACKET;
1237
- }
1238
- writeMap(ns, value, isDocument) {
1239
- const sparse = !!ns.getMergedTraits().sparse;
1240
- const valueSchema = ns.getValueSchema();
1241
- if (!isDocument) {
1242
- if (valueSchema.isStringSchema() || valueSchema.isNumericSchema() || valueSchema.isBooleanSchema()) {
1243
- let modifications;
1244
- for (const k in value) {
1245
- const v = value[k];
1246
- if (Number.isNaN(v) || v === Infinity || v === -Infinity) {
1247
- (modifications ??= {})[k] = v;
1248
- value[k] = String(v);
1249
- }
1250
- else if (v === null && !sparse) {
1251
- (modifications ??= {})[k] = null;
1252
- value[k] = undefined;
1253
- }
1254
- }
1255
- const json = JSON.stringify(value);
1256
- if (modifications) {
1257
- Object.assign(value, modifications);
1258
- }
1259
- this.ensure(json.length * 3);
1260
- this.i += encoder.encodeInto(json, this.json.subarray(this.i)).written;
1261
- return;
1262
- }
176
+ this.mixin.setQueryCompatError(dataObject, response);
1263
177
  }
1264
- this.ensure(2);
1265
- this.json[this.i++] = OPEN_BRACE;
1266
- let first = true;
1267
- for (const k in value) {
1268
- const v = value[k];
1269
- if (isDocument ? v === undefined : v == null && !sparse) {
1270
- continue;
178
+ const errorName = (() => {
179
+ const compatHeader = response.headers["x-amzn-query-error"];
180
+ if (compatHeader && this.awsQueryCompatible) {
181
+ return compatHeader.split(";")[0];
1271
182
  }
1272
- if (!first) {
1273
- this.ensure(1);
1274
- this.json[this.i++] = COMMA;
183
+ return loadSmithyRpcV2CborErrorCode(response, dataObject) ?? "Unknown";
184
+ })();
185
+ this.mixin.compose(this.compositeErrorRegistry, errorName, this.options.defaultNamespace);
186
+ const { errorSchema, errorMetadata } = await this.mixin.getErrorSchemaOrThrowBaseException(errorName, this.options.defaultNamespace, response, dataObject, metadata, this.awsQueryCompatible ? this.mixin.findQueryCompatibleError : undefined);
187
+ const ns = NormalizedSchema.of(errorSchema);
188
+ const message = dataObject.message ?? dataObject.Message ?? "UnknownError";
189
+ const ErrorCtor = this.compositeErrorRegistry.getErrorCtor(errorSchema) ?? Error;
190
+ const exception = new ErrorCtor({});
191
+ const output = {};
192
+ for (const [name, member] of ns.structIterator()) {
193
+ if (dataObject[name] != null) {
194
+ output[name] = this.deserializer.readValue(member, dataObject[name]);
1275
195
  }
1276
- first = false;
1277
- this.writeJsonString(k);
1278
- this.ensure(1);
1279
- this.json[this.i++] = COLON;
1280
- this.writeValue(valueSchema, v, undefined);
1281
196
  }
1282
- this.ensure(1);
1283
- this.json[this.i++] = CLOSE_BRACE;
1284
- }
1285
- writeTimestamp(ns, value) {
1286
- const format = determineTimestampFormat(ns, this.settings);
1287
- switch (format) {
1288
- case 5: {
1289
- const iso = value.toISOString().replace(".000Z", "Z");
1290
- this.writeAsciiQuoted(iso);
1291
- return;
1292
- }
1293
- case 6: {
1294
- this.writeAsciiQuoted(dateToUtcString(value));
1295
- return;
1296
- }
1297
- case 7: {
1298
- const epochSecs = String(value.getTime() / 1000);
1299
- this.writeAscii(epochSecs);
1300
- return;
1301
- }
1302
- default: {
1303
- const epochSecs = String(value.getTime() / 1000);
1304
- this.writeAscii(epochSecs);
1305
- return;
1306
- }
197
+ if (this.awsQueryCompatible) {
198
+ this.mixin.queryCompatOutput(dataObject, output);
1307
199
  }
1308
- }
1309
- }
1310
-
1311
- class JsonCodec2 extends SerdeContextConfig {
1312
- settings;
1313
- constructor(settings) {
1314
- super();
1315
- this.settings = settings;
1316
- }
1317
- createSerializer() {
1318
- const serializer = new JsonShapeSerializer2(this.settings);
1319
- serializer.setSerdeContext(this.serdeContext);
1320
- return serializer;
1321
- }
1322
- createDeserializer() {
1323
- const deserializer = new JsonShapeDeserializer2(this.settings);
1324
- deserializer.setSerdeContext(this.serdeContext);
1325
- return deserializer;
200
+ throw this.mixin.decorateServiceException(Object.assign(exception, errorMetadata, {
201
+ $fault: ns.getMergedTraits().error,
202
+ message,
203
+ }, output), dataObject);
1326
204
  }
1327
205
  }
1328
206
 
@@ -1523,407 +401,91 @@ class AwsRestJsonProtocol extends HttpBindingProtocol {
1523
401
  }
1524
402
  }
1525
403
 
1526
- class JsonShapeDeserializer extends SerdeContextConfig {
1527
- settings;
1528
- constructor(settings) {
1529
- super();
1530
- this.settings = settings;
1531
- }
1532
- async read(schema, data) {
1533
- const reviver = needsReviver(schema) ? jsonReviver : undefined;
1534
- return this._read(schema, typeof data === "string" ? JSON.parse(data, reviver) : await parseJsonBody(data, this.serdeContext, schema));
1535
- }
1536
- readObject(schema, data) {
1537
- return this._read(schema, data);
404
+ class AwsSmithyRpcV2JsonProtocol extends SmithyRpcV2JsonProtocol {
405
+ awsQueryCompatible;
406
+ mixin;
407
+ constructor({ defaultNamespace, errorTypeRegistries, awsQueryCompatible, }) {
408
+ super({ defaultNamespace, errorTypeRegistries });
409
+ this.awsQueryCompatible = !!awsQueryCompatible;
410
+ this.mixin = new ProtocolLib(this.awsQueryCompatible);
1538
411
  }
1539
- _read(schema, value) {
1540
- const isObject = value !== null && typeof value === "object";
1541
- const ns = NormalizedSchema.of(schema);
1542
- if (isObject) {
1543
- if (ns.isStructSchema()) {
1544
- const record = value;
1545
- const union = ns.isUnionSchema();
1546
- const out = {};
1547
- let nameMap = void 0;
1548
- const { jsonName } = this.settings;
1549
- if (jsonName) {
1550
- nameMap = {};
1551
- }
1552
- let unionSerde;
1553
- if (union) {
1554
- unionSerde = new UnionSerde(record, out);
1555
- }
1556
- for (const [memberName, memberSchema] of ns.structIterator()) {
1557
- let fromKey = memberName;
1558
- if (jsonName) {
1559
- fromKey = memberSchema.getMergedTraits().jsonName ?? fromKey;
1560
- nameMap[fromKey] = memberName;
1561
- }
1562
- if (union) {
1563
- unionSerde.mark(fromKey);
1564
- }
1565
- if (record[fromKey] != null) {
1566
- out[memberName] = this._read(memberSchema, record[fromKey]);
1567
- }
1568
- }
1569
- if (union) {
1570
- unionSerde.writeUnknown();
1571
- }
1572
- else if (typeof record.__type === "string") {
1573
- for (const k in record) {
1574
- const v = record[k];
1575
- const t = jsonName ? (nameMap[k] ?? k) : k;
1576
- if (!(t in out)) {
1577
- out[t] = v;
1578
- }
1579
- }
1580
- }
1581
- return out;
1582
- }
1583
- if (Array.isArray(value) && ns.isListSchema()) {
1584
- const listMember = ns.getValueSchema();
1585
- const out = [];
1586
- for (const item of value) {
1587
- out.push(this._read(listMember, item));
1588
- }
1589
- return out;
1590
- }
1591
- if (ns.isMapSchema()) {
1592
- const mapMember = ns.getValueSchema();
1593
- const out = {};
1594
- for (const _k in value) {
1595
- if (_k === "__proto__") {
1596
- writeKey(out);
1597
- }
1598
- out[_k] = this._read(mapMember, value[_k]);
1599
- }
1600
- return out;
1601
- }
1602
- }
1603
- if (ns.isBlobSchema() && typeof value === "string") {
1604
- return fromBase64(value);
412
+ async serializeRequest(operationSchema, input, context) {
413
+ const request = await super.serializeRequest(operationSchema, input, context);
414
+ if (this.awsQueryCompatible) {
415
+ request.headers["x-amzn-query-mode"] = "true";
1605
416
  }
1606
- const mediaType = ns.getMergedTraits().mediaType;
1607
- if (ns.isStringSchema() && typeof value === "string" && mediaType) {
1608
- const isJson = mediaType === "application/json" || mediaType.endsWith("+json");
1609
- if (isJson) {
1610
- return LazyJsonString.from(value);
1611
- }
1612
- return value;
417
+ return request;
418
+ }
419
+ async handleError(operationSchema, context, response, dataObject, metadata) {
420
+ if (this.awsQueryCompatible) {
421
+ this.mixin.setQueryCompatError(dataObject, response);
1613
422
  }
1614
- if (ns.isTimestampSchema() && value != null) {
1615
- const format = determineTimestampFormat(ns, this.settings);
1616
- switch (format) {
1617
- case 5:
1618
- return parseRfc3339DateTimeWithOffset(value);
1619
- case 6:
1620
- return parseRfc7231DateTime(value);
1621
- case 7:
1622
- return parseEpochTimestamp(value);
1623
- default:
1624
- console.warn("Missing timestamp format, parsing value with Date constructor:", value);
1625
- return new Date(value);
1626
- }
1627
- }
1628
- if (ns.isBigIntegerSchema() && (typeof value === "number" || typeof value === "string")) {
1629
- return BigInt(value);
1630
- }
1631
- if (ns.isBigDecimalSchema() && value != undefined) {
1632
- if (value instanceof NumericValue) {
1633
- return value;
1634
- }
1635
- const untyped = value;
1636
- if (untyped.type === "bigDecimal" && "string" in untyped) {
1637
- return new NumericValue(untyped.string, untyped.type);
423
+ const errorName = (() => {
424
+ const compatHeader = response.headers["x-amzn-query-error"];
425
+ if (compatHeader && this.awsQueryCompatible) {
426
+ return compatHeader.split(";")[0];
1638
427
  }
1639
- return new NumericValue(String(value), "bigDecimal");
1640
- }
1641
- if (ns.isNumericSchema() && typeof value === "string") {
1642
- switch (value) {
1643
- case "Infinity":
1644
- return Infinity;
1645
- case "-Infinity":
1646
- return -Infinity;
1647
- case "NaN":
1648
- return NaN;
428
+ return loadSmithyRpcV2JsonErrorCode(response, dataObject) ?? "Unknown";
429
+ })();
430
+ this.mixin.compose(this.compositeErrorRegistry, errorName, this.options.defaultNamespace);
431
+ const { errorSchema, errorMetadata } = await this.mixin.getErrorSchemaOrThrowBaseException(errorName, this.options.defaultNamespace, response, dataObject, metadata, this.awsQueryCompatible ? this.mixin.findQueryCompatibleError : undefined);
432
+ const ns = NormalizedSchema.of(errorSchema);
433
+ const message = dataObject.message ?? dataObject.Message ?? "UnknownError";
434
+ const ErrorCtor = this.compositeErrorRegistry.getErrorCtor(errorSchema) ?? Error;
435
+ const exception = new ErrorCtor({});
436
+ const output = {};
437
+ const errorDeserializer = this.getPayloadCodec().createDeserializer();
438
+ for (const [name, member] of ns.structIterator()) {
439
+ if (dataObject[name] != null) {
440
+ output[name] = errorDeserializer.readObject(member, dataObject[name]);
1649
441
  }
1650
- return value;
1651
442
  }
1652
- if (ns.isDocumentSchema()) {
1653
- if (isObject) {
1654
- const out = Array.isArray(value) ? [] : {};
1655
- for (const k in value) {
1656
- if (k === "__proto__") {
1657
- writeKey(out);
1658
- }
1659
- const v = value[k];
1660
- if (v instanceof NumericValue) {
1661
- out[k] = v;
1662
- }
1663
- else {
1664
- out[k] = this._read(ns, v);
1665
- }
1666
- }
1667
- return out;
1668
- }
1669
- else {
1670
- return structuredClone(value);
1671
- }
443
+ if (this.awsQueryCompatible) {
444
+ this.mixin.queryCompatOutput(dataObject, output);
1672
445
  }
1673
- return value;
446
+ throw this.mixin.decorateServiceException(Object.assign(exception, errorMetadata, {
447
+ $fault: ns.getMergedTraits().error,
448
+ message,
449
+ }, output), dataObject);
1674
450
  }
1675
451
  }
1676
452
 
1677
- const NUMERIC_CONTROL_CHAR = String.fromCharCode(925);
1678
- class JsonReplacer {
1679
- values = new Map();
1680
- counter = 0;
1681
- stage = 0;
1682
- createReplacer() {
1683
- if (this.stage === 1) {
1684
- throw new Error("@aws-sdk/core/protocols - JsonReplacer already created.");
1685
- }
1686
- if (this.stage === 2) {
1687
- throw new Error("@aws-sdk/core/protocols - JsonReplacer exhausted.");
1688
- }
1689
- this.stage = 1;
1690
- return (key, value) => {
1691
- if (value instanceof NumericValue) {
1692
- const v = `${NUMERIC_CONTROL_CHAR + "nv" + this.counter++}_` + value.string;
1693
- this.values.set(`"${v}"`, value.string);
1694
- return v;
1695
- }
1696
- if (typeof value === "bigint") {
1697
- const s = value.toString();
1698
- const v = `${NUMERIC_CONTROL_CHAR + "b" + this.counter++}_` + s;
1699
- this.values.set(`"${v}"`, s);
1700
- return v;
1701
- }
1702
- return value;
1703
- };
1704
- }
1705
- replaceInJson(json) {
1706
- if (this.stage === 0) {
1707
- throw new Error("@aws-sdk/core/protocols - JsonReplacer not created yet.");
1708
- }
1709
- if (this.stage === 2) {
1710
- throw new Error("@aws-sdk/core/protocols - JsonReplacer exhausted.");
1711
- }
1712
- this.stage = 2;
1713
- if (this.counter === 0) {
1714
- return json;
1715
- }
1716
- for (const [key, value] of this.values) {
1717
- json = json.replace(key, value);
1718
- }
1719
- return json;
453
+ class SerdeContextConfig {
454
+ serdeContext;
455
+ setSerdeContext(serdeContext) {
456
+ this.serdeContext = serdeContext;
1720
457
  }
1721
458
  }
1722
459
 
1723
- class JsonShapeSerializer extends SerdeContextConfig {
1724
- settings;
1725
- buffer;
1726
- useReplacer = false;
1727
- rootSchema;
1728
- constructor(settings) {
1729
- super();
1730
- this.settings = settings;
1731
- }
1732
- write(schema, value) {
1733
- this.rootSchema = NormalizedSchema.of(schema);
1734
- this.buffer = this._write(this.rootSchema, value);
460
+ class UnionSerde {
461
+ from;
462
+ to;
463
+ keys;
464
+ constructor(from, to) {
465
+ this.from = from;
466
+ this.to = to;
467
+ const keys = Object.keys(this.from);
468
+ const set = new Set(keys);
469
+ set.delete("__type");
470
+ this.keys = set;
1735
471
  }
1736
- flush() {
1737
- const { rootSchema, useReplacer } = this;
1738
- this.rootSchema = undefined;
1739
- this.useReplacer = false;
1740
- if (rootSchema?.isStructSchema() || rootSchema?.isDocumentSchema()) {
1741
- if (!useReplacer) {
1742
- return JSON.stringify(this.buffer);
1743
- }
1744
- const replacer = new JsonReplacer();
1745
- return replacer.replaceInJson(JSON.stringify(this.buffer, replacer.createReplacer(), 0));
1746
- }
1747
- return this.buffer;
472
+ mark(key) {
473
+ this.keys.delete(key);
1748
474
  }
1749
- writeDiscriminatedDocument(schema, value) {
1750
- this.write(schema, value);
1751
- if (typeof this.buffer === "object") {
1752
- this.buffer.__type = NormalizedSchema.of(schema).getName(true);
1753
- }
475
+ hasUnknown() {
476
+ return this.keys.size === 1 && Object.keys(this.to).length === 0;
1754
477
  }
1755
- _write(schema, value, container) {
1756
- const isObject = value !== null && typeof value === "object";
1757
- const ns = NormalizedSchema.of(schema);
1758
- if (isObject) {
1759
- if (ns.isStructSchema()) {
1760
- const record = value;
1761
- const out = {};
1762
- const { jsonName } = this.settings;
1763
- let nameMap = void 0;
1764
- if (jsonName) {
1765
- nameMap = {};
1766
- }
1767
- let outCount = 0;
1768
- for (const [memberName, memberSchema] of ns.structIterator()) {
1769
- const serializableValue = this._write(memberSchema, record[memberName], ns);
1770
- if (serializableValue !== undefined) {
1771
- let targetKey = memberName;
1772
- if (jsonName) {
1773
- targetKey = memberSchema.getMergedTraits().jsonName ?? memberName;
1774
- nameMap[memberName] = targetKey;
1775
- }
1776
- out[targetKey] = serializableValue;
1777
- outCount++;
1778
- }
1779
- }
1780
- if (ns.isUnionSchema() && outCount === 0) {
1781
- const { $unknown } = record;
1782
- if (Array.isArray($unknown)) {
1783
- const [k, v] = $unknown;
1784
- if (k === "__proto__") {
1785
- writeKey(out);
1786
- }
1787
- out[k] = this._write(15, v);
1788
- }
1789
- }
1790
- else if (typeof record.__type === "string") {
1791
- for (const k in record) {
1792
- const v = record[k];
1793
- const targetKey = jsonName ? (nameMap[k] ?? k) : k;
1794
- if (!(targetKey in out)) {
1795
- out[targetKey] = this._write(15, v);
1796
- }
1797
- }
1798
- }
1799
- return out;
1800
- }
1801
- if (Array.isArray(value) && ns.isListSchema()) {
1802
- const listMember = ns.getValueSchema();
1803
- const out = [];
1804
- const sparse = !!ns.getMergedTraits().sparse;
1805
- for (const item of value) {
1806
- if (sparse || item != null) {
1807
- out.push(this._write(listMember, item));
1808
- }
1809
- }
1810
- return out;
1811
- }
1812
- if (ns.isMapSchema()) {
1813
- const mapMember = ns.getValueSchema();
1814
- const out = {};
1815
- const sparse = !!ns.getMergedTraits().sparse;
1816
- for (const _k in value) {
1817
- const _v = value[_k];
1818
- if (sparse || _v != null) {
1819
- if (_k === "__proto__") {
1820
- writeKey(out);
1821
- }
1822
- out[_k] = this._write(mapMember, _v);
1823
- }
1824
- }
1825
- return out;
1826
- }
1827
- if (value instanceof Uint8Array && ns.isBlobSchema()) {
1828
- if (ns === this.rootSchema) {
1829
- return value;
1830
- }
1831
- return (this.serdeContext?.base64Encoder ?? toBase64)(value);
1832
- }
1833
- if (value instanceof Date && (ns.isTimestampSchema() || ns.isDocumentSchema())) {
1834
- const format = determineTimestampFormat(ns, this.settings);
1835
- switch (format) {
1836
- case 5:
1837
- return value.toISOString().replace(".000Z", "Z");
1838
- case 6:
1839
- return dateToUtcString(value);
1840
- case 7:
1841
- return value.getTime() / 1000;
1842
- default:
1843
- console.warn("Missing timestamp format, using epoch seconds", value);
1844
- return value.getTime() / 1000;
1845
- }
1846
- }
1847
- if (value instanceof NumericValue) {
1848
- this.useReplacer = true;
1849
- }
1850
- }
1851
- if (value === null && container?.isStructSchema()) {
1852
- return void 0;
1853
- }
1854
- if (ns.isStringSchema()) {
1855
- if (typeof value === "undefined" && ns.isIdempotencyToken()) {
1856
- return generateIdempotencyToken();
1857
- }
1858
- const mediaType = ns.getMergedTraits().mediaType;
1859
- if (value != null && mediaType) {
1860
- const isJson = mediaType === "application/json" || mediaType.endsWith("+json");
1861
- if (isJson) {
1862
- return LazyJsonString.from(value);
1863
- }
1864
- }
1865
- return value;
1866
- }
1867
- if (typeof value === "number") {
1868
- if (Math.abs(value) === Infinity || isNaN(value)) {
1869
- return String(value);
1870
- }
1871
- return value;
1872
- }
1873
- if (typeof value === "string" && ns.isBlobSchema()) {
1874
- if (ns === this.rootSchema) {
1875
- return value;
1876
- }
1877
- return (this.serdeContext?.base64Encoder ?? toBase64)(value);
1878
- }
1879
- if (typeof value === "bigint") {
1880
- this.useReplacer = true;
1881
- }
1882
- if (ns.isDocumentSchema()) {
1883
- if (isObject) {
1884
- if (value instanceof Uint8Array) {
1885
- return (this.serdeContext?.base64Encoder ?? toBase64)(value);
1886
- }
1887
- const out = Array.isArray(value) ? [] : {};
1888
- for (const k in value) {
1889
- const v = value[k];
1890
- if (k === "__proto__") {
1891
- writeKey(out);
1892
- }
1893
- if (v instanceof NumericValue) {
1894
- this.useReplacer = true;
1895
- out[k] = v;
1896
- }
1897
- else {
1898
- out[k] = this._write(ns, v);
1899
- }
1900
- }
1901
- return out;
1902
- }
1903
- else {
1904
- return structuredClone(value);
1905
- }
478
+ writeUnknown() {
479
+ if (this.hasUnknown()) {
480
+ const k = this.keys.values().next().value;
481
+ const v = this.from[k];
482
+ this.to.$unknown = [k, v];
1906
483
  }
1907
- return value;
1908
484
  }
1909
485
  }
1910
486
 
1911
- class JsonCodec extends SerdeContextConfig {
1912
- settings;
1913
- constructor(settings) {
1914
- super();
1915
- this.settings = settings;
1916
- }
1917
- createSerializer() {
1918
- const serializer = new JsonShapeSerializer(this.settings);
1919
- serializer.setSerdeContext(this.serdeContext);
1920
- return serializer;
1921
- }
1922
- createDeserializer() {
1923
- const deserializer = new JsonShapeDeserializer(this.settings);
1924
- deserializer.setSerdeContext(this.serdeContext);
1925
- return deserializer;
1926
- }
487
+ function writeKey(obj) {
488
+ Object.defineProperty(obj, "__proto__", { value: undefined, writable: true, enumerable: true, configurable: true });
1927
489
  }
1928
490
 
1929
491
  class XmlShapeDeserializer extends SerdeContextConfig {
@@ -2410,6 +972,8 @@ class AwsEc2QueryProtocol extends AwsQueryProtocol {
2410
972
  }
2411
973
  }
2412
974
 
975
+ const collectBodyString = (streamBody, context) => collectBody(streamBody, context).then((body) => (context?.utf8Encoder ?? toUtf8)(body));
976
+
2413
977
  const parseXmlBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {
2414
978
  if (encoded.length) {
2415
979
  let parsedObj;
@@ -2926,12 +1490,7 @@ exports.AwsQueryProtocol = AwsQueryProtocol;
2926
1490
  exports.AwsRestJsonProtocol = AwsRestJsonProtocol;
2927
1491
  exports.AwsRestXmlProtocol = AwsRestXmlProtocol;
2928
1492
  exports.AwsSmithyRpcV2CborProtocol = AwsSmithyRpcV2CborProtocol;
2929
- exports.JsonCodec = JsonCodec;
2930
- exports.JsonCodec2 = JsonCodec2;
2931
- exports.JsonShapeDeserializer = JsonShapeDeserializer;
2932
- exports.JsonShapeDeserializer2 = JsonShapeDeserializer2;
2933
- exports.JsonShapeSerializer = JsonShapeSerializer;
2934
- exports.JsonShapeSerializer2 = JsonShapeSerializer2;
1493
+ exports.AwsSmithyRpcV2JsonProtocol = AwsSmithyRpcV2JsonProtocol;
2935
1494
  exports.QueryShapeSerializer = QueryShapeSerializer;
2936
1495
  exports.XmlCodec = XmlCodec;
2937
1496
  exports.XmlShapeDeserializer = XmlShapeDeserializer;
@@ -2940,10 +1499,6 @@ exports._toBool = _toBool;
2940
1499
  exports._toNum = _toNum;
2941
1500
  exports._toStr = _toStr;
2942
1501
  exports.awsExpectUnion = awsExpectUnion;
2943
- exports.loadJsonRpcErrorCode = loadJsonRpcErrorCode;
2944
- exports.loadRestJsonErrorCode = loadRestJsonErrorCode;
2945
1502
  exports.loadRestXmlErrorCode = loadRestXmlErrorCode;
2946
- exports.parseJsonBody = parseJsonBody;
2947
- exports.parseJsonErrorBody = parseJsonErrorBody;
2948
1503
  exports.parseXmlBody = parseXmlBody;
2949
1504
  exports.parseXmlErrorBody = parseXmlErrorBody;