@cdklabs/cdk-construct-connect-datalake 0.0.26 → 0.0.28

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 (280) hide show
  1. package/.jsii +10 -10
  2. package/.jsii.tabl.json +1 -1
  3. package/lib/index.js +1 -1
  4. package/node_modules/@aws-sdk/client-cloudformation/dist-cjs/index.js +3 -3
  5. package/node_modules/@aws-sdk/client-cloudformation/dist-es/schemas/schemas_0.js +2 -2
  6. package/node_modules/@aws-sdk/client-cloudformation/dist-types/CloudFormation.d.ts +187 -181
  7. package/node_modules/@aws-sdk/client-cloudformation/dist-types/ts3.4/CloudFormation.d.ts +184 -180
  8. package/node_modules/@aws-sdk/client-cloudformation/package.json +8 -8
  9. package/node_modules/@aws-sdk/client-connect/README.md +14 -0
  10. package/node_modules/@aws-sdk/client-connect/dist-cjs/index.js +187 -39
  11. package/node_modules/@aws-sdk/client-connect/dist-es/Connect.js +6 -0
  12. package/node_modules/@aws-sdk/client-connect/dist-es/commands/ListEvaluationFormAIVersionsCommand.js +4 -0
  13. package/node_modules/@aws-sdk/client-connect/dist-es/commands/ListSecurityProfileAIAgentsCommand.js +4 -0
  14. package/node_modules/@aws-sdk/client-connect/dist-es/commands/index.js +2 -0
  15. package/node_modules/@aws-sdk/client-connect/dist-es/models/enums.js +24 -6
  16. package/node_modules/@aws-sdk/client-connect/dist-es/pagination/ListSecurityProfileAIAgentsPaginator.js +4 -0
  17. package/node_modules/@aws-sdk/client-connect/dist-es/pagination/index.js +1 -0
  18. package/node_modules/@aws-sdk/client-connect/dist-es/schemas/schemas_0.js +131 -32
  19. package/node_modules/@aws-sdk/client-connect/dist-types/Connect.d.ts +818 -791
  20. package/node_modules/@aws-sdk/client-connect/dist-types/ConnectClient.d.ts +4 -2
  21. package/node_modules/@aws-sdk/client-connect/dist-types/commands/CreateEvaluationFormCommand.d.ts +9 -0
  22. package/node_modules/@aws-sdk/client-connect/dist-types/commands/CreateRoutingProfileCommand.d.ts +10 -1
  23. package/node_modules/@aws-sdk/client-connect/dist-types/commands/CreateSecurityProfileCommand.d.ts +6 -0
  24. package/node_modules/@aws-sdk/client-connect/dist-types/commands/CreateTaskTemplateCommand.d.ts +1 -1
  25. package/node_modules/@aws-sdk/client-connect/dist-types/commands/DescribeContactEvaluationCommand.d.ts +9 -0
  26. package/node_modules/@aws-sdk/client-connect/dist-types/commands/DescribeEvaluationFormCommand.d.ts +9 -0
  27. package/node_modules/@aws-sdk/client-connect/dist-types/commands/DescribeInstanceAttributeCommand.d.ts +2 -2
  28. package/node_modules/@aws-sdk/client-connect/dist-types/commands/DescribeRoutingProfileCommand.d.ts +10 -1
  29. package/node_modules/@aws-sdk/client-connect/dist-types/commands/GetContactMetricsCommand.d.ts +2 -1
  30. package/node_modules/@aws-sdk/client-connect/dist-types/commands/GetCrossRegionRoutingCommand.d.ts +1 -2
  31. package/node_modules/@aws-sdk/client-connect/dist-types/commands/ListContactReferencesCommand.d.ts +8 -0
  32. package/node_modules/@aws-sdk/client-connect/dist-types/commands/ListEvaluationFormAIVersionsCommand.d.ts +96 -0
  33. package/node_modules/@aws-sdk/client-connect/dist-types/commands/ListInstanceAttributesCommand.d.ts +1 -1
  34. package/node_modules/@aws-sdk/client-connect/dist-types/commands/ListSecurityProfileAIAgentsCommand.d.ts +97 -0
  35. package/node_modules/@aws-sdk/client-connect/dist-types/commands/PutUserStatusCommand.d.ts +1 -1
  36. package/node_modules/@aws-sdk/client-connect/dist-types/commands/ReleasePhoneNumberCommand.d.ts +1 -1
  37. package/node_modules/@aws-sdk/client-connect/dist-types/commands/ReplicateInstanceCommand.d.ts +2 -2
  38. package/node_modules/@aws-sdk/client-connect/dist-types/commands/ResumeContactCommand.d.ts +1 -1
  39. package/node_modules/@aws-sdk/client-connect/dist-types/commands/ResumeContactRecordingCommand.d.ts +1 -1
  40. package/node_modules/@aws-sdk/client-connect/dist-types/commands/SearchAgentStatusesCommand.d.ts +1 -1
  41. package/node_modules/@aws-sdk/client-connect/dist-types/commands/SearchAvailablePhoneNumbersCommand.d.ts +1 -2
  42. package/node_modules/@aws-sdk/client-connect/dist-types/commands/SearchEvaluationFormsCommand.d.ts +1 -0
  43. package/node_modules/@aws-sdk/client-connect/dist-types/commands/SearchRoutingProfilesCommand.d.ts +10 -1
  44. package/node_modules/@aws-sdk/client-connect/dist-types/commands/StartContactEvaluationCommand.d.ts +0 -3
  45. package/node_modules/@aws-sdk/client-connect/dist-types/commands/UpdateEvaluationFormCommand.d.ts +9 -0
  46. package/node_modules/@aws-sdk/client-connect/dist-types/commands/UpdateInstanceAttributeCommand.d.ts +1 -1
  47. package/node_modules/@aws-sdk/client-connect/dist-types/commands/UpdateRoutingProfileConcurrencyCommand.d.ts +10 -1
  48. package/node_modules/@aws-sdk/client-connect/dist-types/commands/UpdateSecurityProfileCommand.d.ts +6 -0
  49. package/node_modules/@aws-sdk/client-connect/dist-types/commands/UpdateTestCaseCommand.d.ts +2 -1
  50. package/node_modules/@aws-sdk/client-connect/dist-types/commands/UpdateTrafficDistributionCommand.d.ts +1 -1
  51. package/node_modules/@aws-sdk/client-connect/dist-types/commands/UpdateUserConfigCommand.d.ts +1 -1
  52. package/node_modules/@aws-sdk/client-connect/dist-types/commands/UpdateUserHierarchyCommand.d.ts +1 -1
  53. package/node_modules/@aws-sdk/client-connect/dist-types/commands/UpdateUserHierarchyGroupNameCommand.d.ts +1 -1
  54. package/node_modules/@aws-sdk/client-connect/dist-types/commands/UpdateUserHierarchyStructureCommand.d.ts +1 -1
  55. package/node_modules/@aws-sdk/client-connect/dist-types/commands/UpdateUserIdentityInfoCommand.d.ts +1 -1
  56. package/node_modules/@aws-sdk/client-connect/dist-types/commands/UpdateUserNotificationStatusCommand.d.ts +1 -2
  57. package/node_modules/@aws-sdk/client-connect/dist-types/commands/index.d.ts +2 -0
  58. package/node_modules/@aws-sdk/client-connect/dist-types/models/enums.d.ts +64 -14
  59. package/node_modules/@aws-sdk/client-connect/dist-types/models/errors.d.ts +2 -1
  60. package/node_modules/@aws-sdk/client-connect/dist-types/models/models_0.d.ts +107 -128
  61. package/node_modules/@aws-sdk/client-connect/dist-types/models/models_1.d.ts +128 -89
  62. package/node_modules/@aws-sdk/client-connect/dist-types/models/models_2.d.ts +310 -211
  63. package/node_modules/@aws-sdk/client-connect/dist-types/models/models_3.d.ts +225 -236
  64. package/node_modules/@aws-sdk/client-connect/dist-types/models/models_4.d.ts +262 -3
  65. package/node_modules/@aws-sdk/client-connect/dist-types/pagination/ListSecurityProfileAIAgentsPaginator.d.ts +7 -0
  66. package/node_modules/@aws-sdk/client-connect/dist-types/pagination/index.d.ts +1 -0
  67. package/node_modules/@aws-sdk/client-connect/dist-types/schemas/schemas_0.d.ts +13 -0
  68. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/Connect.d.ts +835 -790
  69. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/ConnectClient.d.ts +12 -0
  70. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/CreateTaskTemplateCommand.d.ts +1 -1
  71. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/GetContactMetricsCommand.d.ts +2 -1
  72. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/GetCrossRegionRoutingCommand.d.ts +1 -2
  73. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/ListEvaluationFormAIVersionsCommand.d.ts +42 -0
  74. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/ListSecurityProfileAIAgentsCommand.d.ts +42 -0
  75. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/PutUserStatusCommand.d.ts +1 -1
  76. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/ReleasePhoneNumberCommand.d.ts +1 -1
  77. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/ReplicateInstanceCommand.d.ts +1 -1
  78. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/ResumeContactCommand.d.ts +1 -1
  79. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/ResumeContactRecordingCommand.d.ts +1 -1
  80. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/SearchAgentStatusesCommand.d.ts +1 -1
  81. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/SearchAvailablePhoneNumbersCommand.d.ts +4 -2
  82. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/UpdateTestCaseCommand.d.ts +2 -1
  83. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/UpdateTrafficDistributionCommand.d.ts +1 -1
  84. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/UpdateUserConfigCommand.d.ts +1 -1
  85. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/UpdateUserHierarchyCommand.d.ts +1 -1
  86. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/UpdateUserHierarchyGroupNameCommand.d.ts +1 -1
  87. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/UpdateUserHierarchyStructureCommand.d.ts +1 -1
  88. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/UpdateUserIdentityInfoCommand.d.ts +1 -1
  89. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/UpdateUserNotificationStatusCommand.d.ts +4 -2
  90. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/commands/index.d.ts +2 -0
  91. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/models/enums.d.ts +32 -7
  92. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/models/errors.d.ts +1 -1
  93. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/models/models_0.d.ts +22 -31
  94. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/models/models_1.d.ts +33 -29
  95. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/models/models_2.d.ts +101 -50
  96. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/models/models_3.d.ts +52 -59
  97. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/models/models_4.d.ts +69 -0
  98. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/pagination/ListSecurityProfileAIAgentsPaginator.d.ts +11 -0
  99. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/pagination/index.d.ts +1 -0
  100. package/node_modules/@aws-sdk/client-connect/dist-types/ts3.4/schemas/schemas_0.d.ts +13 -0
  101. package/node_modules/@aws-sdk/client-connect/package.json +8 -8
  102. package/node_modules/@aws-sdk/client-glue/README.md +7 -0
  103. package/node_modules/@aws-sdk/client-glue/dist-cjs/index.js +104 -21
  104. package/node_modules/@aws-sdk/client-glue/dist-es/Glue.js +2 -0
  105. package/node_modules/@aws-sdk/client-glue/dist-es/commands/ListIntegrationTablePropertiesCommand.js +4 -0
  106. package/node_modules/@aws-sdk/client-glue/dist-es/commands/index.js +1 -0
  107. package/node_modules/@aws-sdk/client-glue/dist-es/models/enums.js +16 -0
  108. package/node_modules/@aws-sdk/client-glue/dist-es/schemas/schemas_0.js +75 -20
  109. package/node_modules/@aws-sdk/client-glue/dist-types/Glue.d.ts +613 -599
  110. package/node_modules/@aws-sdk/client-glue/dist-types/GlueClient.d.ts +3 -2
  111. package/node_modules/@aws-sdk/client-glue/dist-types/commands/CreateIntegrationTablePropertiesCommand.d.ts +1 -0
  112. package/node_modules/@aws-sdk/client-glue/dist-types/commands/CreateTableCommand.d.ts +18 -0
  113. package/node_modules/@aws-sdk/client-glue/dist-types/commands/GetDataQualityRuleRecommendationRunCommand.d.ts +1 -0
  114. package/node_modules/@aws-sdk/client-glue/dist-types/commands/GetIntegrationTablePropertiesCommand.d.ts +1 -0
  115. package/node_modules/@aws-sdk/client-glue/dist-types/commands/GetTableCommand.d.ts +24 -0
  116. package/node_modules/@aws-sdk/client-glue/dist-types/commands/GetTableVersionCommand.d.ts +24 -0
  117. package/node_modules/@aws-sdk/client-glue/dist-types/commands/GetTableVersionsCommand.d.ts +24 -0
  118. package/node_modules/@aws-sdk/client-glue/dist-types/commands/GetTablesCommand.d.ts +25 -0
  119. package/node_modules/@aws-sdk/client-glue/dist-types/commands/GetUnfilteredTableMetadataCommand.d.ts +24 -0
  120. package/node_modules/@aws-sdk/client-glue/dist-types/commands/ListDataQualityRuleRecommendationRunsCommand.d.ts +1 -0
  121. package/node_modules/@aws-sdk/client-glue/dist-types/commands/ListIntegrationTablePropertiesCommand.d.ts +129 -0
  122. package/node_modules/@aws-sdk/client-glue/dist-types/commands/RemoveSchemaVersionMetadataCommand.d.ts +2 -1
  123. package/node_modules/@aws-sdk/client-glue/dist-types/commands/ResetJobBookmarkCommand.d.ts +1 -1
  124. package/node_modules/@aws-sdk/client-glue/dist-types/commands/ResumeWorkflowRunCommand.d.ts +1 -1
  125. package/node_modules/@aws-sdk/client-glue/dist-types/commands/SearchTablesCommand.d.ts +24 -0
  126. package/node_modules/@aws-sdk/client-glue/dist-types/commands/StartDataQualityRuleRecommendationRunCommand.d.ts +1 -0
  127. package/node_modules/@aws-sdk/client-glue/dist-types/commands/UpdateIntegrationTablePropertiesCommand.d.ts +1 -0
  128. package/node_modules/@aws-sdk/client-glue/dist-types/commands/UpdateTableCommand.d.ts +18 -0
  129. package/node_modules/@aws-sdk/client-glue/dist-types/commands/index.d.ts +1 -0
  130. package/node_modules/@aws-sdk/client-glue/dist-types/models/enums.d.ts +40 -0
  131. package/node_modules/@aws-sdk/client-glue/dist-types/models/models_1.d.ts +86 -51
  132. package/node_modules/@aws-sdk/client-glue/dist-types/models/models_2.d.ts +168 -134
  133. package/node_modules/@aws-sdk/client-glue/dist-types/models/models_3.d.ts +116 -4
  134. package/node_modules/@aws-sdk/client-glue/dist-types/schemas/schemas_0.d.ts +6 -0
  135. package/node_modules/@aws-sdk/client-glue/dist-types/ts3.4/Glue.d.ts +620 -598
  136. package/node_modules/@aws-sdk/client-glue/dist-types/ts3.4/GlueClient.d.ts +6 -0
  137. package/node_modules/@aws-sdk/client-glue/dist-types/ts3.4/commands/ListIntegrationTablePropertiesCommand.d.ts +42 -0
  138. package/node_modules/@aws-sdk/client-glue/dist-types/ts3.4/commands/RemoveSchemaVersionMetadataCommand.d.ts +2 -4
  139. package/node_modules/@aws-sdk/client-glue/dist-types/ts3.4/commands/ResetJobBookmarkCommand.d.ts +1 -1
  140. package/node_modules/@aws-sdk/client-glue/dist-types/ts3.4/commands/ResumeWorkflowRunCommand.d.ts +1 -1
  141. package/node_modules/@aws-sdk/client-glue/dist-types/ts3.4/commands/index.d.ts +1 -0
  142. package/node_modules/@aws-sdk/client-glue/dist-types/ts3.4/models/enums.d.ts +20 -0
  143. package/node_modules/@aws-sdk/client-glue/dist-types/ts3.4/models/models_1.d.ts +18 -10
  144. package/node_modules/@aws-sdk/client-glue/dist-types/ts3.4/models/models_2.d.ts +37 -34
  145. package/node_modules/@aws-sdk/client-glue/dist-types/ts3.4/models/models_3.d.ts +30 -1
  146. package/node_modules/@aws-sdk/client-glue/dist-types/ts3.4/schemas/schemas_0.d.ts +6 -0
  147. package/node_modules/@aws-sdk/client-glue/package.json +8 -8
  148. package/node_modules/@aws-sdk/client-lakeformation/dist-cjs/index.js +3 -3
  149. package/node_modules/@aws-sdk/client-lakeformation/dist-es/schemas/schemas_0.js +2 -2
  150. package/node_modules/@aws-sdk/client-lakeformation/dist-types/LakeFormation.d.ts +129 -123
  151. package/node_modules/@aws-sdk/client-lakeformation/dist-types/ts3.4/LakeFormation.d.ts +126 -122
  152. package/node_modules/@aws-sdk/client-lakeformation/package.json +8 -8
  153. package/node_modules/@aws-sdk/client-ram/dist-cjs/index.js +3 -3
  154. package/node_modules/@aws-sdk/client-ram/dist-es/schemas/schemas_0.js +2 -2
  155. package/node_modules/@aws-sdk/client-ram/dist-types/RAM.d.ts +77 -71
  156. package/node_modules/@aws-sdk/client-ram/dist-types/ts3.4/RAM.d.ts +74 -70
  157. package/node_modules/@aws-sdk/client-ram/package.json +8 -8
  158. package/node_modules/@aws-sdk/client-sts/README.md +22 -3
  159. package/node_modules/@aws-sdk/client-sts/dist-cjs/index.js +30 -27
  160. package/node_modules/@aws-sdk/client-sts/dist-es/schemas/schemas_0.js +29 -26
  161. package/node_modules/@aws-sdk/client-sts/dist-types/STS.d.ts +51 -26
  162. package/node_modules/@aws-sdk/client-sts/dist-types/STSClient.d.ts +22 -3
  163. package/node_modules/@aws-sdk/client-sts/dist-types/commands/AssumeRoleCommand.d.ts +3 -0
  164. package/node_modules/@aws-sdk/client-sts/dist-types/commands/AssumeRoleWithSAMLCommand.d.ts +3 -0
  165. package/node_modules/@aws-sdk/client-sts/dist-types/commands/AssumeRoleWithWebIdentityCommand.d.ts +3 -0
  166. package/node_modules/@aws-sdk/client-sts/dist-types/commands/AssumeRootCommand.d.ts +3 -0
  167. package/node_modules/@aws-sdk/client-sts/dist-types/commands/GetFederationTokenCommand.d.ts +3 -0
  168. package/node_modules/@aws-sdk/client-sts/dist-types/commands/GetSessionTokenCommand.d.ts +3 -0
  169. package/node_modules/@aws-sdk/client-sts/dist-types/commands/GetWebIdentityTokenCommand.d.ts +3 -0
  170. package/node_modules/@aws-sdk/client-sts/dist-types/index.d.ts +22 -3
  171. package/node_modules/@aws-sdk/client-sts/dist-types/models/models_0.d.ts +118 -0
  172. package/node_modules/@aws-sdk/client-sts/dist-types/ts3.4/STS.d.ts +29 -23
  173. package/node_modules/@aws-sdk/client-sts/dist-types/ts3.4/models/models_0.d.ts +18 -0
  174. package/node_modules/@aws-sdk/client-sts/package.json +9 -9
  175. package/node_modules/@aws-sdk/core/dist-cjs/submodules/util/index.js +5 -0
  176. package/node_modules/@aws-sdk/core/dist-es/submodules/util/hasOwn.js +3 -0
  177. package/node_modules/@aws-sdk/core/dist-es/submodules/util/index.js +1 -0
  178. package/node_modules/@aws-sdk/core/dist-types/submodules/util/hasOwn.d.ts +4 -0
  179. package/node_modules/@aws-sdk/core/dist-types/submodules/util/index.d.ts +1 -0
  180. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/hasOwn.d.ts +1 -0
  181. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/index.d.ts +1 -0
  182. package/node_modules/@aws-sdk/core/package.json +6 -6
  183. package/node_modules/@aws-sdk/credential-provider-env/package.json +5 -5
  184. package/node_modules/@aws-sdk/credential-provider-http/package.json +7 -7
  185. package/node_modules/@aws-sdk/credential-provider-ini/package.json +13 -13
  186. package/node_modules/@aws-sdk/credential-provider-login/package.json +6 -6
  187. package/node_modules/@aws-sdk/credential-provider-node/package.json +11 -11
  188. package/node_modules/@aws-sdk/credential-provider-process/package.json +5 -5
  189. package/node_modules/@aws-sdk/credential-provider-sso/package.json +7 -7
  190. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +6 -6
  191. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/index.js +3 -3
  192. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/index.js +3 -3
  193. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/index.js +3 -3
  194. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/index.js +3 -3
  195. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/index.js +14 -11
  196. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/schemas/schemas_0.js +2 -2
  197. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/schemas/schemas_0.js +2 -2
  198. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/schemas/schemas_0.js +2 -2
  199. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/schemas/schemas_0.js +2 -2
  200. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/schemas/schemas_0.js +13 -10
  201. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/CognitoIdentity.d.ts +11 -5
  202. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/Signin.d.ts +11 -5
  203. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/SSO.d.ts +9 -3
  204. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/SSOOIDC.d.ts +9 -3
  205. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/STS.d.ts +33 -8
  206. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/STSClient.d.ts +22 -3
  207. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/commands/AssumeRoleCommand.d.ts +3 -0
  208. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/commands/AssumeRoleWithWebIdentityCommand.d.ts +3 -0
  209. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/index.d.ts +22 -3
  210. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/models/models_0.d.ts +40 -0
  211. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/CognitoIdentity.d.ts +14 -5
  212. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/Signin.d.ts +11 -5
  213. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/SSO.d.ts +9 -3
  214. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/SSOOIDC.d.ts +9 -3
  215. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/STS.d.ts +11 -5
  216. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/models/models_0.d.ts +6 -0
  217. package/node_modules/@aws-sdk/nested-clients/package.json +8 -8
  218. package/node_modules/@aws-sdk/signature-v4-multi-region/package.json +4 -4
  219. package/node_modules/@aws-sdk/token-providers/package.json +6 -6
  220. package/node_modules/@aws-sdk/types/dist-types/feature-ids.d.ts +1 -0
  221. package/node_modules/@aws-sdk/types/dist-types/ts3.4/feature-ids.d.ts +1 -0
  222. package/node_modules/@aws-sdk/types/package.json +2 -2
  223. package/node_modules/@aws-sdk/xml-builder/package.json +2 -2
  224. package/node_modules/@smithy/core/dist-cjs/submodules/cbor/index.js +22 -37
  225. package/node_modules/@smithy/core/dist-cjs/submodules/client/index.js +26 -4
  226. package/node_modules/@smithy/core/dist-cjs/submodules/errors/index.js +20 -0
  227. package/node_modules/@smithy/core/dist-cjs/submodules/protocols/index.js +49 -8
  228. package/node_modules/@smithy/core/dist-cjs/submodules/retry/index.browser.js +11 -10
  229. package/node_modules/@smithy/core/dist-cjs/submodules/retry/index.js +11 -10
  230. package/node_modules/@smithy/core/dist-cjs/submodules/schema/index.js +12 -7
  231. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.browser.js +2 -0
  232. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.js +25 -8
  233. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.native.js +2 -0
  234. package/node_modules/@smithy/core/dist-es/submodules/cbor/SmithyRpcV2CborProtocol.js +22 -22
  235. package/node_modules/@smithy/core/dist-es/submodules/cbor/parseCborBody.js +0 -15
  236. package/node_modules/@smithy/core/dist-es/submodules/client/index.js +1 -1
  237. package/node_modules/@smithy/core/dist-es/submodules/client/smithy-client/command.js +8 -1
  238. package/node_modules/@smithy/core/dist-es/submodules/client/smithy-client/exceptions.js +18 -3
  239. package/node_modules/@smithy/core/dist-es/submodules/errors/errors.js +18 -0
  240. package/node_modules/@smithy/core/dist-es/submodules/errors/index.js +1 -0
  241. package/node_modules/@smithy/core/dist-es/submodules/protocols/HttpProtocol.js +49 -8
  242. package/node_modules/@smithy/core/dist-es/submodules/retry/service-error-classification/service-error-classification.js +11 -10
  243. package/node_modules/@smithy/core/dist-es/submodules/schema/TypeRegistry.js +12 -7
  244. package/node_modules/@smithy/core/dist-es/submodules/serde/util-stream/getAwsChunkedEncodingStream.browser.js +2 -0
  245. package/node_modules/@smithy/core/dist-es/submodules/serde/util-stream/getAwsChunkedEncodingStream.js +23 -8
  246. package/node_modules/@smithy/core/dist-types/submodules/cbor/parseCborBody.d.ts +3 -0
  247. package/node_modules/@smithy/core/dist-types/submodules/client/index.d.ts +1 -1
  248. package/node_modules/@smithy/core/dist-types/submodules/client/smithy-client/client.d.ts +11 -3
  249. package/node_modules/@smithy/core/dist-types/submodules/errors/errors.d.ts +44 -0
  250. package/node_modules/@smithy/core/dist-types/submodules/errors/index.d.ts +1 -0
  251. package/node_modules/@smithy/core/dist-types/submodules/protocols/HttpProtocol.d.ts +17 -7
  252. package/node_modules/@smithy/core/dist-types/submodules/retry/service-error-classification/service-error-classification.d.ts +4 -0
  253. package/node_modules/@smithy/core/dist-types/submodules/schema/TypeRegistry.d.ts +2 -2
  254. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/parseCborBody.d.ts +3 -0
  255. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/client/index.d.ts +1 -1
  256. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/client/smithy-client/client.d.ts +11 -3
  257. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/errors/errors.d.ts +44 -0
  258. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/errors/index.d.ts +1 -0
  259. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/HttpProtocol.d.ts +21 -7
  260. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/retry/service-error-classification/service-error-classification.d.ts +4 -0
  261. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/schema/TypeRegistry.d.ts +2 -2
  262. package/node_modules/@smithy/core/errors.d.ts +5 -0
  263. package/node_modules/@smithy/core/errors.js +5 -0
  264. package/node_modules/@smithy/core/package.json +11 -2
  265. package/node_modules/@smithy/signature-v4/dist-cjs/index.js +4 -1
  266. package/node_modules/@smithy/signature-v4/dist-es/getCanonicalHeaders.js +4 -1
  267. package/node_modules/@smithy/signature-v4/package.json +3 -3
  268. package/node_modules/@smithy/types/dist-types/metrics.d.ts +8 -7
  269. package/node_modules/@smithy/types/dist-types/middleware.d.ts +5 -0
  270. package/node_modules/@smithy/types/dist-types/ts3.4/metrics.d.ts +8 -7
  271. package/node_modules/@smithy/types/dist-types/ts3.4/middleware.d.ts +5 -0
  272. package/node_modules/@smithy/types/package.json +1 -1
  273. package/node_modules/which-typed-array/CHANGELOG.md +14 -0
  274. package/node_modules/which-typed-array/README.md +0 -2
  275. package/node_modules/which-typed-array/index.d.ts +288 -11
  276. package/node_modules/which-typed-array/index.js +6 -7
  277. package/node_modules/which-typed-array/package.json +12 -11
  278. package/package.json +11 -11
  279. package/node_modules/which-typed-array/eslint.config.mjs +0 -12
  280. package/node_modules/which-typed-array/test/index.js +0 -105
