@cdklabs/cdk-ecs-codedeploy 0.0.422 → 0.0.424

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 (118) hide show
  1. package/.jsii +3 -3
  2. package/.jsii.tabl.json +1 -1
  3. package/lib/api-canary/index.js +1 -1
  4. package/lib/ecs-appspec/index.js +1 -1
  5. package/lib/ecs-deployment/index.js +1 -1
  6. package/lib/ecs-patterns/application-load-balanced-codedeployed-fargate-service.js +1 -1
  7. package/node_modules/@aws/lambda-invoke-store/dist-cjs/invoke-store.js +1 -1
  8. package/node_modules/@aws/lambda-invoke-store/dist-es/invoke-store.js +1 -1
  9. package/node_modules/@aws/lambda-invoke-store/dist-types/invoke-store.d.ts +3 -4
  10. package/node_modules/@aws/lambda-invoke-store/package.json +1 -1
  11. package/node_modules/@aws-sdk/client-codedeploy/dist-cjs/index.js +38 -38
  12. package/node_modules/@aws-sdk/client-codedeploy/dist-es/schemas/schemas_0.js +38 -38
  13. package/node_modules/@aws-sdk/client-codedeploy/package.json +38 -38
  14. package/node_modules/@aws-sdk/client-sso/dist-cjs/index.js +6 -6
  15. package/node_modules/@aws-sdk/client-sso/dist-es/schemas/schemas_0.js +6 -6
  16. package/node_modules/@aws-sdk/client-sso/package.json +36 -36
  17. package/node_modules/@aws-sdk/core/dist-cjs/index.js +54 -11
  18. package/node_modules/@aws-sdk/core/dist-cjs/submodules/httpAuthSchemes/index.js +9 -1
  19. package/node_modules/@aws-sdk/core/dist-cjs/submodules/protocols/index.js +45 -10
  20. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js +9 -1
  21. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeDeserializer.js +23 -5
  22. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeSerializer.js +22 -5
  23. package/node_modules/@aws-sdk/core/package.json +14 -14
  24. package/node_modules/@aws-sdk/credential-provider-env/package.json +8 -8
  25. package/node_modules/@aws-sdk/credential-provider-http/package.json +13 -13
  26. package/node_modules/@aws-sdk/credential-provider-ini/package.json +17 -17
  27. package/node_modules/@aws-sdk/credential-provider-login/package.json +11 -11
  28. package/node_modules/@aws-sdk/credential-provider-node/package.json +15 -15
  29. package/node_modules/@aws-sdk/credential-provider-process/package.json +9 -9
  30. package/node_modules/@aws-sdk/credential-provider-sso/package.json +11 -11
  31. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +10 -10
  32. package/node_modules/@aws-sdk/middleware-host-header/package.json +6 -6
  33. package/node_modules/@aws-sdk/middleware-logger/package.json +6 -6
  34. package/node_modules/@aws-sdk/middleware-recursion-detection/package.json +6 -6
  35. package/node_modules/@aws-sdk/middleware-user-agent/package.json +9 -9
  36. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/index.js +9 -4
  37. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/index.js +1 -0
  38. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/index.js +5 -2
  39. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/schemas/schemas_0.js +9 -4
  40. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/schemas/schemas_0.js +1 -0
  41. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/schemas/schemas_0.js +5 -2
  42. package/node_modules/@aws-sdk/nested-clients/package.json +35 -35
  43. package/node_modules/@aws-sdk/region-config-resolver/package.json +7 -7
  44. package/node_modules/@aws-sdk/token-providers/package.json +10 -10
  45. package/node_modules/@aws-sdk/types/package.json +4 -4
  46. package/node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js +1 -1
  47. package/node_modules/@aws-sdk/util-endpoints/dist-cjs/lib/aws/partitions.json +1 -1
  48. package/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/partitions.json +1 -1
  49. package/node_modules/@aws-sdk/util-endpoints/package.json +7 -7
  50. package/node_modules/@aws-sdk/util-locate-window/package.json +4 -4
  51. package/node_modules/@aws-sdk/util-user-agent-browser/package.json +4 -4
  52. package/node_modules/@aws-sdk/util-user-agent-node/package.json +8 -8
  53. package/node_modules/@aws-sdk/xml-builder/package.json +4 -4
  54. package/node_modules/@smithy/abort-controller/package.json +3 -3
  55. package/node_modules/@smithy/config-resolver/package.json +6 -6
  56. package/node_modules/@smithy/core/dist-cjs/submodules/cbor/index.js +20 -0
  57. package/node_modules/@smithy/core/dist-cjs/submodules/protocols/index.js +6 -0
  58. package/node_modules/@smithy/core/dist-es/submodules/cbor/CborCodec.js +21 -0
  59. package/node_modules/@smithy/core/dist-es/submodules/protocols/HttpBindingProtocol.js +3 -0
  60. package/node_modules/@smithy/core/dist-es/submodules/protocols/HttpProtocol.js +3 -0
  61. package/node_modules/@smithy/core/dist-types/submodules/protocols/SerdeContext.d.ts +10 -2
  62. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/SerdeContext.d.ts +10 -2
  63. package/node_modules/@smithy/core/package.json +11 -11
  64. package/node_modules/@smithy/credential-provider-imds/package.json +6 -6
  65. package/node_modules/@smithy/fetch-http-handler/package.json +6 -6
  66. package/node_modules/@smithy/hash-node/package.json +3 -3
  67. package/node_modules/@smithy/invalid-dependency/package.json +3 -3
  68. package/node_modules/@smithy/middleware-content-length/package.json +4 -4
  69. package/node_modules/@smithy/middleware-endpoint/package.json +12 -12
  70. package/node_modules/@smithy/middleware-retry/package.json +12 -12
  71. package/node_modules/@smithy/middleware-serde/package.json +4 -4
  72. package/node_modules/@smithy/middleware-stack/package.json +3 -3
  73. package/node_modules/@smithy/node-config-provider/package.json +5 -5
  74. package/node_modules/@smithy/node-http-handler/package.json +6 -6
  75. package/node_modules/@smithy/property-provider/package.json +3 -3
  76. package/node_modules/@smithy/protocol-http/package.json +3 -3
  77. package/node_modules/@smithy/querystring-builder/package.json +3 -3
  78. package/node_modules/@smithy/querystring-parser/package.json +3 -3
  79. package/node_modules/@smithy/service-error-classification/package.json +3 -3
  80. package/node_modules/@smithy/shared-ini-file-loader/package.json +3 -3
  81. package/node_modules/@smithy/signature-v4/package.json +5 -5
  82. package/node_modules/@smithy/smithy-client/package.json +11 -11
  83. package/node_modules/@smithy/types/dist-types/schema/static-schemas.d.ts +4 -2
  84. package/node_modules/@smithy/types/dist-types/ts3.4/schema/static-schemas.d.ts +4 -2
  85. package/node_modules/@smithy/types/package.json +2 -2
  86. package/node_modules/@smithy/url-parser/package.json +4 -4
  87. package/node_modules/@smithy/util-defaults-mode-browser/package.json +8 -8
  88. package/node_modules/@smithy/util-defaults-mode-node/package.json +11 -11
  89. package/node_modules/@smithy/util-endpoints/package.json +4 -4
  90. package/node_modules/@smithy/util-middleware/package.json +3 -3
  91. package/node_modules/@smithy/util-retry/package.json +4 -4
  92. package/node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js +20 -9
  93. package/node_modules/@smithy/util-stream/dist-cjs/index.js +8 -6
  94. package/node_modules/@smithy/util-stream/dist-es/getAwsChunkedEncodingStream.js +19 -7
  95. package/node_modules/@smithy/util-stream/dist-es/index.js +1 -1
  96. package/node_modules/@smithy/util-stream/dist-types/checksum/ChecksumStream.d.ts +7 -7
  97. package/node_modules/@smithy/util-stream/dist-types/checksum/createChecksumStream.browser.d.ts +2 -3
  98. package/node_modules/@smithy/util-stream/dist-types/checksum/createChecksumStream.d.ts +4 -2
  99. package/node_modules/@smithy/util-stream/dist-types/createBufferedReadable.d.ts +4 -1
  100. package/node_modules/@smithy/util-stream/dist-types/getAwsChunkedEncodingStream.d.ts +7 -3
  101. package/node_modules/@smithy/util-stream/dist-types/headStream.browser.d.ts +1 -2
  102. package/node_modules/@smithy/util-stream/dist-types/headStream.d.ts +2 -2
  103. package/node_modules/@smithy/util-stream/dist-types/index.d.ts +4 -1
  104. package/node_modules/@smithy/util-stream/dist-types/splitStream.d.ts +3 -0
  105. package/node_modules/@smithy/util-stream/dist-types/stream-type-check.d.ts +2 -1
  106. package/node_modules/@smithy/util-stream/dist-types/ts3.4/checksum/ChecksumStream.d.ts +7 -7
  107. package/node_modules/@smithy/util-stream/dist-types/ts3.4/checksum/createChecksumStream.browser.d.ts +2 -3
  108. package/node_modules/@smithy/util-stream/dist-types/ts3.4/checksum/createChecksumStream.d.ts +4 -2
  109. package/node_modules/@smithy/util-stream/dist-types/ts3.4/createBufferedReadable.d.ts +4 -1
  110. package/node_modules/@smithy/util-stream/dist-types/ts3.4/getAwsChunkedEncodingStream.d.ts +7 -3
  111. package/node_modules/@smithy/util-stream/dist-types/ts3.4/headStream.browser.d.ts +1 -2
  112. package/node_modules/@smithy/util-stream/dist-types/ts3.4/headStream.d.ts +2 -2
  113. package/node_modules/@smithy/util-stream/dist-types/ts3.4/index.d.ts +4 -1
  114. package/node_modules/@smithy/util-stream/dist-types/ts3.4/splitStream.d.ts +3 -0
  115. package/node_modules/@smithy/util-stream/dist-types/ts3.4/stream-type-check.d.ts +2 -1
  116. package/node_modules/@smithy/util-stream/package.json +5 -5
  117. package/node_modules/@smithy/util-waiter/package.json +4 -4
  118. package/package.json +3 -3
