@aws-sdk/client-s3-control 3.99.0 → 3.107.0

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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,36 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [3.107.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.106.0...v3.107.0) (2022-06-08)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **clients:** handle empty xml tags ([#3623](https://github.com/aws/aws-sdk-js-v3/issues/3623)) ([543a0ce](https://github.com/aws/aws-sdk-js-v3/commit/543a0ce13bebc6e8a5f4cc8e1bd4de67692d4034))
12
+
13
+
14
+
15
+
16
+
17
+ # [3.105.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.104.0...v3.105.0) (2022-06-06)
18
+
19
+
20
+ ### Features
21
+
22
+ * **clients:** support recursion detection in Lambda ([#3654](https://github.com/aws/aws-sdk-js-v3/issues/3654)) ([ecfe46e](https://github.com/aws/aws-sdk-js-v3/commit/ecfe46ea1fd8b6e3812b75b3dc6c03554fb4b3fa))
23
+
24
+
25
+
26
+
27
+
28
+ # [3.100.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.99.0...v3.100.0) (2022-05-26)
29
+
30
+ **Note:** Version bump only for package @aws-sdk/client-s3-control
31
+
32
+
33
+
34
+
35
+
6
36
  # [3.99.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.98.0...v3.99.0) (2022-05-25)
7
37
 
8
38
  **Note:** Version bump only for package @aws-sdk/client-s3-control
@@ -5,6 +5,7 @@ const config_resolver_1 = require("@aws-sdk/config-resolver");
5
5
  const middleware_content_length_1 = require("@aws-sdk/middleware-content-length");
6
6
  const middleware_host_header_1 = require("@aws-sdk/middleware-host-header");
7
7
  const middleware_logger_1 = require("@aws-sdk/middleware-logger");
8
+ const middleware_recursion_detection_1 = require("@aws-sdk/middleware-recursion-detection");
8
9
  const middleware_retry_1 = require("@aws-sdk/middleware-retry");
9
10
  const middleware_sdk_s3_control_1 = require("@aws-sdk/middleware-sdk-s3-control");
10
11
  const middleware_signing_1 = require("@aws-sdk/middleware-signing");
@@ -27,6 +28,7 @@ class S3ControlClient extends smithy_client_1.Client {
27
28
  this.middlewareStack.use((0, middleware_content_length_1.getContentLengthPlugin)(this.config));
28
29
  this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config));
29
30
  this.middlewareStack.use((0, middleware_logger_1.getLoggerPlugin)(this.config));
31
+ this.middlewareStack.use((0, middleware_recursion_detection_1.getRecursionDetectionPlugin)(this.config));
30
32
  this.middlewareStack.use((0, middleware_signing_1.getAwsAuthPlugin)(this.config));
31
33
  this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config));
32
34
  }