@@ -902,26 +902,11 @@ const loadSmithyRpcV2CborErrorCode = (output, data) => {
902
902
  if (cleanValue.indexOf(":") >= 0) {
903
903
  cleanValue = cleanValue.split(":")[0];
904
904
  }
905
- if (cleanValue.indexOf("#") >= 0) {
906
- cleanValue = cleanValue.split("#")[1];
907
- }
908
905
  return cleanValue;
909
906
  };
910
907
  if (data["__type"] !== undefined) {
911
908
  return sanitizeErrorCode(data["__type"]);
912
909
  }
913
- let codeKey;
914
- for (const key in data) {
915
- if (!hasOwn(data, key))
916
- continue;
917
- if (key.toLowerCase() === "code") {
918
- codeKey = key;
919
- break;
920
- }
921
- }
922
- if (codeKey && data[codeKey] !== undefined) {
923
- return sanitizeErrorCode(data[codeKey]);
924
- }
925
910
  };
926
911
  const checkCborResponse = (response) => {
927
912
  if (String(response.headers["smithy-protocol"]).toLowerCase() !== "rpc-v2-cbor") {
@@ -2278,37 +2263,37 @@ class SmithyRpcV2CborProtocol extends RpcProtocol {
2278
2263
  return super.deserializeResponse(operationSchema, context, response);
2279
2264
  }
2280
2265
  async handleError(operationSchema, context, response, dataObject, metadata) {
2281
- const errorName = loadSmithyRpcV2CborErrorCode(response, dataObject) ?? "Unknown";
2266
+ const errorIdentifier = loadSmithyRpcV2CborErrorCode(response, dataObject) ?? "Unknown";
2267
+ const preferredNamespaces = ["*"];
2268
+ const { defaultNamespace } = this.options;
2269
+ preferredNamespaces.unshift(defaultNamespace);
2270
+ const [namespace, errorShapeName] = (() => {
2271
+ if (errorIdentifier.includes("#")) {
2272
+ return errorIdentifier.split("#");
2273
+ }
2274
+ return [undefined, errorIdentifier];
2275
+ })();
2276
+ if (namespace) {
2277
+ preferredNamespaces.unshift(namespace);
2278
+ }
2282
2279
  const errorMetadata = {
2283
2280
  $metadata: metadata,
2284
- $fault: response.statusCode <= 500 ? "client" : "server",
2281
+ $fault: response.statusCode < 500 ? "client" : "server",
2285
2282
  };
2286
- let namespace = this.options.defaultNamespace;
2287
- if (errorName.includes("#")) {
2288
- [namespace] = errorName.split("#");
2289
- }
2290
- const registry = this.compositeErrorRegistry;
2291
- const nsRegistry = TypeRegistry.for(namespace);
2292
- registry.copyFrom(nsRegistry);
2293
- let errorSchema;
2294
- try {
2295
- errorSchema = registry.getSchema(errorName);
2283
+ const preferredRegistries = [this.compositeErrorRegistry];
2284
+ if (namespace) {
2285
+ preferredRegistries.push(TypeRegistry.for(namespace));
2296
2286
  }
2297
- catch (ignored) {
2287
+ preferredRegistries.push(TypeRegistry.for(defaultNamespace));
2288
+ const [errorSchema, ErrorCtor, errorMode] = this.resolveError(errorShapeName, preferredNamespaces, preferredRegistries);
2289
+ if (errorMode === "native" || errorMode === "synthetic") {
2298
2290
  if (dataObject.Message) {
2299
2291
  dataObject.message = dataObject.Message;
2300
2292
  }
2301
- const syntheticRegistry = TypeRegistry.for("smithy.ts.sdk.synthetic." + namespace);
2302
- registry.copyFrom(syntheticRegistry);
2303
- const baseExceptionSchema = registry.getBaseException();
2304
- if (baseExceptionSchema) {
2305
- const ErrorCtor = registry.getErrorCtor(baseExceptionSchema);
2306
- throw Object.assign(new ErrorCtor({ name: errorName }), errorMetadata, dataObject);
2307
- }
2308
- throw Object.assign(new Error(errorName), errorMetadata, dataObject);
2293
+ const error = errorMode === "synthetic" ? new ErrorCtor({ name: errorShapeName }) : new Error(errorShapeName);
2294
+ throw Object.assign(error, errorMetadata, dataObject);
2309
2295
  }
2310
2296
  const ns = NormalizedSchema.of(errorSchema);
2311
- const ErrorCtor = registry.getErrorCtor(errorSchema);
2312
2297
  const message = dataObject.message ?? dataObject.Message ?? "Unknown";
2313
2298
  const exception = new ErrorCtor({});
2314
2299
  const output = {};
@@ -590,20 +590,27 @@ class Command {
590
590
  }
591
591
  const stack = clientStack.concat(this.middlewareStack);
592
592
  const { logger } = configuration;
593
+ const additionalSmithyContext = additionalContext[SMITHY_CONTEXT_KEY];
593
594
  const handlerExecutionContext = {
594
595
  logger,
595
596
  clientName,
596
597
  commandName,
597
598
  inputFilterSensitiveLog,
598
599
  outputFilterSensitiveLog,
600
+ ...additionalContext,
599
601
  [SMITHY_CONTEXT_KEY]: {
602
+ ...additionalSmithyContext,
600
603
  commandInstance: this,
601
604
  ...smithyContext,
605
+ ...(options?.metricsRecorder === undefined ? {} : { metricsRecorder: options.metricsRecorder }),
602
606
  },
603
- ...additionalContext,
604
607
  };
605
608
  const { requestHandler } = configuration;
606
609
  let requestOptions = options ?? {};
610
+ if (requestOptions.metricsRecorder) {
611
+ requestOptions = { ...requestOptions };
612
+ delete requestOptions.metricsRecorder;
613
+ }
607
614
  if (smithyContext.eventStream) {
608
615
  requestOptions = {
609
616
  isEventStream: true,
@@ -786,10 +793,25 @@ class ServiceException extends Error {
786
793
  return ServiceException.isInstance(instance);
787
794
  }
788
795
  if (ServiceException.isInstance(instance)) {
789
- if (candidate.name && this.name) {
790
- return this.prototype.isPrototypeOf(instance) || candidate.name === this.name;
796
+ if (this.prototype.isPrototypeOf(instance)) {
797
+ return true;
798
+ }
799
+ const targetName = this.name;
800
+ if (!targetName || !candidate.name) {
801
+ return false;
791
802
  }
792
- return this.prototype.isPrototypeOf(instance);
803
+ if (candidate.name === targetName) {
804
+ return true;
805
+ }
806
+ let proto = Object.getPrototypeOf(candidate);
807
+ while (proto && proto !== Object.prototype) {
808
+ const ctorName = proto.constructor?.name;
809
+ if (ctorName && ctorName !== "Error" && ctorName === targetName) {
810
+ return true;
811
+ }
812
+ proto = Object.getPrototypeOf(proto);
813
+ }
814
+ return false;
793
815
  }
794
816
  return false;
795
817
  }
@@ -0,0 +1,20 @@
1
+ class SmithyError extends Error {
2
+ name = "SmithyError";
3
+ $source = errors.$source;
4
+ }
5
+ class SmithyTypeError extends TypeError {
6
+ name = "SmithyTypeError";
7
+ $source = errors.$source;
8
+ }
9
+ class SmithyRangeError extends RangeError {
10
+ name = "SmithyRangeError";
11
+ $source = errors.$source;
12
+ }
13
+ const errors = {
14
+ $source: "smithy",
15
+ Error: SmithyError,
16
+ TypeError: SmithyTypeError,
17
+ RangeError: SmithyRangeError,
18
+ };
19
+
20
+ exports.errors = errors;
@@ -39,7 +39,7 @@ class HttpProtocol extends SerdeContext {
39
39
  constructor(options) {
40
40
  super();
41
41
  this.options = options;
42
- this.compositeErrorRegistry = TypeRegistry.for(options.defaultNamespace);
42
+ this.compositeErrorRegistry = new TypeRegistry(options.defaultNamespace);
43
43
  for (const etr of options.errorTypeRegistries ?? []) {
44
44
  this.compositeErrorRegistry.copyFrom(etr);
45
45
  }
@@ -134,6 +134,47 @@ class HttpProtocol extends SerdeContext {
134
134
  cfId: output.headers["x-amz-cf-id"],
135
135
  };
136
136
  }
137
+ resolveError(name, namespaces, registries) {
138
+ const defaultErrorSchema = [-3, "", "Error", 0, [], [], 0];
139
+ let schema;
140
+ for (const registry of registries) {
141
+ for (const ns of namespaces) {
142
+ try {
143
+ if (ns === "*") {
144
+ schema = registry.getSchema(name);
145
+ }
146
+ else {
147
+ schema = registry.getSchema(ns + "#" + name);
148
+ }
149
+ const errorCtor = registry.getErrorCtor(schema);
150
+ if (errorCtor) {
151
+ return [schema, errorCtor, "modeled"];
152
+ }
153
+ else {
154
+ const syntheticErrorSchema = registry.getBaseException();
155
+ if (syntheticErrorSchema) {
156
+ const syntheticErrorCtor = registry.getErrorCtor(syntheticErrorSchema);
157
+ if (syntheticErrorCtor) {
158
+ return [schema, syntheticErrorCtor, "synthetic"];
159
+ }
160
+ }
161
+ }
162
+ }
163
+ catch (ignored) {
164
+ }
165
+ }
166
+ }
167
+ for (const registry of registries) {
168
+ const syntheticErrorSchema = registry.getBaseException();
169
+ if (syntheticErrorSchema) {
170
+ const syntheticErrorCtor = registry.getErrorCtor(syntheticErrorSchema);
171
+ if (syntheticErrorCtor) {
172
+ return [syntheticErrorSchema, syntheticErrorCtor, "synthetic"];
173
+ }
174
+ }
175
+ }
176
+ return [defaultErrorSchema, Error, "native"];
177
+ }
137
178
  async serializeEventStream({ eventStream, requestSchema, initialRequest, }) {
138
179
  const eventStreamSerde = await this.loadEventStreamCapability();
139
180
  return eventStreamSerde.serializeEventStream({
@@ -162,13 +203,6 @@ class HttpProtocol extends SerdeContext {
162
203
  compositeErrorRegistry: this.compositeErrorRegistry,
163
204
  });
164
205
  }
165
- resolveEventStreamMarshaller(importedProvider) {
166
- const context = this.serdeContext;
167
- if (context.eventStreamMarshaller) {
168
- return context.eventStreamMarshaller;
169
- }
170
- return importedProvider(this.serdeContext);
171
- }
172
206
  getDefaultContentType() {
173
207
  throw new Error(`@smithy/core/protocols - ${this.constructor.name} getDefaultContentType() implementation missing.`);
174
208
  }
@@ -182,6 +216,13 @@ class HttpProtocol extends SerdeContext {
182
216
  }
183
217
  return context.eventStreamMarshaller;
184
218
  }
219
+ resolveEventStreamMarshaller(importedProvider) {
220
+ const context = this.serdeContext;
221
+ if (context.eventStreamMarshaller) {
222
+ return context.eventStreamMarshaller;
223
+ }
224
+ return importedProvider(this.serdeContext);
225
+ }
185
226
  }
186
227
 
187
228
  class HttpBindingProtocol extends HttpProtocol {
@@ -55,16 +55,17 @@ const isBrowserNetworkError = (error) => {
55
55
  const isThrottlingError = (error) => error.$metadata?.httpStatusCode === 429 ||
56
56
  THROTTLING_ERROR_CODES.includes(error.name) ||
57
57
  error.$retryable?.throttling == true;
58
- const isTransientError = (error, depth = 0) => isRetryableByTrait(error) ||
59
- isClockSkewCorrectedError(error) ||
60
- (error.name === "InvalidSignatureException" && error.message?.includes("Signature expired")) ||
61
- TRANSIENT_ERROR_CODES.includes(error.name) ||
62
- NODEJS_TIMEOUT_ERROR_CODES.includes(error?.code || "") ||
63
- NODEJS_NETWORK_ERROR_CODES.includes(error?.code || "") ||
64
- TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0) ||
65
- isBrowserNetworkError(error) ||
66
- isNodeJsHttp2TransientError(error) ||
67
- (error.cause !== undefined && depth <= 10 && isTransientError(error.cause, depth + 1));
58
+ const isTransientError = (error, depth = 0) => error?.name !== "AbortError" &&
59
+ (isRetryableByTrait(error) ||
60
+ isClockSkewCorrectedError(error) ||
61
+ (error.name === "InvalidSignatureException" && error.message?.includes("Signature expired")) ||
62
+ TRANSIENT_ERROR_CODES.includes(error.name) ||
63
+ NODEJS_TIMEOUT_ERROR_CODES.includes(error?.code || "") ||
64
+ NODEJS_NETWORK_ERROR_CODES.includes(error?.code || "") ||
65
+ TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0) ||
66
+ isBrowserNetworkError(error) ||
67
+ isNodeJsHttp2TransientError(error) ||
68
+ (error.cause !== undefined && depth <= 10 && isTransientError(error.cause, depth + 1)));
68
69
  const isServerError = (error) => {
69
70
  if (error.$metadata?.httpStatusCode !== undefined) {
70
71
  const statusCode = error.$metadata.httpStatusCode;
@@ -57,16 +57,17 @@ const isBrowserNetworkError = (error) => {
57
57
  const isThrottlingError = (error) => error.$metadata?.httpStatusCode === 429 ||
58
58
  THROTTLING_ERROR_CODES.includes(error.name) ||
59
59
  error.$retryable?.throttling == true;
60
- const isTransientError = (error, depth = 0) => isRetryableByTrait(error) ||
61
- isClockSkewCorrectedError(error) ||
62
- (error.name === "InvalidSignatureException" && error.message?.includes("Signature expired")) ||
63
- TRANSIENT_ERROR_CODES.includes(error.name) ||
64
- NODEJS_TIMEOUT_ERROR_CODES.includes(error?.code || "") ||
65
- NODEJS_NETWORK_ERROR_CODES.includes(error?.code || "") ||
66
- TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0) ||
67
- isBrowserNetworkError(error) ||
68
- isNodeJsHttp2TransientError(error) ||
69
- (error.cause !== undefined && depth <= 10 && isTransientError(error.cause, depth + 1));
60
+ const isTransientError = (error, depth = 0) => error?.name !== "AbortError" &&
61
+ (isRetryableByTrait(error) ||
62
+ isClockSkewCorrectedError(error) ||
63
+ (error.name === "InvalidSignatureException" && error.message?.includes("Signature expired")) ||
64
+ TRANSIENT_ERROR_CODES.includes(error.name) ||
65
+ NODEJS_TIMEOUT_ERROR_CODES.includes(error?.code || "") ||
66
+ NODEJS_NETWORK_ERROR_CODES.includes(error?.code || "") ||
67
+ TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0) ||
68
+ isBrowserNetworkError(error) ||
69
+ isNodeJsHttp2TransientError(error) ||
70
+ (error.cause !== undefined && depth <= 10 && isTransientError(error.cause, depth + 1)));
70
71
  const isServerError = (error) => {
71
72
  if (error.$metadata?.httpStatusCode !== undefined) {
72
73
  const statusCode = error.$metadata.httpStatusCode;
@@ -579,12 +579,12 @@ class TypeRegistry {
579
579
  this.namespace = namespace;
580
580
  this.schemas = schemas;
581
581
  this.exceptions = exceptions;
582
- }
583
- static for(namespace) {
584
582
  if (!TypeRegistry.registries.has(namespace)) {
585
- TypeRegistry.registries.set(namespace, new TypeRegistry(namespace));
583
+ TypeRegistry.registries.set(namespace, this);
586
584
  }
587
- return TypeRegistry.registries.get(namespace);
585
+ }
586
+ static for(namespace) {
587
+ return TypeRegistry.registries.get(namespace) ?? new TypeRegistry(namespace);
588
588
  }
589
589
  copyFrom(other) {
590
590
  const { schemas, exceptions } = this;
@@ -602,7 +602,9 @@ class TypeRegistry {
602
602
  register(shapeId, schema) {
603
603
  const qualifiedName = this.normalizeShapeId(shapeId);
604
604
  for (const r of [this, TypeRegistry.for(qualifiedName.split("#")[0])]) {
605
- r.schemas.set(qualifiedName, schema);
605
+ if (!r.schemas.has(qualifiedName)) {
606
+ r.schemas.set(qualifiedName, schema);
607
+ }
606
608
  }
607
609
  }
608
610
  getSchema(shapeId) {
@@ -627,9 +629,12 @@ class TypeRegistry {
627
629
  registerError(es, ctor) {
628
630
  const $error = es;
629
631
  const ns = $error[1];
632
+ const qualifiedName = ns + "#" + $error[2];
630
633
  for (const r of [this, TypeRegistry.for(ns)]) {
631
- r.schemas.set(ns + "#" + $error[2], $error);
632
- r.exceptions.set($error, ctor);
634
+ if (!r.schemas.has(qualifiedName) && !r.exceptions.has($error)) {
635
+ r.schemas.set(qualifiedName, $error);
636
+ r.exceptions.set($error, ctor);
637
+ }
633
638
  }
634
639
  }
635
640
  getErrorCtor(es) {
@@ -1170,6 +1170,8 @@ const getAwsChunkedEncodingStream = (readableStream, options) => {
1170
1170
  checksumLocationName !== undefined &&
1171
1171
  streamHasher !== undefined;
1172
1172
  const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readableStream) : undefined;
1173
+ Promise.resolve(digest).catch(() => {
1174
+ });
1173
1175
  const reader = readableStream.getReader();
1174
1176
  return new ReadableStream({
1175
1177
  async pull(controller) {
@@ -1352,6 +1352,8 @@ const getAwsChunkedEncodingStream$1 = (readableStream, options) => {
1352
1352
  checksumLocationName !== undefined &&
1353
1353
  streamHasher !== undefined;
1354
1354
  const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readableStream) : undefined;
1355
+ Promise.resolve(digest).catch(() => {
1356
+ });
1355
1357
  const reader = readableStream.getReader();
1356
1358
  return new ReadableStream({
1357
1359
  async pull(controller) {
@@ -1384,8 +1386,12 @@ function getAwsChunkedEncodingStream(stream, options) {
1384
1386
  checksumLocationName !== undefined &&
1385
1387
  streamHasher !== undefined;
1386
1388
  const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readable) : undefined;
1389
+ Promise.resolve(digest).catch(() => {
1390
+ });
1387
1391
  const awsChunkedEncodingStream = new Readable({
1388
- read: () => { },
1392
+ read() {
1393
+ readable.resume();
1394
+ },
1389
1395
  });
1390
1396
  readable.on("data", (data) => {
1391
1397
  const length = bodyLengthChecker(data) || 0;
@@ -1394,16 +1400,27 @@ function getAwsChunkedEncodingStream(stream, options) {
1394
1400
  }
1395
1401
  awsChunkedEncodingStream.push(`${length.toString(16)}\r\n`);
1396
1402
  awsChunkedEncodingStream.push(data);
1397
- awsChunkedEncodingStream.push("\r\n");
1403
+ if (!awsChunkedEncodingStream.push("\r\n")) {
1404
+ readable.pause();
1405
+ }
1398
1406
  });
1407
+ readable.on("error", (err) => {
1408
+ awsChunkedEncodingStream.destroy(err);
1409
+ });
1410
+ readable.pause();
1399
1411
  readable.on("end", async () => {
1400
- awsChunkedEncodingStream.push(`0\r\n`);
1401
- if (checksumRequired) {
1402
- const checksum = base64Encoder(await digest);
1403
- awsChunkedEncodingStream.push(`${checksumLocationName}:${checksum}\r\n`);
1404
- awsChunkedEncodingStream.push(`\r\n`);
1412
+ try {
1413
+ awsChunkedEncodingStream.push(`0\r\n`);
1414
+ if (checksumRequired) {
1415
+ const checksum = base64Encoder(await digest);
1416
+ awsChunkedEncodingStream.push(`${checksumLocationName}:${checksum}\r\n`);
1417
+ awsChunkedEncodingStream.push(`\r\n`);
1418
+ }
1419
+ awsChunkedEncodingStream.push(null);
1420
+ }
1421
+ catch (err) {
1422
+ awsChunkedEncodingStream.destroy(err);
1405
1423
  }
1406
- awsChunkedEncodingStream.push(null);
1407
1424
  });
1408
1425
  return awsChunkedEncodingStream;
1409
1426
  }
@@ -1170,6 +1170,8 @@ const getAwsChunkedEncodingStream = (readableStream, options) => {
1170
1170
  checksumLocationName !== undefined &&
1171
1171
  streamHasher !== undefined;
1172
1172
  const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readableStream) : undefined;
1173
+ Promise.resolve(digest).catch(() => {
1174
+ });
1173
1175
  const reader = readableStream.getReader();
1174
1176
  return new ReadableStream({
1175
1177
  async pull(controller) {
@@ -50,37 +50,37 @@ export class SmithyRpcV2CborProtocol extends RpcProtocol {
50
50
  return super.deserializeResponse(operationSchema, context, response);
51
51
  }
52
52
  async handleError(operationSchema, context, response, dataObject, metadata) {
53
- const errorName = loadSmithyRpcV2CborErrorCode(response, dataObject) ?? "Unknown";
53
+ const errorIdentifier = loadSmithyRpcV2CborErrorCode(response, dataObject) ?? "Unknown";
54
+ const preferredNamespaces = ["*"];
55
+ const { defaultNamespace } = this.options;
56
+ preferredNamespaces.unshift(defaultNamespace);
57
+ const [namespace, errorShapeName] = (() => {
58
+ if (errorIdentifier.includes("#")) {
59
+ return errorIdentifier.split("#");
60
+ }
61
+ return [undefined, errorIdentifier];
62
+ })();
63
+ if (namespace) {
64
+ preferredNamespaces.unshift(namespace);
65
+ }
54
66
  const errorMetadata = {
55
67
  $metadata: metadata,
56
- $fault: response.statusCode <= 500 ? "client" : "server",
68
+ $fault: response.statusCode < 500 ? "client" : "server",
57
69
  };
58
- let namespace = this.options.defaultNamespace;
59
- if (errorName.includes("#")) {
60
- [namespace] = errorName.split("#");
70
+ const preferredRegistries = [this.compositeErrorRegistry];
71
+ if (namespace) {
72
+ preferredRegistries.push(TypeRegistry.for(namespace));
61
73
  }
62
- const registry = this.compositeErrorRegistry;
63
- const nsRegistry = TypeRegistry.for(namespace);
64
- registry.copyFrom(nsRegistry);
65
- let errorSchema;
66
- try {
67
- errorSchema = registry.getSchema(errorName);
68
- }
69
- catch (ignored) {
74
+ preferredRegistries.push(TypeRegistry.for(defaultNamespace));
75
+ const [errorSchema, ErrorCtor, errorMode] = this.resolveError(errorShapeName, preferredNamespaces, preferredRegistries);
76
+ if (errorMode === "native" || errorMode === "synthetic") {
70
77
  if (dataObject.Message) {
71
78
  dataObject.message = dataObject.Message;
72
79
  }
73
- const syntheticRegistry = TypeRegistry.for("smithy.ts.sdk.synthetic." + namespace);
74
- registry.copyFrom(syntheticRegistry);
75
- const baseExceptionSchema = registry.getBaseException();
76
- if (baseExceptionSchema) {
77
- const ErrorCtor = registry.getErrorCtor(baseExceptionSchema);
78
- throw Object.assign(new ErrorCtor({ name: errorName }), errorMetadata, dataObject);
79
- }
80
- throw Object.assign(new Error(errorName), errorMetadata, dataObject);
80
+ const error = errorMode === "synthetic" ? new ErrorCtor({ name: errorShapeName }) : new Error(errorShapeName);
81
+ throw Object.assign(error, errorMetadata, dataObject);
81
82
  }
82
83
  const ns = NormalizedSchema.of(errorSchema);
83
- const ErrorCtor = registry.getErrorCtor(errorSchema);
84
84
  const message = dataObject.message ?? dataObject.Message ?? "Unknown";
85
85
  const exception = new ErrorCtor({});
86
86
  const output = {};
@@ -42,26 +42,11 @@ export const loadSmithyRpcV2CborErrorCode = (output, data) => {
42
42
  if (cleanValue.indexOf(":") >= 0) {
43
43
  cleanValue = cleanValue.split(":")[0];
44
44
  }
45
- if (cleanValue.indexOf("#") >= 0) {
46
- cleanValue = cleanValue.split("#")[1];
47
- }
48
45
  return cleanValue;
49
46
  };
50
47
  if (data["__type"] !== undefined) {
51
48
  return sanitizeErrorCode(data["__type"]);
52
49
  }
53
- let codeKey;
54
- for (const key in data) {
55
- if (!hasOwn(data, key))
56
- continue;
57
- if (key.toLowerCase() === "code") {
58
- codeKey = key;
59
- break;
60
- }
61
- }
62
- if (codeKey && data[codeKey] !== undefined) {
63
- return sanitizeErrorCode(data[codeKey]);
64
- }
65
50
  };
66
51
  export const checkCborResponse = (response) => {
67
52
  if (String(response.headers["smithy-protocol"]).toLowerCase() !== "rpc-v2-cbor") {
@@ -5,7 +5,7 @@ export { invalidFunction } from "./invalid-dependency/invalidFunction";
5
5
  export { invalidProvider } from "./invalid-dependency/invalidProvider";
6
6
  export { createWaiter } from "./util-waiter/createWaiter";
7
7
  export { waiterServiceDefaults, WaiterState, checkExceptions, } from "./util-waiter/waiter";
8
- export { Client } from "./smithy-client/client";
8
+ export { Client, } from "./smithy-client/client";
9
9
  export { Command } from "./smithy-client/command";
10
10
  export { SENSITIVE_STRING } from "./smithy-client/constants";
11
11
  export { createAggregatedClient } from "./smithy-client/create-aggregated-client";
@@ -13,20 +13,27 @@ export class Command {
13
13
  }
14
14
  const stack = clientStack.concat(this.middlewareStack);
15
15
  const { logger } = configuration;
16
+ const additionalSmithyContext = additionalContext[SMITHY_CONTEXT_KEY];
16
17
  const handlerExecutionContext = {
17
18
  logger,
18
19
  clientName,
19
20
  commandName,
20
21
  inputFilterSensitiveLog,
21
22
  outputFilterSensitiveLog,
23
+ ...additionalContext,
22
24
  [SMITHY_CONTEXT_KEY]: {
25
+ ...additionalSmithyContext,
23
26
  commandInstance: this,
24
27
  ...smithyContext,
28
+ ...(options?.metricsRecorder === undefined ? {} : { metricsRecorder: options.metricsRecorder }),
25
29
  },
26
- ...additionalContext,
27
30
  };
28
31
  const { requestHandler } = configuration;
29
32
  let requestOptions = options ?? {};
33
+ if (requestOptions.metricsRecorder) {
34
+ requestOptions = { ...requestOptions };
35
+ delete requestOptions.metricsRecorder;
36
+ }
30
37
  if (smithyContext.eventStream) {
31
38
  requestOptions = {
32
39
  isEventStream: true,
@@ -27,10 +27,25 @@ export class ServiceException extends Error {
27
27
  return ServiceException.isInstance(instance);
28
28
  }
29
29
  if (ServiceException.isInstance(instance)) {
30
- if (candidate.name && this.name) {
31
- return this.prototype.isPrototypeOf(instance) || candidate.name === this.name;
30
+ if (this.prototype.isPrototypeOf(instance)) {
31
+ return true;
32
32
  }
33
- return this.prototype.isPrototypeOf(instance);
33
+ const targetName = this.name;
34
+ if (!targetName || !candidate.name) {
35
+ return false;
36
+ }
37
+ if (candidate.name === targetName) {
38
+ return true;
39
+ }
40
+ let proto = Object.getPrototypeOf(candidate);
41
+ while (proto && proto !== Object.prototype) {
42
+ const ctorName = proto.constructor?.name;
43
+ if (ctorName && ctorName !== "Error" && ctorName === targetName) {
44
+ return true;
45
+ }
46
+ proto = Object.getPrototypeOf(proto);
47
+ }
48
+ return false;
34
49
  }
35
50
  return false;
36
51
  }
@@ -0,0 +1,18 @@
1
+ export class SmithyError extends Error {
2
+ name = "SmithyError";
3
+ $source = errors.$source;
4
+ }
5
+ export class SmithyTypeError extends TypeError {
6
+ name = "SmithyTypeError";
7
+ $source = errors.$source;
8
+ }
9
+ export class SmithyRangeError extends RangeError {
10
+ name = "SmithyRangeError";
11
+ $source = errors.$source;
12
+ }
13
+ export const errors = {
14
+ $source: "smithy",
15
+ Error: SmithyError,
16
+ TypeError: SmithyTypeError,
17
+ RangeError: SmithyRangeError,
18
+ };
@@ -0,0 +1 @@
1
+ export { errors } from "./errors";