@@ -226,7 +226,15 @@ const resolveAwsSdkSigV4Config = (config) => {
226
226
  });
227
227
  const boundProvider = bindCallerConfig(config, memoizedProvider);
228
228
  if (isUserSupplied && !boundProvider.attributed) {
229
- resolvedCredentials = async (options) => boundProvider(options).then((creds) => client.setCredentialFeature(creds, "CREDENTIALS_CODE", "e"));
229
+ const isCredentialObject = typeof inputCredentials === "object" && inputCredentials !== null;
230
+ resolvedCredentials = async (options) => {
231
+ const creds = await boundProvider(options);
232
+ const attributedCreds = creds;
233
+ if (isCredentialObject && (!attributedCreds.$source || Object.keys(attributedCreds.$source).length === 0)) {
234
+ return client.setCredentialFeature(attributedCreds, "CREDENTIALS_CODE", "e");
235
+ }
236
+ return attributedCreds;
237
+ };
230
238
  resolvedCredentials.memoized = boundProvider.memoized;
231
239
  resolvedCredentials.configBound = boundProvider.configBound;
232
240
  resolvedCredentials.attributed = true;
@@ -719,24 +727,42 @@ class JsonShapeDeserializer extends SerdeContextConfig {
719
727
  const ns = schema.NormalizedSchema.of(schema$1);
720
728
  if (isObject) {
721
729
  if (ns.isStructSchema()) {
730
+ const record = value;
722
731
  const union = ns.isUnionSchema();
723
732
  const out = {};
733
+ let nameMap = void 0;
734
+ const { jsonName } = this.settings;
735
+ if (jsonName) {
736
+ nameMap = {};
737
+ }
724
738
  let unionSerde;
725
739
  if (union) {
726
- unionSerde = new UnionSerde(value, out);
740
+ unionSerde = new UnionSerde(record, out);
727
741
  }
728
- for (const [memberName, memberSchema] of deserializingStructIterator(ns, value, this.settings.jsonName ? "jsonName" : false)) {
729
- const fromKey = this.settings.jsonName ? memberSchema.getMergedTraits().jsonName ?? memberName : memberName;
742
+ for (const [memberName, memberSchema] of deserializingStructIterator(ns, record, jsonName ? "jsonName" : false)) {
743
+ let fromKey = memberName;
744
+ if (jsonName) {
745
+ fromKey = memberSchema.getMergedTraits().jsonName ?? fromKey;
746
+ nameMap[fromKey] = memberName;
747
+ }
730
748
  if (union) {
731
749
  unionSerde.mark(fromKey);
732
750
  }
733
- if (value[fromKey] != null) {
734
- out[memberName] = this._read(memberSchema, value[fromKey]);
751
+ if (record[fromKey] != null) {
752
+ out[memberName] = this._read(memberSchema, record[fromKey]);
735
753
  }
736
754
  }
737
755
  if (union) {
738
756
  unionSerde.writeUnknown();
739
757
  }
758
+ else if (typeof record.__type === "string") {
759
+ for (const [k, v] of Object.entries(record)) {
760
+ const t = jsonName ? nameMap[k] ?? k : k;
761
+ if (!(t in out)) {
762
+ out[t] = v;
763
+ }
764
+ }
765
+ }
740
766
  return out;
741
767
  }
742
768
  if (Array.isArray(value) && ns.isListSchema()) {
@@ -915,22 +941,39 @@ class JsonShapeSerializer extends SerdeContextConfig {
915
941
  const ns = schema.NormalizedSchema.of(schema$1);
916
942
  if (isObject) {
917
943
  if (ns.isStructSchema()) {
944
+ const record = value;
918
945
  const out = {};
919
- for (const [memberName, memberSchema] of serializingStructIterator(ns, value)) {
920
- const serializableValue = this._write(memberSchema, value[memberName], ns);
946
+ const { jsonName } = this.settings;
947
+ let nameMap = void 0;
948
+ if (jsonName) {
949
+ nameMap = {};
950
+ }
951
+ for (const [memberName, memberSchema] of serializingStructIterator(ns, record)) {
952
+ const serializableValue = this._write(memberSchema, record[memberName], ns);
921
953
  if (serializableValue !== undefined) {
922
- const jsonName = memberSchema.getMergedTraits().jsonName;
923
- const targetKey = this.settings.jsonName ? jsonName ?? memberName : memberName;
954
+ let targetKey = memberName;
955
+ if (jsonName) {
956
+ targetKey = memberSchema.getMergedTraits().jsonName ?? memberName;
957
+ nameMap[memberName] = targetKey;
958
+ }
924
959
  out[targetKey] = serializableValue;
925
960
  }
926
961
  }
927
962
  if (ns.isUnionSchema() && Object.keys(out).length === 0) {
928
- const { $unknown } = value;
963
+ const { $unknown } = record;
929
964
  if (Array.isArray($unknown)) {
930
965
  const [k, v] = $unknown;
931
966
  out[k] = this._write(15, v);
932
967
  }
933
968
  }
969
+ else if (typeof record.__type === "string") {
970
+ for (const [k, v] of Object.entries(record)) {
971
+ const targetKey = jsonName ? nameMap[k] ?? k : k;
972
+ if (!(targetKey in out)) {
973
+ out[targetKey] = this._write(15, v);
974
+ }
975
+ }
976
+ }
934
977
  return out;
935
978
  }
936
979
  if (Array.isArray(value) && ns.isListSchema()) {
@@ -174,7 +174,15 @@ const resolveAwsSdkSigV4Config = (config) => {
174
174
  });
175
175
  const boundProvider = bindCallerConfig(config, memoizedProvider);
176
176
  if (isUserSupplied && !boundProvider.attributed) {
177
- resolvedCredentials = async (options) => boundProvider(options).then((creds) => client.setCredentialFeature(creds, "CREDENTIALS_CODE", "e"));
177
+ const isCredentialObject = typeof inputCredentials === "object" && inputCredentials !== null;
178
+ resolvedCredentials = async (options) => {
179
+ const creds = await boundProvider(options);
180
+ const attributedCreds = creds;
181
+ if (isCredentialObject && (!attributedCreds.$source || Object.keys(attributedCreds.$source).length === 0)) {
182
+ return client.setCredentialFeature(attributedCreds, "CREDENTIALS_CODE", "e");
183
+ }
184
+ return attributedCreds;
185
+ };
178
186
  resolvedCredentials.memoized = boundProvider.memoized;
179
187
  resolvedCredentials.configBound = boundProvider.configBound;
180
188
  resolvedCredentials.attributed = true;
@@ -389,24 +389,42 @@ class JsonShapeDeserializer extends SerdeContextConfig {
389
389
  const ns = schema.NormalizedSchema.of(schema$1);
390
390
  if (isObject) {
391
391
  if (ns.isStructSchema()) {
392
+ const record = value;
392
393
  const union = ns.isUnionSchema();
393
394
  const out = {};
395
+ let nameMap = void 0;
396
+ const { jsonName } = this.settings;
397
+ if (jsonName) {
398
+ nameMap = {};
399
+ }
394
400
  let unionSerde;
395
401
  if (union) {
396
- unionSerde = new UnionSerde(value, out);
402
+ unionSerde = new UnionSerde(record, out);
397
403
  }
398
- for (const [memberName, memberSchema] of deserializingStructIterator(ns, value, this.settings.jsonName ? "jsonName" : false)) {
399
- const fromKey = this.settings.jsonName ? memberSchema.getMergedTraits().jsonName ?? memberName : memberName;
404
+ for (const [memberName, memberSchema] of deserializingStructIterator(ns, record, jsonName ? "jsonName" : false)) {
405
+ let fromKey = memberName;
406
+ if (jsonName) {
407
+ fromKey = memberSchema.getMergedTraits().jsonName ?? fromKey;
408
+ nameMap[fromKey] = memberName;
409
+ }
400
410
  if (union) {
401
411
  unionSerde.mark(fromKey);
402
412
  }
403
- if (value[fromKey] != null) {
404
- out[memberName] = this._read(memberSchema, value[fromKey]);
413
+ if (record[fromKey] != null) {
414
+ out[memberName] = this._read(memberSchema, record[fromKey]);
405
415
  }
406
416
  }
407
417
  if (union) {
408
418
  unionSerde.writeUnknown();
409
419
  }
420
+ else if (typeof record.__type === "string") {
421
+ for (const [k, v] of Object.entries(record)) {
422
+ const t = jsonName ? nameMap[k] ?? k : k;
423
+ if (!(t in out)) {
424
+ out[t] = v;
425
+ }
426
+ }
427
+ }
410
428
  return out;
411
429
  }
412
430
  if (Array.isArray(value) && ns.isListSchema()) {
@@ -585,22 +603,39 @@ class JsonShapeSerializer extends SerdeContextConfig {
585
603
  const ns = schema.NormalizedSchema.of(schema$1);
586
604
  if (isObject) {
587
605
  if (ns.isStructSchema()) {
606
+ const record = value;
588
607
  const out = {};
589
- for (const [memberName, memberSchema] of serializingStructIterator(ns, value)) {
590
- const serializableValue = this._write(memberSchema, value[memberName], ns);
608
+ const { jsonName } = this.settings;
609
+ let nameMap = void 0;
610
+ if (jsonName) {
611
+ nameMap = {};
612
+ }
613
+ for (const [memberName, memberSchema] of serializingStructIterator(ns, record)) {
614
+ const serializableValue = this._write(memberSchema, record[memberName], ns);
591
615
  if (serializableValue !== undefined) {
592
- const jsonName = memberSchema.getMergedTraits().jsonName;
593
- const targetKey = this.settings.jsonName ? jsonName ?? memberName : memberName;
616
+ let targetKey = memberName;
617
+ if (jsonName) {
618
+ targetKey = memberSchema.getMergedTraits().jsonName ?? memberName;
619
+ nameMap[memberName] = targetKey;
620
+ }
594
621
  out[targetKey] = serializableValue;
595
622
  }
596
623
  }
597
624
  if (ns.isUnionSchema() && Object.keys(out).length === 0) {
598
- const { $unknown } = value;
625
+ const { $unknown } = record;
599
626
  if (Array.isArray($unknown)) {
600
627
  const [k, v] = $unknown;
601
628
  out[k] = this._write(15, v);
602
629
  }
603
630
  }
631
+ else if (typeof record.__type === "string") {
632
+ for (const [k, v] of Object.entries(record)) {
633
+ const targetKey = jsonName ? nameMap[k] ?? k : k;
634
+ if (!(targetKey in out)) {
635
+ out[targetKey] = this._write(15, v);
636
+ }
637
+ }
638
+ }
604
639
  return out;
605
640
  }
606
641
  if (Array.isArray(value) && ns.isListSchema()) {
@@ -17,7 +17,15 @@ export const resolveAwsSdkSigV4Config = (config) => {
17
17
  });
18
18
  const boundProvider = bindCallerConfig(config, memoizedProvider);
19
19
  if (isUserSupplied && !boundProvider.attributed) {
20
- resolvedCredentials = async (options) => boundProvider(options).then((creds) => setCredentialFeature(creds, "CREDENTIALS_CODE", "e"));
20
+ const isCredentialObject = typeof inputCredentials === "object" && inputCredentials !== null;
21
+ resolvedCredentials = async (options) => {
22
+ const creds = await boundProvider(options);
23
+ const attributedCreds = creds;
24
+ if (isCredentialObject && (!attributedCreds.$source || Object.keys(attributedCreds.$source).length === 0)) {
25
+ return setCredentialFeature(attributedCreds, "CREDENTIALS_CODE", "e");
26
+ }
27
+ return attributedCreds;
28
+ };
21
29
  resolvedCredentials.memoized = boundProvider.memoized;
22
30
  resolvedCredentials.configBound = boundProvider.configBound;
23
31
  resolvedCredentials.attributed = true;
@@ -24,24 +24,42 @@ export class JsonShapeDeserializer extends SerdeContextConfig {
24
24
  const ns = NormalizedSchema.of(schema);
25
25
  if (isObject) {
26
26
  if (ns.isStructSchema()) {
27
+ const record = value;
27
28
  const union = ns.isUnionSchema();
28
29
  const out = {};
30
+ let nameMap = void 0;
31
+ const { jsonName } = this.settings;
32
+ if (jsonName) {
33
+ nameMap = {};
34
+ }
29
35
  let unionSerde;
30
36
  if (union) {
31
- unionSerde = new UnionSerde(value, out);
37
+ unionSerde = new UnionSerde(record, out);
32
38
  }
33
- for (const [memberName, memberSchema] of deserializingStructIterator(ns, value, this.settings.jsonName ? "jsonName" : false)) {
34
- const fromKey = this.settings.jsonName ? memberSchema.getMergedTraits().jsonName ?? memberName : memberName;
39
+ for (const [memberName, memberSchema] of deserializingStructIterator(ns, record, jsonName ? "jsonName" : false)) {
40
+ let fromKey = memberName;
41
+ if (jsonName) {
42
+ fromKey = memberSchema.getMergedTraits().jsonName ?? fromKey;
43
+ nameMap[fromKey] = memberName;
44
+ }
35
45
  if (union) {
36
46
  unionSerde.mark(fromKey);
37
47
  }
38
- if (value[fromKey] != null) {
39
- out[memberName] = this._read(memberSchema, value[fromKey]);
48
+ if (record[fromKey] != null) {
49
+ out[memberName] = this._read(memberSchema, record[fromKey]);
40
50
  }
41
51
  }
42
52
  if (union) {
43
53
  unionSerde.writeUnknown();
44
54
  }
55
+ else if (typeof record.__type === "string") {
56
+ for (const [k, v] of Object.entries(record)) {
57
+ const t = jsonName ? nameMap[k] ?? k : k;
58
+ if (!(t in out)) {
59
+ out[t] = v;
60
+ }
61
+ }
62
+ }
45
63
  return out;
46
64
  }
47
65
  if (Array.isArray(value) && ns.isListSchema()) {
@@ -42,22 +42,39 @@ export class JsonShapeSerializer extends SerdeContextConfig {
42
42
  const ns = NormalizedSchema.of(schema);
43
43
  if (isObject) {
44
44
  if (ns.isStructSchema()) {
45
+ const record = value;
45
46
  const out = {};
46
- for (const [memberName, memberSchema] of serializingStructIterator(ns, value)) {
47
- const serializableValue = this._write(memberSchema, value[memberName], ns);
47
+ const { jsonName } = this.settings;
48
+ let nameMap = void 0;
49
+ if (jsonName) {
50
+ nameMap = {};
51
+ }
52
+ for (const [memberName, memberSchema] of serializingStructIterator(ns, record)) {
53
+ const serializableValue = this._write(memberSchema, record[memberName], ns);
48
54
  if (serializableValue !== undefined) {
49
- const jsonName = memberSchema.getMergedTraits().jsonName;
50
- const targetKey = this.settings.jsonName ? jsonName ?? memberName : memberName;
55
+ let targetKey = memberName;
56
+ if (jsonName) {
57
+ targetKey = memberSchema.getMergedTraits().jsonName ?? memberName;
58
+ nameMap[memberName] = targetKey;
59
+ }
51
60
  out[targetKey] = serializableValue;
52
61
  }
53
62
  }
54
63
  if (ns.isUnionSchema() && Object.keys(out).length === 0) {
55
- const { $unknown } = value;
64
+ const { $unknown } = record;
56
65
  if (Array.isArray($unknown)) {
57
66
  const [k, v] = $unknown;
58
67
  out[k] = this._write(15, v);
59
68
  }
60
69
  }
70
+ else if (typeof record.__type === "string") {
71
+ for (const [k, v] of Object.entries(record)) {
72
+ const targetKey = jsonName ? nameMap[k] ?? k : k;
73
+ if (!(targetKey in out)) {
74
+ out[targetKey] = this._write(15, v);
75
+ }
76
+ }
77
+ }
61
78
  return out;
62
79
  }
63
80
  if (Array.isArray(value) && ns.isListSchema()) {
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@aws-sdk/core",
3
- "version": "3.957.0",
3
+ "version": "3.970.0",
4
4
  "description": "Core functions & classes shared by multiple AWS SDK clients.",
5
5
  "scripts": {
6
- "build": "yarn lint && concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
6
+ "build": "yarn lint && concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs",
7
7
  "build:cjs": "node ../../scripts/compilation/inline core && rimraf ./dist-cjs/api-extractor-type-index.js",
8
8
  "build:es": "tsc -p tsconfig.es.json && rimraf ./dist-es/api-extractor-type-index.js",
9
9
  "build:include:deps": "yarn g:turbo run build -F=\"$npm_package_name\"",
@@ -81,17 +81,17 @@
81
81
  },
82
82
  "license": "Apache-2.0",
83
83
  "dependencies": {
84
- "@aws-sdk/types": "3.957.0",
85
- "@aws-sdk/xml-builder": "3.957.0",
86
- "@smithy/core": "^3.20.0",
87
- "@smithy/node-config-provider": "^4.3.7",
88
- "@smithy/property-provider": "^4.2.7",
89
- "@smithy/protocol-http": "^5.3.7",
90
- "@smithy/signature-v4": "^5.3.7",
91
- "@smithy/smithy-client": "^4.10.2",
92
- "@smithy/types": "^4.11.0",
84
+ "@aws-sdk/types": "3.969.0",
85
+ "@aws-sdk/xml-builder": "3.969.0",
86
+ "@smithy/core": "^3.20.6",
87
+ "@smithy/node-config-provider": "^4.3.8",
88
+ "@smithy/property-provider": "^4.2.8",
89
+ "@smithy/protocol-http": "^5.3.8",
90
+ "@smithy/signature-v4": "^5.3.8",
91
+ "@smithy/smithy-client": "^4.10.8",
92
+ "@smithy/types": "^4.12.0",
93
93
  "@smithy/util-base64": "^4.3.0",
94
- "@smithy/util-middleware": "^4.2.7",
94
+ "@smithy/util-middleware": "^4.2.8",
95
95
  "@smithy/util-utf8": "^4.2.0",
96
96
  "tslib": "^2.6.2"
97
97
  },
@@ -99,11 +99,11 @@
99
99
  "@tsconfig/recommended": "1.0.1",
100
100
  "concurrently": "7.0.0",
101
101
  "downlevel-dts": "0.10.1",
102
- "rimraf": "3.0.2",
102
+ "rimraf": "5.0.10",
103
103
  "typescript": "~5.8.3"
104
104
  },
105
105
  "engines": {
106
- "node": ">=18.0.0"
106
+ "node": ">=20.0.0"
107
107
  },
108
108
  "typesVersions": {
109
109
  "<4.0": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-env",
3
- "version": "3.957.0",
3
+ "version": "3.970.0",
4
4
  "description": "AWS credential provider that sources credentials from known environment variables",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -26,23 +26,23 @@
26
26
  },
27
27
  "license": "Apache-2.0",
28
28
  "dependencies": {
29
- "@aws-sdk/core": "3.957.0",
30
- "@aws-sdk/types": "3.957.0",
31
- "@smithy/property-provider": "^4.2.7",
32
- "@smithy/types": "^4.11.0",
29
+ "@aws-sdk/core": "3.970.0",
30
+ "@aws-sdk/types": "3.969.0",
31
+ "@smithy/property-provider": "^4.2.8",
32
+ "@smithy/types": "^4.12.0",
33
33
  "tslib": "^2.6.2"
34
34
  },
35
35
  "devDependencies": {
36
36
  "@tsconfig/recommended": "1.0.1",
37
- "@types/node": "^18.19.69",
37
+ "@types/node": "^20.14.8",
38
38
  "concurrently": "7.0.0",
39
39
  "downlevel-dts": "0.10.1",
40
- "rimraf": "3.0.2",
40
+ "rimraf": "5.0.10",
41
41
  "typescript": "~5.8.3"
42
42
  },
43
43
  "types": "./dist-types/index.d.ts",
44
44
  "engines": {
45
- "node": ">=18.0.0"
45
+ "node": ">=20.0.0"
46
46
  },
47
47
  "typesVersions": {
48
48
  "<4.0": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-http",
3
- "version": "3.957.0",
3
+ "version": "3.970.0",
4
4
  "description": "AWS credential provider for containers and HTTP sources",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -28,28 +28,28 @@
28
28
  },
29
29
  "license": "Apache-2.0",
30
30
  "dependencies": {
31
- "@aws-sdk/core": "3.957.0",
32
- "@aws-sdk/types": "3.957.0",
33
- "@smithy/fetch-http-handler": "^5.3.8",
34
- "@smithy/node-http-handler": "^4.4.7",
35
- "@smithy/property-provider": "^4.2.7",
36
- "@smithy/protocol-http": "^5.3.7",
37
- "@smithy/smithy-client": "^4.10.2",
38
- "@smithy/types": "^4.11.0",
39
- "@smithy/util-stream": "^4.5.8",
31
+ "@aws-sdk/core": "3.970.0",
32
+ "@aws-sdk/types": "3.969.0",
33
+ "@smithy/fetch-http-handler": "^5.3.9",
34
+ "@smithy/node-http-handler": "^4.4.8",
35
+ "@smithy/property-provider": "^4.2.8",
36
+ "@smithy/protocol-http": "^5.3.8",
37
+ "@smithy/smithy-client": "^4.10.8",
38
+ "@smithy/types": "^4.12.0",
39
+ "@smithy/util-stream": "^4.5.10",
40
40
  "tslib": "^2.6.2"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@tsconfig/recommended": "1.0.1",
44
- "@types/node": "^18.19.69",
44
+ "@types/node": "^20.14.8",
45
45
  "concurrently": "7.0.0",
46
46
  "downlevel-dts": "0.10.1",
47
- "rimraf": "3.0.2",
47
+ "rimraf": "5.0.10",
48
48
  "typescript": "~5.8.3"
49
49
  },
50
50
  "types": "./dist-types/index.d.ts",
51
51
  "engines": {
52
- "node": ">=18.0.0"
52
+ "node": ">=20.0.0"
53
53
  },
54
54
  "typesVersions": {
55
55
  "<4.0": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-ini",
3
- "version": "3.962.0",
3
+ "version": "3.971.0",
4
4
  "description": "AWS credential provider that sources credentials from ~/.aws/credentials and ~/.aws/config",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -28,32 +28,32 @@
28
28
  },
29
29
  "license": "Apache-2.0",
30
30
  "dependencies": {
31
- "@aws-sdk/core": "3.957.0",
32
- "@aws-sdk/credential-provider-env": "3.957.0",
33
- "@aws-sdk/credential-provider-http": "3.957.0",
34
- "@aws-sdk/credential-provider-login": "3.962.0",
35
- "@aws-sdk/credential-provider-process": "3.957.0",
36
- "@aws-sdk/credential-provider-sso": "3.958.0",
37
- "@aws-sdk/credential-provider-web-identity": "3.958.0",
38
- "@aws-sdk/nested-clients": "3.958.0",
39
- "@aws-sdk/types": "3.957.0",
40
- "@smithy/credential-provider-imds": "^4.2.7",
41
- "@smithy/property-provider": "^4.2.7",
42
- "@smithy/shared-ini-file-loader": "^4.4.2",
43
- "@smithy/types": "^4.11.0",
31
+ "@aws-sdk/core": "3.970.0",
32
+ "@aws-sdk/credential-provider-env": "3.970.0",
33
+ "@aws-sdk/credential-provider-http": "3.970.0",
34
+ "@aws-sdk/credential-provider-login": "3.971.0",
35
+ "@aws-sdk/credential-provider-process": "3.970.0",
36
+ "@aws-sdk/credential-provider-sso": "3.971.0",
37
+ "@aws-sdk/credential-provider-web-identity": "3.971.0",
38
+ "@aws-sdk/nested-clients": "3.971.0",
39
+ "@aws-sdk/types": "3.969.0",
40
+ "@smithy/credential-provider-imds": "^4.2.8",
41
+ "@smithy/property-provider": "^4.2.8",
42
+ "@smithy/shared-ini-file-loader": "^4.4.3",
43
+ "@smithy/types": "^4.12.0",
44
44
  "tslib": "^2.6.2"
45
45
  },
46
46
  "devDependencies": {
47
47
  "@tsconfig/recommended": "1.0.1",
48
- "@types/node": "^18.19.69",
48
+ "@types/node": "^20.14.8",
49
49
  "concurrently": "7.0.0",
50
50
  "downlevel-dts": "0.10.1",
51
- "rimraf": "3.0.2",
51
+ "rimraf": "5.0.10",
52
52
  "typescript": "~5.8.3"
53
53
  },
54
54
  "types": "./dist-types/index.d.ts",
55
55
  "engines": {
56
- "node": ">=18.0.0"
56
+ "node": ">=20.0.0"
57
57
  },
58
58
  "typesVersions": {
59
59
  "<4.0": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-login",
3
- "version": "3.962.0",
3
+ "version": "3.971.0",
4
4
  "description": "AWS credential provider that sources credentials from aws login cached tokens",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -28,26 +28,26 @@
28
28
  },
29
29
  "license": "Apache-2.0",
30
30
  "dependencies": {
31
- "@aws-sdk/core": "3.957.0",
32
- "@aws-sdk/nested-clients": "3.958.0",
33
- "@aws-sdk/types": "3.957.0",
34
- "@smithy/property-provider": "^4.2.7",
35
- "@smithy/protocol-http": "^5.3.7",
36
- "@smithy/shared-ini-file-loader": "^4.4.2",
37
- "@smithy/types": "^4.11.0",
31
+ "@aws-sdk/core": "3.970.0",
32
+ "@aws-sdk/nested-clients": "3.971.0",
33
+ "@aws-sdk/types": "3.969.0",
34
+ "@smithy/property-provider": "^4.2.8",
35
+ "@smithy/protocol-http": "^5.3.8",
36
+ "@smithy/shared-ini-file-loader": "^4.4.3",
37
+ "@smithy/types": "^4.12.0",
38
38
  "tslib": "^2.6.2"
39
39
  },
40
40
  "devDependencies": {
41
41
  "@tsconfig/recommended": "1.0.1",
42
- "@types/node": "^18.19.69",
42
+ "@types/node": "^20.14.8",
43
43
  "concurrently": "7.0.0",
44
44
  "downlevel-dts": "0.10.1",
45
- "rimraf": "3.0.2",
45
+ "rimraf": "5.0.10",
46
46
  "typescript": "~5.8.3"
47
47
  },
48
48
  "types": "./dist-types/index.d.ts",
49
49
  "engines": {
50
- "node": ">=18.0.0"
50
+ "node": ">=20.0.0"
51
51
  },
52
52
  "typesVersions": {
53
53
  "<4.0": {
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-node",
3
- "version": "3.962.0",
3
+ "version": "3.971.0",
4
4
  "description": "AWS credential provider that sources credentials from a Node.JS environment. ",
5
5
  "engines": {
6
- "node": ">=18.0.0"
6
+ "node": ">=20.0.0"
7
7
  },
8
8
  "main": "./dist-cjs/index.js",
9
9
  "module": "./dist-es/index.js",
@@ -31,25 +31,25 @@
31
31
  },
32
32
  "license": "Apache-2.0",
33
33
  "dependencies": {
34
- "@aws-sdk/credential-provider-env": "3.957.0",
35
- "@aws-sdk/credential-provider-http": "3.957.0",
36
- "@aws-sdk/credential-provider-ini": "3.962.0",
37
- "@aws-sdk/credential-provider-process": "3.957.0",
38
- "@aws-sdk/credential-provider-sso": "3.958.0",
39
- "@aws-sdk/credential-provider-web-identity": "3.958.0",
40
- "@aws-sdk/types": "3.957.0",
41
- "@smithy/credential-provider-imds": "^4.2.7",
42
- "@smithy/property-provider": "^4.2.7",
43
- "@smithy/shared-ini-file-loader": "^4.4.2",
44
- "@smithy/types": "^4.11.0",
34
+ "@aws-sdk/credential-provider-env": "3.970.0",
35
+ "@aws-sdk/credential-provider-http": "3.970.0",
36
+ "@aws-sdk/credential-provider-ini": "3.971.0",
37
+ "@aws-sdk/credential-provider-process": "3.970.0",
38
+ "@aws-sdk/credential-provider-sso": "3.971.0",
39
+ "@aws-sdk/credential-provider-web-identity": "3.971.0",
40
+ "@aws-sdk/types": "3.969.0",
41
+ "@smithy/credential-provider-imds": "^4.2.8",
42
+ "@smithy/property-provider": "^4.2.8",
43
+ "@smithy/shared-ini-file-loader": "^4.4.3",
44
+ "@smithy/types": "^4.12.0",
45
45
  "tslib": "^2.6.2"
46
46
  },
47
47
  "devDependencies": {
48
48
  "@tsconfig/recommended": "1.0.1",
49
- "@types/node": "^18.19.69",
49
+ "@types/node": "^20.14.8",
50
50
  "concurrently": "7.0.0",
51
51
  "downlevel-dts": "0.10.1",
52
- "rimraf": "3.0.2",
52
+ "rimraf": "5.0.10",
53
53
  "typescript": "~5.8.3"
54
54
  },
55
55
  "types": "./dist-types/index.d.ts",