@@ -3139,7 +3139,7 @@ const deserializeAws_restXmlGetAccessPointCommand = async (output, context) => {
3139
3139
  if (data.Endpoints === "") {
3140
3140
  contents.Endpoints = {};
3141
3141
  }
3142
- if (data["Endpoints"] !== undefined && data["Endpoints"]["entry"] !== undefined) {
3142
+ else if (data["Endpoints"] !== undefined && data["Endpoints"]["entry"] !== undefined) {
3143
3143
  contents.Endpoints = deserializeAws_restXmlEndpoints((0, smithy_client_1.getArrayIfSingleItem)(data["Endpoints"]["entry"]), context);
3144
3144
  }
3145
3145
  if (data["Name"] !== undefined) {
@@ -3442,7 +3442,7 @@ const deserializeAws_restXmlGetBucketLifecycleConfigurationCommand = async (outp
3442
3442
  if (data.Rules === "") {
3443
3443
  contents.Rules = [];
3444
3444
  }
3445
- if (data["Rules"] !== undefined && data["Rules"]["Rule"] !== undefined) {
3445
+ else if (data["Rules"] !== undefined && data["Rules"]["Rule"] !== undefined) {
3446
3446
  contents.Rules = deserializeAws_restXmlLifecycleRules((0, smithy_client_1.getArrayIfSingleItem)(data["Rules"]["Rule"]), context);
3447
3447
  }
3448
3448
  return Promise.resolve(contents);
@@ -3513,7 +3513,7 @@ const deserializeAws_restXmlGetBucketTaggingCommand = async (output, context) =>
3513
3513
  if (data.TagSet === "") {
3514
3514
  contents.TagSet = [];
3515
3515
  }
3516
- if (data["TagSet"] !== undefined && data["TagSet"]["member"] !== undefined) {
3516
+ else if (data["TagSet"] !== undefined && data["TagSet"]["member"] !== undefined) {
3517
3517
  contents.TagSet = deserializeAws_restXmlS3TagSet((0, smithy_client_1.getArrayIfSingleItem)(data["TagSet"]["member"]), context);
3518
3518
  }
3519
3519
  return Promise.resolve(contents);
@@ -3550,7 +3550,7 @@ const deserializeAws_restXmlGetJobTaggingCommand = async (output, context) => {
3550
3550
  if (data.Tags === "") {
3551
3551
  contents.Tags = [];
3552
3552
  }
3553
- if (data["Tags"] !== undefined && data["Tags"]["member"] !== undefined) {
3553
+ else if (data["Tags"] !== undefined && data["Tags"]["member"] !== undefined) {
3554
3554
  contents.Tags = deserializeAws_restXmlS3TagSet((0, smithy_client_1.getArrayIfSingleItem)(data["Tags"]["member"]), context);
3555
3555
  }
3556
3556
  return Promise.resolve(contents);
@@ -3765,7 +3765,7 @@ const deserializeAws_restXmlGetStorageLensConfigurationTaggingCommand = async (o
3765
3765
  if (data.Tags === "") {
3766
3766
  contents.Tags = [];
3767
3767
  }
3768
- if (data["Tags"] !== undefined && data["Tags"]["Tag"] !== undefined) {
3768
+ else if (data["Tags"] !== undefined && data["Tags"]["Tag"] !== undefined) {
3769
3769
  contents.Tags = deserializeAws_restXmlStorageLensTags((0, smithy_client_1.getArrayIfSingleItem)(data["Tags"]["Tag"]), context);
3770
3770
  }
3771
3771
  return Promise.resolve(contents);
@@ -3803,7 +3803,7 @@ const deserializeAws_restXmlListAccessPointsCommand = async (output, context) =>
3803
3803
  if (data.AccessPointList === "") {
3804
3804
  contents.AccessPointList = [];
3805
3805
  }
3806
- if (data["AccessPointList"] !== undefined && data["AccessPointList"]["AccessPoint"] !== undefined) {
3806
+ else if (data["AccessPointList"] !== undefined && data["AccessPointList"]["AccessPoint"] !== undefined) {
3807
3807
  contents.AccessPointList = deserializeAws_restXmlAccessPointList((0, smithy_client_1.getArrayIfSingleItem)(data["AccessPointList"]["AccessPoint"]), context);
3808
3808
  }
3809
3809
  if (data["NextToken"] !== undefined) {
@@ -3847,7 +3847,7 @@ const deserializeAws_restXmlListAccessPointsForObjectLambdaCommand = async (outp
3847
3847
  if (data.ObjectLambdaAccessPointList === "") {
3848
3848
  contents.ObjectLambdaAccessPointList = [];
3849
3849
  }
3850
- if (data["ObjectLambdaAccessPointList"] !== undefined &&
3850
+ else if (data["ObjectLambdaAccessPointList"] !== undefined &&
3851
3851
  data["ObjectLambdaAccessPointList"]["ObjectLambdaAccessPoint"] !== undefined) {
3852
3852
  contents.ObjectLambdaAccessPointList = deserializeAws_restXmlObjectLambdaAccessPointList((0, smithy_client_1.getArrayIfSingleItem)(data["ObjectLambdaAccessPointList"]["ObjectLambdaAccessPoint"]), context);
3853
3853
  }
@@ -3886,7 +3886,7 @@ const deserializeAws_restXmlListJobsCommand = async (output, context) => {
3886
3886
  if (data.Jobs === "") {
3887
3887
  contents.Jobs = [];
3888
3888
  }
3889
- if (data["Jobs"] !== undefined && data["Jobs"]["member"] !== undefined) {
3889
+ else if (data["Jobs"] !== undefined && data["Jobs"]["member"] !== undefined) {
3890
3890
  contents.Jobs = deserializeAws_restXmlJobListDescriptorList((0, smithy_client_1.getArrayIfSingleItem)(data["Jobs"]["member"]), context);
3891
3891
  }
3892
3892
  if (data["NextToken"] !== undefined) {
@@ -3936,7 +3936,7 @@ const deserializeAws_restXmlListMultiRegionAccessPointsCommand = async (output,
3936
3936
  if (data.AccessPoints === "") {
3937
3937
  contents.AccessPoints = [];
3938
3938
  }
3939
- if (data["AccessPoints"] !== undefined && data["AccessPoints"]["AccessPoint"] !== undefined) {
3939
+ else if (data["AccessPoints"] !== undefined && data["AccessPoints"]["AccessPoint"] !== undefined) {
3940
3940
  contents.AccessPoints = deserializeAws_restXmlMultiRegionAccessPointReportList((0, smithy_client_1.getArrayIfSingleItem)(data["AccessPoints"]["AccessPoint"]), context);
3941
3941
  }
3942
3942
  if (data["NextToken"] !== undefined) {
@@ -3980,7 +3980,7 @@ const deserializeAws_restXmlListRegionalBucketsCommand = async (output, context)
3980
3980
  if (data.RegionalBucketList === "") {
3981
3981
  contents.RegionalBucketList = [];
3982
3982
  }
3983
- if (data["RegionalBucketList"] !== undefined && data["RegionalBucketList"]["RegionalBucket"] !== undefined) {
3983
+ else if (data["RegionalBucketList"] !== undefined && data["RegionalBucketList"]["RegionalBucket"] !== undefined) {
3984
3984
  contents.RegionalBucketList = deserializeAws_restXmlRegionalBucketList((0, smithy_client_1.getArrayIfSingleItem)(data["RegionalBucketList"]["RegionalBucket"]), context);
3985
3985
  }
3986
3986
  return Promise.resolve(contents);
@@ -4021,7 +4021,7 @@ const deserializeAws_restXmlListStorageLensConfigurationsCommand = async (output
4021
4021
  if (data.StorageLensConfigurationList === "") {
4022
4022
  contents.StorageLensConfigurationList = [];
4023
4023
  }
4024
- if (data["StorageLensConfigurationList"] !== undefined) {
4024
+ else if (data["StorageLensConfigurationList"] !== undefined) {
4025
4025
  contents.StorageLensConfigurationList = deserializeAws_restXmlStorageLensConfigurationList((0, smithy_client_1.getArrayIfSingleItem)(data["StorageLensConfigurationList"]), context);
4026
4026
  }
4027
4027
  return Promise.resolve(contents);
@@ -6226,7 +6226,7 @@ const deserializeAws_restXmlCreateMultiRegionAccessPointInput = (output, context
6226
6226
  if (output.Regions === "") {
6227
6227
  contents.Regions = [];
6228
6228
  }
6229
- if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
6229
+ else if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
6230
6230
  contents.Regions = deserializeAws_restXmlRegionCreationList((0, smithy_client_1.getArrayIfSingleItem)(output["Regions"]["Region"]), context);
6231
6231
  }
6232
6232
  return contents;
@@ -6268,13 +6268,13 @@ const deserializeAws_restXml_Exclude = (output, context) => {
6268
6268
  if (output.Buckets === "") {
6269
6269
  contents.Buckets = [];
6270
6270
  }
6271
- if (output["Buckets"] !== undefined && output["Buckets"]["Arn"] !== undefined) {
6271
+ else if (output["Buckets"] !== undefined && output["Buckets"]["Arn"] !== undefined) {
6272
6272
  contents.Buckets = deserializeAws_restXmlBuckets((0, smithy_client_1.getArrayIfSingleItem)(output["Buckets"]["Arn"]), context);
6273
6273
  }
6274
6274
  if (output.Regions === "") {
6275
6275
  contents.Regions = [];
6276
6276
  }
6277
- if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
6277
+ else if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
6278
6278
  contents.Regions = deserializeAws_restXmlRegions((0, smithy_client_1.getArrayIfSingleItem)(output["Regions"]["Region"]), context);
6279
6279
  }
6280
6280
  return contents;
@@ -6300,13 +6300,13 @@ const deserializeAws_restXmlInclude = (output, context) => {
6300
6300
  if (output.Buckets === "") {
6301
6301
  contents.Buckets = [];
6302
6302
  }
6303
- if (output["Buckets"] !== undefined && output["Buckets"]["Arn"] !== undefined) {
6303
+ else if (output["Buckets"] !== undefined && output["Buckets"]["Arn"] !== undefined) {
6304
6304
  contents.Buckets = deserializeAws_restXmlBuckets((0, smithy_client_1.getArrayIfSingleItem)(output["Buckets"]["Arn"]), context);
6305
6305
  }
6306
6306
  if (output.Regions === "") {
6307
6307
  contents.Regions = [];
6308
6308
  }
6309
- if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
6309
+ else if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
6310
6310
  contents.Regions = deserializeAws_restXmlRegions((0, smithy_client_1.getArrayIfSingleItem)(output["Regions"]["Region"]), context);
6311
6311
  }
6312
6312
  return contents;
@@ -6366,7 +6366,7 @@ const deserializeAws_restXmlJobDescriptor = (output, context) => {
6366
6366
  if (output.FailureReasons === "") {
6367
6367
  contents.FailureReasons = [];
6368
6368
  }
6369
- if (output["FailureReasons"] !== undefined && output["FailureReasons"]["member"] !== undefined) {
6369
+ else if (output["FailureReasons"] !== undefined && output["FailureReasons"]["member"] !== undefined) {
6370
6370
  contents.FailureReasons = deserializeAws_restXmlJobFailureList((0, smithy_client_1.getArrayIfSingleItem)(output["FailureReasons"]["member"]), context);
6371
6371
  }
6372
6372
  if (output["Report"] !== undefined) {
@@ -6387,7 +6387,9 @@ const deserializeAws_restXmlJobDescriptor = (output, context) => {
6387
6387
  if (output["SuspendedCause"] !== undefined) {
6388
6388
  contents.SuspendedCause = (0, smithy_client_1.expectString)(output["SuspendedCause"]);
6389
6389
  }
6390
- if (output["ManifestGenerator"] !== undefined) {
6390
+ if (output.ManifestGenerator === "") {
6391
+ }
6392
+ else if (output["ManifestGenerator"] !== undefined) {
6391
6393
  contents.ManifestGenerator = deserializeAws_restXmlJobManifestGenerator((0, smithy_client_1.expectUnion)(output["ManifestGenerator"]), context);
6392
6394
  }
6393
6395
  if (output["GeneratedManifestDescriptor"] !== undefined) {
@@ -6515,7 +6517,7 @@ const deserializeAws_restXmlJobManifestGeneratorFilter = (output, context) => {
6515
6517
  if (output.ObjectReplicationStatuses === "") {
6516
6518
  contents.ObjectReplicationStatuses = [];
6517
6519
  }
6518
- if (output["ObjectReplicationStatuses"] !== undefined &&
6520
+ else if (output["ObjectReplicationStatuses"] !== undefined &&
6519
6521
  output["ObjectReplicationStatuses"]["member"] !== undefined) {
6520
6522
  contents.ObjectReplicationStatuses = deserializeAws_restXmlReplicationStatusFilterList((0, smithy_client_1.getArrayIfSingleItem)(output["ObjectReplicationStatuses"]["member"]), context);
6521
6523
  }
@@ -6549,7 +6551,7 @@ const deserializeAws_restXmlJobManifestSpec = (output, context) => {
6549
6551
  if (output.Fields === "") {
6550
6552
  contents.Fields = [];
6551
6553
  }
6552
- if (output["Fields"] !== undefined && output["Fields"]["member"] !== undefined) {
6554
+ else if (output["Fields"] !== undefined && output["Fields"]["member"] !== undefined) {
6553
6555
  contents.Fields = deserializeAws_restXmlJobManifestFieldList((0, smithy_client_1.getArrayIfSingleItem)(output["Fields"]["member"]), context);
6554
6556
  }
6555
6557
  return contents;
@@ -6702,13 +6704,13 @@ const deserializeAws_restXmlLifecycleRule = (output, context) => {
6702
6704
  if (output.Transitions === "") {
6703
6705
  contents.Transitions = [];
6704
6706
  }
6705
- if (output["Transitions"] !== undefined && output["Transitions"]["Transition"] !== undefined) {
6707
+ else if (output["Transitions"] !== undefined && output["Transitions"]["Transition"] !== undefined) {
6706
6708
  contents.Transitions = deserializeAws_restXmlTransitionList((0, smithy_client_1.getArrayIfSingleItem)(output["Transitions"]["Transition"]), context);
6707
6709
  }
6708
6710
  if (output.NoncurrentVersionTransitions === "") {
6709
6711
  contents.NoncurrentVersionTransitions = [];
6710
6712
  }
6711
- if (output["NoncurrentVersionTransitions"] !== undefined &&
6713
+ else if (output["NoncurrentVersionTransitions"] !== undefined &&
6712
6714
  output["NoncurrentVersionTransitions"]["NoncurrentVersionTransition"] !== undefined) {
6713
6715
  contents.NoncurrentVersionTransitions = deserializeAws_restXmlNoncurrentVersionTransitionList((0, smithy_client_1.getArrayIfSingleItem)(output["NoncurrentVersionTransitions"]["NoncurrentVersionTransition"]), context);
6714
6716
  }
@@ -6731,7 +6733,7 @@ const deserializeAws_restXmlLifecycleRuleAndOperator = (output, context) => {
6731
6733
  if (output.Tags === "") {
6732
6734
  contents.Tags = [];
6733
6735
  }
6734
- if (output["Tags"] !== undefined && output["Tags"]["member"] !== undefined) {
6736
+ else if (output["Tags"] !== undefined && output["Tags"]["member"] !== undefined) {
6735
6737
  contents.Tags = deserializeAws_restXmlS3TagSet((0, smithy_client_1.getArrayIfSingleItem)(output["Tags"]["member"]), context);
6736
6738
  }
6737
6739
  return contents;
@@ -6847,7 +6849,7 @@ const deserializeAws_restXmlMultiRegionAccessPointReport = (output, context) =>
6847
6849
  if (output.Regions === "") {
6848
6850
  contents.Regions = [];
6849
6851
  }
6850
- if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
6852
+ else if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
6851
6853
  contents.Regions = deserializeAws_restXmlRegionReportList((0, smithy_client_1.getArrayIfSingleItem)(output["Regions"]["Region"]), context);
6852
6854
  }
6853
6855
  return contents;
@@ -6869,7 +6871,7 @@ const deserializeAws_restXmlMultiRegionAccessPointsAsyncResponse = (output, cont
6869
6871
  if (output.Regions === "") {
6870
6872
  contents.Regions = [];
6871
6873
  }
6872
- if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
6874
+ else if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
6873
6875
  contents.Regions = deserializeAws_restXmlMultiRegionAccessPointRegionalResponseList((0, smithy_client_1.getArrayIfSingleItem)(output["Regions"]["Region"]), context);
6874
6876
  }
6875
6877
  return contents;
@@ -6955,13 +6957,13 @@ const deserializeAws_restXmlObjectLambdaConfiguration = (output, context) => {
6955
6957
  if (output.AllowedFeatures === "") {
6956
6958
  contents.AllowedFeatures = [];
6957
6959
  }
6958
- if (output["AllowedFeatures"] !== undefined && output["AllowedFeatures"]["AllowedFeature"] !== undefined) {
6960
+ else if (output["AllowedFeatures"] !== undefined && output["AllowedFeatures"]["AllowedFeature"] !== undefined) {
6959
6961
  contents.AllowedFeatures = deserializeAws_restXmlObjectLambdaAllowedFeaturesList((0, smithy_client_1.getArrayIfSingleItem)(output["AllowedFeatures"]["AllowedFeature"]), context);
6960
6962
  }
6961
6963
  if (output.TransformationConfigurations === "") {
6962
6964
  contents.TransformationConfigurations = [];
6963
6965
  }
6964
- if (output["TransformationConfigurations"] !== undefined &&
6966
+ else if (output["TransformationConfigurations"] !== undefined &&
6965
6967
  output["TransformationConfigurations"]["TransformationConfiguration"] !== undefined) {
6966
6968
  contents.TransformationConfigurations = deserializeAws_restXmlObjectLambdaTransformationConfigurationsList((0, smithy_client_1.getArrayIfSingleItem)(output["TransformationConfigurations"]["TransformationConfiguration"]), context);
6967
6969
  }
@@ -6983,10 +6985,12 @@ const deserializeAws_restXmlObjectLambdaTransformationConfiguration = (output, c
6983
6985
  if (output.Actions === "") {
6984
6986
  contents.Actions = [];
6985
6987
  }
6986
- if (output["Actions"] !== undefined && output["Actions"]["Action"] !== undefined) {
6988
+ else if (output["Actions"] !== undefined && output["Actions"]["Action"] !== undefined) {
6987
6989
  contents.Actions = deserializeAws_restXmlObjectLambdaTransformationConfigurationActionsList((0, smithy_client_1.getArrayIfSingleItem)(output["Actions"]["Action"]), context);
6988
6990
  }
6989
- if (output["ContentTransformation"] !== undefined) {
6991
+ if (output.ContentTransformation === "") {
6992
+ }
6993
+ else if (output["ContentTransformation"] !== undefined) {
6990
6994
  contents.ContentTransformation = deserializeAws_restXmlObjectLambdaContentTransformation((0, smithy_client_1.expectUnion)(output["ContentTransformation"]), context);
6991
6995
  }
6992
6996
  return contents;
@@ -7193,7 +7197,7 @@ const deserializeAws_restXmlS3AccessControlList = (output, context) => {
7193
7197
  if (output.Grants === "") {
7194
7198
  contents.Grants = [];
7195
7199
  }
7196
- if (output["Grants"] !== undefined && output["Grants"]["member"] !== undefined) {
7200
+ else if (output["Grants"] !== undefined && output["Grants"]["member"] !== undefined) {
7197
7201
  contents.Grants = deserializeAws_restXmlS3GrantList((0, smithy_client_1.getArrayIfSingleItem)(output["Grants"]["member"]), context);
7198
7202
  }
7199
7203
  return contents;
@@ -7270,7 +7274,7 @@ const deserializeAws_restXmlS3CopyObjectOperation = (output, context) => {
7270
7274
  if (output.AccessControlGrants === "") {
7271
7275
  contents.AccessControlGrants = [];
7272
7276
  }
7273
- if (output["AccessControlGrants"] !== undefined && output["AccessControlGrants"]["member"] !== undefined) {
7277
+ else if (output["AccessControlGrants"] !== undefined && output["AccessControlGrants"]["member"] !== undefined) {
7274
7278
  contents.AccessControlGrants = deserializeAws_restXmlS3GrantList((0, smithy_client_1.getArrayIfSingleItem)(output["AccessControlGrants"]["member"]), context);
7275
7279
  }
7276
7280
  if (output["MetadataDirective"] !== undefined) {
@@ -7285,7 +7289,7 @@ const deserializeAws_restXmlS3CopyObjectOperation = (output, context) => {
7285
7289
  if (output.NewObjectTagging === "") {
7286
7290
  contents.NewObjectTagging = [];
7287
7291
  }
7288
- if (output["NewObjectTagging"] !== undefined && output["NewObjectTagging"]["member"] !== undefined) {
7292
+ else if (output["NewObjectTagging"] !== undefined && output["NewObjectTagging"]["member"] !== undefined) {
7289
7293
  contents.NewObjectTagging = deserializeAws_restXmlS3TagSet((0, smithy_client_1.getArrayIfSingleItem)(output["NewObjectTagging"]["member"]), context);
7290
7294
  }
7291
7295
  if (output["RedirectLocation"] !== undefined) {
@@ -7481,7 +7485,7 @@ const deserializeAws_restXmlS3ObjectMetadata = (output, context) => {
7481
7485
  if (output.UserMetadata === "") {
7482
7486
  contents.UserMetadata = {};
7483
7487
  }
7484
- if (output["UserMetadata"] !== undefined && output["UserMetadata"]["entry"] !== undefined) {
7488
+ else if (output["UserMetadata"] !== undefined && output["UserMetadata"]["entry"] !== undefined) {
7485
7489
  contents.UserMetadata = deserializeAws_restXmlS3UserMetadata((0, smithy_client_1.getArrayIfSingleItem)(output["UserMetadata"]["entry"]), context);
7486
7490
  }
7487
7491
  if (output["ContentLength"] !== undefined) {
@@ -7572,7 +7576,7 @@ const deserializeAws_restXmlS3SetObjectTaggingOperation = (output, context) => {
7572
7576
  if (output.TagSet === "") {
7573
7577
  contents.TagSet = [];
7574
7578
  }
7575
- if (output["TagSet"] !== undefined && output["TagSet"]["member"] !== undefined) {
7579
+ else if (output["TagSet"] !== undefined && output["TagSet"]["member"] !== undefined) {
7576
7580
  contents.TagSet = deserializeAws_restXmlS3TagSet((0, smithy_client_1.getArrayIfSingleItem)(output["TagSet"]["member"]), context);
7577
7581
  }
7578
7582
  return contents;
@@ -3,6 +3,7 @@ import { resolveEndpointsConfig, resolveRegionConfig, } from "@aws-sdk/config-re
3
3
  import { getContentLengthPlugin } from "@aws-sdk/middleware-content-length";
4
4
  import { getHostHeaderPlugin, resolveHostHeaderConfig, } from "@aws-sdk/middleware-host-header";
5
5
  import { getLoggerPlugin } from "@aws-sdk/middleware-logger";
6
+ import { getRecursionDetectionPlugin } from "@aws-sdk/middleware-recursion-detection";
6
7
  import { getRetryPlugin, resolveRetryConfig } from "@aws-sdk/middleware-retry";
7
8
  import { resolveS3ControlConfig, } from "@aws-sdk/middleware-sdk-s3-control";
8
9
  import { getAwsAuthPlugin, resolveAwsAuthConfig, } from "@aws-sdk/middleware-signing";
@@ -27,6 +28,7 @@ var S3ControlClient = (function (_super) {
27
28
  _this.middlewareStack.use(getContentLengthPlugin(_this.config));
28
29
  _this.middlewareStack.use(getHostHeaderPlugin(_this.config));
29
30
  _this.middlewareStack.use(getLoggerPlugin(_this.config));
31
+ _this.middlewareStack.use(getRecursionDetectionPlugin(_this.config));
30
32
  _this.middlewareStack.use(getAwsAuthPlugin(_this.config));
31
33
  _this.middlewareStack.use(getUserAgentPlugin(_this.config));
32
34
  return _this;
@@ -3705,7 +3705,7 @@ export var deserializeAws_restXmlGetAccessPointCommand = function (output, conte
3705
3705
  if (data.Endpoints === "") {
3706
3706
  contents.Endpoints = {};
3707
3707
  }
3708
- if (data["Endpoints"] !== undefined && data["Endpoints"]["entry"] !== undefined) {
3708
+ else if (data["Endpoints"] !== undefined && data["Endpoints"]["entry"] !== undefined) {
3709
3709
  contents.Endpoints = deserializeAws_restXmlEndpoints(__getArrayIfSingleItem(data["Endpoints"]["entry"]), context);
3710
3710
  }
3711
3711
  if (data["Name"] !== undefined) {
@@ -4144,7 +4144,7 @@ export var deserializeAws_restXmlGetBucketLifecycleConfigurationCommand = functi
4144
4144
  if (data.Rules === "") {
4145
4145
  contents.Rules = [];
4146
4146
  }
4147
- if (data["Rules"] !== undefined && data["Rules"]["Rule"] !== undefined) {
4147
+ else if (data["Rules"] !== undefined && data["Rules"]["Rule"] !== undefined) {
4148
4148
  contents.Rules = deserializeAws_restXmlLifecycleRules(__getArrayIfSingleItem(data["Rules"]["Rule"]), context);
4149
4149
  }
4150
4150
  return [2, Promise.resolve(contents)];
@@ -4249,7 +4249,7 @@ export var deserializeAws_restXmlGetBucketTaggingCommand = function (output, con
4249
4249
  if (data.TagSet === "") {
4250
4250
  contents.TagSet = [];
4251
4251
  }
4252
- if (data["TagSet"] !== undefined && data["TagSet"]["member"] !== undefined) {
4252
+ else if (data["TagSet"] !== undefined && data["TagSet"]["member"] !== undefined) {
4253
4253
  contents.TagSet = deserializeAws_restXmlS3TagSet(__getArrayIfSingleItem(data["TagSet"]["member"]), context);
4254
4254
  }
4255
4255
  return [2, Promise.resolve(contents)];
@@ -4303,7 +4303,7 @@ export var deserializeAws_restXmlGetJobTaggingCommand = function (output, contex
4303
4303
  if (data.Tags === "") {
4304
4304
  contents.Tags = [];
4305
4305
  }
4306
- if (data["Tags"] !== undefined && data["Tags"]["member"] !== undefined) {
4306
+ else if (data["Tags"] !== undefined && data["Tags"]["member"] !== undefined) {
4307
4307
  contents.Tags = deserializeAws_restXmlS3TagSet(__getArrayIfSingleItem(data["Tags"]["member"]), context);
4308
4308
  }
4309
4309
  return [2, Promise.resolve(contents)];
@@ -4624,7 +4624,7 @@ export var deserializeAws_restXmlGetStorageLensConfigurationTaggingCommand = fun
4624
4624
  if (data.Tags === "") {
4625
4625
  contents.Tags = [];
4626
4626
  }
4627
- if (data["Tags"] !== undefined && data["Tags"]["Tag"] !== undefined) {
4627
+ else if (data["Tags"] !== undefined && data["Tags"]["Tag"] !== undefined) {
4628
4628
  contents.Tags = deserializeAws_restXmlStorageLensTags(__getArrayIfSingleItem(data["Tags"]["Tag"]), context);
4629
4629
  }
4630
4630
  return [2, Promise.resolve(contents)];
@@ -4679,7 +4679,7 @@ export var deserializeAws_restXmlListAccessPointsCommand = function (output, con
4679
4679
  if (data.AccessPointList === "") {
4680
4680
  contents.AccessPointList = [];
4681
4681
  }
4682
- if (data["AccessPointList"] !== undefined && data["AccessPointList"]["AccessPoint"] !== undefined) {
4682
+ else if (data["AccessPointList"] !== undefined && data["AccessPointList"]["AccessPoint"] !== undefined) {
4683
4683
  contents.AccessPointList = deserializeAws_restXmlAccessPointList(__getArrayIfSingleItem(data["AccessPointList"]["AccessPoint"]), context);
4684
4684
  }
4685
4685
  if (data["NextToken"] !== undefined) {
@@ -4740,7 +4740,7 @@ export var deserializeAws_restXmlListAccessPointsForObjectLambdaCommand = functi
4740
4740
  if (data.ObjectLambdaAccessPointList === "") {
4741
4741
  contents.ObjectLambdaAccessPointList = [];
4742
4742
  }
4743
- if (data["ObjectLambdaAccessPointList"] !== undefined &&
4743
+ else if (data["ObjectLambdaAccessPointList"] !== undefined &&
4744
4744
  data["ObjectLambdaAccessPointList"]["ObjectLambdaAccessPoint"] !== undefined) {
4745
4745
  contents.ObjectLambdaAccessPointList = deserializeAws_restXmlObjectLambdaAccessPointList(__getArrayIfSingleItem(data["ObjectLambdaAccessPointList"]["ObjectLambdaAccessPoint"]), context);
4746
4746
  }
@@ -4796,7 +4796,7 @@ export var deserializeAws_restXmlListJobsCommand = function (output, context) {
4796
4796
  if (data.Jobs === "") {
4797
4797
  contents.Jobs = [];
4798
4798
  }
4799
- if (data["Jobs"] !== undefined && data["Jobs"]["member"] !== undefined) {
4799
+ else if (data["Jobs"] !== undefined && data["Jobs"]["member"] !== undefined) {
4800
4800
  contents.Jobs = deserializeAws_restXmlJobListDescriptorList(__getArrayIfSingleItem(data["Jobs"]["member"]), context);
4801
4801
  }
4802
4802
  if (data["NextToken"] !== undefined) {
@@ -4867,7 +4867,7 @@ export var deserializeAws_restXmlListMultiRegionAccessPointsCommand = function (
4867
4867
  if (data.AccessPoints === "") {
4868
4868
  contents.AccessPoints = [];
4869
4869
  }
4870
- if (data["AccessPoints"] !== undefined && data["AccessPoints"]["AccessPoint"] !== undefined) {
4870
+ else if (data["AccessPoints"] !== undefined && data["AccessPoints"]["AccessPoint"] !== undefined) {
4871
4871
  contents.AccessPoints = deserializeAws_restXmlMultiRegionAccessPointReportList(__getArrayIfSingleItem(data["AccessPoints"]["AccessPoint"]), context);
4872
4872
  }
4873
4873
  if (data["NextToken"] !== undefined) {
@@ -4928,7 +4928,7 @@ export var deserializeAws_restXmlListRegionalBucketsCommand = function (output,
4928
4928
  if (data.RegionalBucketList === "") {
4929
4929
  contents.RegionalBucketList = [];
4930
4930
  }
4931
- if (data["RegionalBucketList"] !== undefined && data["RegionalBucketList"]["RegionalBucket"] !== undefined) {
4931
+ else if (data["RegionalBucketList"] !== undefined && data["RegionalBucketList"]["RegionalBucket"] !== undefined) {
4932
4932
  contents.RegionalBucketList = deserializeAws_restXmlRegionalBucketList(__getArrayIfSingleItem(data["RegionalBucketList"]["RegionalBucket"]), context);
4933
4933
  }
4934
4934
  return [2, Promise.resolve(contents)];
@@ -4986,7 +4986,7 @@ export var deserializeAws_restXmlListStorageLensConfigurationsCommand = function
4986
4986
  if (data.StorageLensConfigurationList === "") {
4987
4987
  contents.StorageLensConfigurationList = [];
4988
4988
  }
4989
- if (data["StorageLensConfigurationList"] !== undefined) {
4989
+ else if (data["StorageLensConfigurationList"] !== undefined) {
4990
4990
  contents.StorageLensConfigurationList = deserializeAws_restXmlStorageLensConfigurationList(__getArrayIfSingleItem(data["StorageLensConfigurationList"]), context);
4991
4991
  }
4992
4992
  return [2, Promise.resolve(contents)];
@@ -7417,7 +7417,7 @@ var deserializeAws_restXmlCreateMultiRegionAccessPointInput = function (output,
7417
7417
  if (output.Regions === "") {
7418
7418
  contents.Regions = [];
7419
7419
  }
7420
- if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
7420
+ else if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
7421
7421
  contents.Regions = deserializeAws_restXmlRegionCreationList(__getArrayIfSingleItem(output["Regions"]["Region"]), context);
7422
7422
  }
7423
7423
  return contents;
@@ -7457,13 +7457,13 @@ var deserializeAws_restXml_Exclude = function (output, context) {
7457
7457
  if (output.Buckets === "") {
7458
7458
  contents.Buckets = [];
7459
7459
  }
7460
- if (output["Buckets"] !== undefined && output["Buckets"]["Arn"] !== undefined) {
7460
+ else if (output["Buckets"] !== undefined && output["Buckets"]["Arn"] !== undefined) {
7461
7461
  contents.Buckets = deserializeAws_restXmlBuckets(__getArrayIfSingleItem(output["Buckets"]["Arn"]), context);
7462
7462
  }
7463
7463
  if (output.Regions === "") {
7464
7464
  contents.Regions = [];
7465
7465
  }
7466
- if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
7466
+ else if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
7467
7467
  contents.Regions = deserializeAws_restXmlRegions(__getArrayIfSingleItem(output["Regions"]["Region"]), context);
7468
7468
  }
7469
7469
  return contents;
@@ -7489,13 +7489,13 @@ var deserializeAws_restXmlInclude = function (output, context) {
7489
7489
  if (output.Buckets === "") {
7490
7490
  contents.Buckets = [];
7491
7491
  }
7492
- if (output["Buckets"] !== undefined && output["Buckets"]["Arn"] !== undefined) {
7492
+ else if (output["Buckets"] !== undefined && output["Buckets"]["Arn"] !== undefined) {
7493
7493
  contents.Buckets = deserializeAws_restXmlBuckets(__getArrayIfSingleItem(output["Buckets"]["Arn"]), context);
7494
7494
  }
7495
7495
  if (output.Regions === "") {
7496
7496
  contents.Regions = [];
7497
7497
  }
7498
- if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
7498
+ else if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
7499
7499
  contents.Regions = deserializeAws_restXmlRegions(__getArrayIfSingleItem(output["Regions"]["Region"]), context);
7500
7500
  }
7501
7501
  return contents;
@@ -7555,7 +7555,7 @@ var deserializeAws_restXmlJobDescriptor = function (output, context) {
7555
7555
  if (output.FailureReasons === "") {
7556
7556
  contents.FailureReasons = [];
7557
7557
  }
7558
- if (output["FailureReasons"] !== undefined && output["FailureReasons"]["member"] !== undefined) {
7558
+ else if (output["FailureReasons"] !== undefined && output["FailureReasons"]["member"] !== undefined) {
7559
7559
  contents.FailureReasons = deserializeAws_restXmlJobFailureList(__getArrayIfSingleItem(output["FailureReasons"]["member"]), context);
7560
7560
  }
7561
7561
  if (output["Report"] !== undefined) {
@@ -7576,7 +7576,9 @@ var deserializeAws_restXmlJobDescriptor = function (output, context) {
7576
7576
  if (output["SuspendedCause"] !== undefined) {
7577
7577
  contents.SuspendedCause = __expectString(output["SuspendedCause"]);
7578
7578
  }
7579
- if (output["ManifestGenerator"] !== undefined) {
7579
+ if (output.ManifestGenerator === "") {
7580
+ }
7581
+ else if (output["ManifestGenerator"] !== undefined) {
7580
7582
  contents.ManifestGenerator = deserializeAws_restXmlJobManifestGenerator(__expectUnion(output["ManifestGenerator"]), context);
7581
7583
  }
7582
7584
  if (output["GeneratedManifestDescriptor"] !== undefined) {
@@ -7704,7 +7706,7 @@ var deserializeAws_restXmlJobManifestGeneratorFilter = function (output, context
7704
7706
  if (output.ObjectReplicationStatuses === "") {
7705
7707
  contents.ObjectReplicationStatuses = [];
7706
7708
  }
7707
- if (output["ObjectReplicationStatuses"] !== undefined &&
7709
+ else if (output["ObjectReplicationStatuses"] !== undefined &&
7708
7710
  output["ObjectReplicationStatuses"]["member"] !== undefined) {
7709
7711
  contents.ObjectReplicationStatuses = deserializeAws_restXmlReplicationStatusFilterList(__getArrayIfSingleItem(output["ObjectReplicationStatuses"]["member"]), context);
7710
7712
  }
@@ -7738,7 +7740,7 @@ var deserializeAws_restXmlJobManifestSpec = function (output, context) {
7738
7740
  if (output.Fields === "") {
7739
7741
  contents.Fields = [];
7740
7742
  }
7741
- if (output["Fields"] !== undefined && output["Fields"]["member"] !== undefined) {
7743
+ else if (output["Fields"] !== undefined && output["Fields"]["member"] !== undefined) {
7742
7744
  contents.Fields = deserializeAws_restXmlJobManifestFieldList(__getArrayIfSingleItem(output["Fields"]["member"]), context);
7743
7745
  }
7744
7746
  return contents;
@@ -7891,13 +7893,13 @@ var deserializeAws_restXmlLifecycleRule = function (output, context) {
7891
7893
  if (output.Transitions === "") {
7892
7894
  contents.Transitions = [];
7893
7895
  }
7894
- if (output["Transitions"] !== undefined && output["Transitions"]["Transition"] !== undefined) {
7896
+ else if (output["Transitions"] !== undefined && output["Transitions"]["Transition"] !== undefined) {
7895
7897
  contents.Transitions = deserializeAws_restXmlTransitionList(__getArrayIfSingleItem(output["Transitions"]["Transition"]), context);
7896
7898
  }
7897
7899
  if (output.NoncurrentVersionTransitions === "") {
7898
7900
  contents.NoncurrentVersionTransitions = [];
7899
7901
  }
7900
- if (output["NoncurrentVersionTransitions"] !== undefined &&
7902
+ else if (output["NoncurrentVersionTransitions"] !== undefined &&
7901
7903
  output["NoncurrentVersionTransitions"]["NoncurrentVersionTransition"] !== undefined) {
7902
7904
  contents.NoncurrentVersionTransitions = deserializeAws_restXmlNoncurrentVersionTransitionList(__getArrayIfSingleItem(output["NoncurrentVersionTransitions"]["NoncurrentVersionTransition"]), context);
7903
7905
  }
@@ -7920,7 +7922,7 @@ var deserializeAws_restXmlLifecycleRuleAndOperator = function (output, context)
7920
7922
  if (output.Tags === "") {
7921
7923
  contents.Tags = [];
7922
7924
  }
7923
- if (output["Tags"] !== undefined && output["Tags"]["member"] !== undefined) {
7925
+ else if (output["Tags"] !== undefined && output["Tags"]["member"] !== undefined) {
7924
7926
  contents.Tags = deserializeAws_restXmlS3TagSet(__getArrayIfSingleItem(output["Tags"]["member"]), context);
7925
7927
  }
7926
7928
  return contents;
@@ -8036,7 +8038,7 @@ var deserializeAws_restXmlMultiRegionAccessPointReport = function (output, conte
8036
8038
  if (output.Regions === "") {
8037
8039
  contents.Regions = [];
8038
8040
  }
8039
- if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
8041
+ else if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
8040
8042
  contents.Regions = deserializeAws_restXmlRegionReportList(__getArrayIfSingleItem(output["Regions"]["Region"]), context);
8041
8043
  }
8042
8044
  return contents;
@@ -8058,7 +8060,7 @@ var deserializeAws_restXmlMultiRegionAccessPointsAsyncResponse = function (outpu
8058
8060
  if (output.Regions === "") {
8059
8061
  contents.Regions = [];
8060
8062
  }
8061
- if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
8063
+ else if (output["Regions"] !== undefined && output["Regions"]["Region"] !== undefined) {
8062
8064
  contents.Regions = deserializeAws_restXmlMultiRegionAccessPointRegionalResponseList(__getArrayIfSingleItem(output["Regions"]["Region"]), context);
8063
8065
  }
8064
8066
  return contents;
@@ -8144,13 +8146,13 @@ var deserializeAws_restXmlObjectLambdaConfiguration = function (output, context)
8144
8146
  if (output.AllowedFeatures === "") {
8145
8147
  contents.AllowedFeatures = [];
8146
8148
  }
8147
- if (output["AllowedFeatures"] !== undefined && output["AllowedFeatures"]["AllowedFeature"] !== undefined) {
8149
+ else if (output["AllowedFeatures"] !== undefined && output["AllowedFeatures"]["AllowedFeature"] !== undefined) {
8148
8150
  contents.AllowedFeatures = deserializeAws_restXmlObjectLambdaAllowedFeaturesList(__getArrayIfSingleItem(output["AllowedFeatures"]["AllowedFeature"]), context);
8149
8151
  }
8150
8152
  if (output.TransformationConfigurations === "") {
8151
8153
  contents.TransformationConfigurations = [];
8152
8154
  }
8153
- if (output["TransformationConfigurations"] !== undefined &&
8155
+ else if (output["TransformationConfigurations"] !== undefined &&
8154
8156
  output["TransformationConfigurations"]["TransformationConfiguration"] !== undefined) {
8155
8157
  contents.TransformationConfigurations = deserializeAws_restXmlObjectLambdaTransformationConfigurationsList(__getArrayIfSingleItem(output["TransformationConfigurations"]["TransformationConfiguration"]), context);
8156
8158
  }
@@ -8172,10 +8174,12 @@ var deserializeAws_restXmlObjectLambdaTransformationConfiguration = function (ou
8172
8174
  if (output.Actions === "") {
8173
8175
  contents.Actions = [];
8174
8176
  }
8175
- if (output["Actions"] !== undefined && output["Actions"]["Action"] !== undefined) {
8177
+ else if (output["Actions"] !== undefined && output["Actions"]["Action"] !== undefined) {
8176
8178
  contents.Actions = deserializeAws_restXmlObjectLambdaTransformationConfigurationActionsList(__getArrayIfSingleItem(output["Actions"]["Action"]), context);
8177
8179
  }
8178
- if (output["ContentTransformation"] !== undefined) {
8180
+ if (output.ContentTransformation === "") {
8181
+ }
8182
+ else if (output["ContentTransformation"] !== undefined) {
8179
8183
  contents.ContentTransformation = deserializeAws_restXmlObjectLambdaContentTransformation(__expectUnion(output["ContentTransformation"]), context);
8180
8184
  }
8181
8185
  return contents;
@@ -8382,7 +8386,7 @@ var deserializeAws_restXmlS3AccessControlList = function (output, context) {
8382
8386
  if (output.Grants === "") {
8383
8387
  contents.Grants = [];
8384
8388
  }
8385
- if (output["Grants"] !== undefined && output["Grants"]["member"] !== undefined) {
8389
+ else if (output["Grants"] !== undefined && output["Grants"]["member"] !== undefined) {
8386
8390
  contents.Grants = deserializeAws_restXmlS3GrantList(__getArrayIfSingleItem(output["Grants"]["member"]), context);
8387
8391
  }
8388
8392
  return contents;
@@ -8459,7 +8463,7 @@ var deserializeAws_restXmlS3CopyObjectOperation = function (output, context) {
8459
8463
  if (output.AccessControlGrants === "") {
8460
8464
  contents.AccessControlGrants = [];
8461
8465
  }
8462
- if (output["AccessControlGrants"] !== undefined && output["AccessControlGrants"]["member"] !== undefined) {
8466
+ else if (output["AccessControlGrants"] !== undefined && output["AccessControlGrants"]["member"] !== undefined) {
8463
8467
  contents.AccessControlGrants = deserializeAws_restXmlS3GrantList(__getArrayIfSingleItem(output["AccessControlGrants"]["member"]), context);
8464
8468
  }
8465
8469
  if (output["MetadataDirective"] !== undefined) {
@@ -8474,7 +8478,7 @@ var deserializeAws_restXmlS3CopyObjectOperation = function (output, context) {
8474
8478
  if (output.NewObjectTagging === "") {
8475
8479
  contents.NewObjectTagging = [];
8476
8480
  }
8477
- if (output["NewObjectTagging"] !== undefined && output["NewObjectTagging"]["member"] !== undefined) {
8481
+ else if (output["NewObjectTagging"] !== undefined && output["NewObjectTagging"]["member"] !== undefined) {
8478
8482
  contents.NewObjectTagging = deserializeAws_restXmlS3TagSet(__getArrayIfSingleItem(output["NewObjectTagging"]["member"]), context);
8479
8483
  }
8480
8484
  if (output["RedirectLocation"] !== undefined) {
@@ -8670,7 +8674,7 @@ var deserializeAws_restXmlS3ObjectMetadata = function (output, context) {
8670
8674
  if (output.UserMetadata === "") {
8671
8675
  contents.UserMetadata = {};
8672
8676
  }
8673
- if (output["UserMetadata"] !== undefined && output["UserMetadata"]["entry"] !== undefined) {
8677
+ else if (output["UserMetadata"] !== undefined && output["UserMetadata"]["entry"] !== undefined) {
8674
8678
  contents.UserMetadata = deserializeAws_restXmlS3UserMetadata(__getArrayIfSingleItem(output["UserMetadata"]["entry"]), context);
8675
8679
  }
8676
8680
  if (output["ContentLength"] !== undefined) {
@@ -8761,7 +8765,7 @@ var deserializeAws_restXmlS3SetObjectTaggingOperation = function (output, contex
8761
8765
  if (output.TagSet === "") {
8762
8766
  contents.TagSet = [];
8763
8767
  }
8764
- if (output["TagSet"] !== undefined && output["TagSet"]["member"] !== undefined) {
8768
+ else if (output["TagSet"] !== undefined && output["TagSet"]["member"] !== undefined) {
8765
8769
  contents.TagSet = deserializeAws_restXmlS3TagSet(__getArrayIfSingleItem(output["TagSet"]["member"]), context);
8766
8770
  }
8767
8771
  return contents;
@@ -1314,9 +1314,7 @@ export interface S3ObjectMetadata {
1314
1314
  /**
1315
1315
  * <p></p>
1316
1316
  */
1317
- UserMetadata?: {
1318
- [key: string]: string;
1319
- };
1317
+ UserMetadata?: Record<string, string>;
1320
1318
  /**
1321
1319
  * <p></p>
1322
1320
  */
@@ -2440,9 +2438,7 @@ export interface GetAccessPointResult {
2440
2438
  /**
2441
2439
  * <p>The VPC endpoint for the access point.</p>
2442
2440
  */
2443
- Endpoints?: {
2444
- [key: string]: string;
2445
- };
2441
+ Endpoints?: Record<string, string>;
2446
2442
  }
2447
2443
  export declare namespace GetAccessPointResult {
2448
2444
  /**
@@ -723,9 +723,7 @@ export interface S3ObjectMetadata {
723
723
 
724
724
  ContentLanguage?: string;
725
725
 
726
- UserMetadata?: {
727
- [key: string]: string;
728
- };
726
+ UserMetadata?: Record<string, string>;
729
727
 
730
728
  ContentLength?: number;
731
729
 
@@ -1331,9 +1329,7 @@ export interface GetAccessPointResult {
1331
1329
 
1332
1330
  AccessPointArn?: string;
1333
1331
 
1334
- Endpoints?: {
1335
- [key: string]: string;
1336
- };
1332
+ Endpoints?: Record<string, string>;
1337
1333
  }
1338
1334
  export declare namespace GetAccessPointResult {
1339
1335
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-s3-control",
3
3
  "description": "AWS SDK for JavaScript S3 Control Client for Node.js, Browser and React Native",
4
- "version": "3.99.0",
4
+ "version": "3.107.0",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
7
7
  "build:cjs": "tsc -p tsconfig.cjs.json",
@@ -20,9 +20,9 @@
20
20
  "dependencies": {
21
21
  "@aws-crypto/sha256-browser": "2.0.0",
22
22
  "@aws-crypto/sha256-js": "2.0.0",
23
- "@aws-sdk/client-sts": "3.99.0",
23
+ "@aws-sdk/client-sts": "3.105.0",
24
24
  "@aws-sdk/config-resolver": "3.80.0",
25
- "@aws-sdk/credential-provider-node": "3.99.0",
25
+ "@aws-sdk/credential-provider-node": "3.105.0",
26
26
  "@aws-sdk/fetch-http-handler": "3.78.0",
27
27
  "@aws-sdk/hash-blob-browser": "3.78.0",
28
28
  "@aws-sdk/hash-node": "3.78.0",
@@ -33,6 +33,7 @@
33
33
  "@aws-sdk/middleware-content-length": "3.78.0",
34
34
  "@aws-sdk/middleware-host-header": "3.78.0",
35
35
  "@aws-sdk/middleware-logger": "3.78.0",
36
+ "@aws-sdk/middleware-recursion-detection": "3.105.0",
36
37
  "@aws-sdk/middleware-retry": "3.80.0",
37
38
  "@aws-sdk/middleware-sdk-s3-control": "3.80.0",
38
39
  "@aws-sdk/middleware-serde": "3.78.0",