@aws-sdk/client-savingsplans 3.476.0 → 3.477.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.
@@ -1,17 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.de_UntagResourceCommand = exports.de_TagResourceCommand = exports.de_ListTagsForResourceCommand = exports.de_DescribeSavingsPlansOfferingsCommand = exports.de_DescribeSavingsPlansOfferingRatesCommand = exports.de_DescribeSavingsPlansCommand = exports.de_DescribeSavingsPlanRatesCommand = exports.de_DeleteQueuedSavingsPlanCommand = exports.de_CreateSavingsPlanCommand = exports.se_UntagResourceCommand = exports.se_TagResourceCommand = exports.se_ListTagsForResourceCommand = exports.se_DescribeSavingsPlansOfferingsCommand = exports.se_DescribeSavingsPlansOfferingRatesCommand = exports.se_DescribeSavingsPlansCommand = exports.se_DescribeSavingsPlanRatesCommand = exports.se_DeleteQueuedSavingsPlanCommand = exports.se_CreateSavingsPlanCommand = void 0;
4
- const protocol_http_1 = require("@smithy/protocol-http");
4
+ const core_1 = require("@smithy/core");
5
5
  const smithy_client_1 = require("@smithy/smithy-client");
6
6
  const uuid_1 = require("uuid");
7
7
  const models_0_1 = require("../models/models_0");
8
8
  const SavingsplansServiceException_1 = require("../models/SavingsplansServiceException");
9
9
  const se_CreateSavingsPlanCommand = async (input, context) => {
10
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
10
+ const b = (0, core_1.requestBuilder)(input, context);
11
11
  const headers = {
12
12
  "content-type": "application/json",
13
13
  };
14
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/CreateSavingsPlan";
14
+ b.bp("/CreateSavingsPlan");
15
15
  let body;
16
16
  body = JSON.stringify((0, smithy_client_1.take)(input, {
17
17
  clientToken: [true, (_) => _ ?? (0, uuid_1.v4)()],
@@ -21,44 +21,30 @@ const se_CreateSavingsPlanCommand = async (input, context) => {
21
21
  tags: (_) => (0, smithy_client_1._json)(_),
22
22
  upfrontPaymentAmount: [],
23
23
  }));
24
- return new protocol_http_1.HttpRequest({
25
- protocol,
26
- hostname,
27
- port,
28
- method: "POST",
29
- headers,
30
- path: resolvedPath,
31
- body,
32
- });
24
+ b.m("POST").h(headers).b(body);
25
+ return b.build();
33
26
  };
34
27
  exports.se_CreateSavingsPlanCommand = se_CreateSavingsPlanCommand;
35
28
  const se_DeleteQueuedSavingsPlanCommand = async (input, context) => {
36
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
29
+ const b = (0, core_1.requestBuilder)(input, context);
37
30
  const headers = {
38
31
  "content-type": "application/json",
39
32
  };
40
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DeleteQueuedSavingsPlan";
33
+ b.bp("/DeleteQueuedSavingsPlan");
41
34
  let body;
42
35
  body = JSON.stringify((0, smithy_client_1.take)(input, {
43
36
  savingsPlanId: [],
44
37
  }));
45
- return new protocol_http_1.HttpRequest({
46
- protocol,
47
- hostname,
48
- port,
49
- method: "POST",
50
- headers,
51
- path: resolvedPath,
52
- body,
53
- });
38
+ b.m("POST").h(headers).b(body);
39
+ return b.build();
54
40
  };
55
41
  exports.se_DeleteQueuedSavingsPlanCommand = se_DeleteQueuedSavingsPlanCommand;
56
42
  const se_DescribeSavingsPlanRatesCommand = async (input, context) => {
57
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
43
+ const b = (0, core_1.requestBuilder)(input, context);
58
44
  const headers = {
59
45
  "content-type": "application/json",
60
46
  };
61
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DescribeSavingsPlanRates";
47
+ b.bp("/DescribeSavingsPlanRates");
62
48
  let body;
63
49
  body = JSON.stringify((0, smithy_client_1.take)(input, {
64
50
  filters: (_) => (0, smithy_client_1._json)(_),
@@ -66,23 +52,16 @@ const se_DescribeSavingsPlanRatesCommand = async (input, context) => {
66
52
  nextToken: [],
67
53
  savingsPlanId: [],
68
54
  }));
69
- return new protocol_http_1.HttpRequest({
70
- protocol,
71
- hostname,
72
- port,
73
- method: "POST",
74
- headers,
75
- path: resolvedPath,
76
- body,
77
- });
55
+ b.m("POST").h(headers).b(body);
56
+ return b.build();
78
57
  };
79
58
  exports.se_DescribeSavingsPlanRatesCommand = se_DescribeSavingsPlanRatesCommand;
80
59
  const se_DescribeSavingsPlansCommand = async (input, context) => {
81
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
60
+ const b = (0, core_1.requestBuilder)(input, context);
82
61
  const headers = {
83
62
  "content-type": "application/json",
84
63
  };
85
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DescribeSavingsPlans";
64
+ b.bp("/DescribeSavingsPlans");
86
65
  let body;
87
66
  body = JSON.stringify((0, smithy_client_1.take)(input, {
88
67
  filters: (_) => (0, smithy_client_1._json)(_),
@@ -92,23 +71,16 @@ const se_DescribeSavingsPlansCommand = async (input, context) => {
92
71
  savingsPlanIds: (_) => (0, smithy_client_1._json)(_),
93
72
  states: (_) => (0, smithy_client_1._json)(_),
94
73
  }));
95
- return new protocol_http_1.HttpRequest({
96
- protocol,
97
- hostname,
98
- port,
99
- method: "POST",
100
- headers,
101
- path: resolvedPath,
102
- body,
103
- });
74
+ b.m("POST").h(headers).b(body);
75
+ return b.build();
104
76
  };
105
77
  exports.se_DescribeSavingsPlansCommand = se_DescribeSavingsPlansCommand;
106
78
  const se_DescribeSavingsPlansOfferingRatesCommand = async (input, context) => {
107
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
79
+ const b = (0, core_1.requestBuilder)(input, context);
108
80
  const headers = {
109
81
  "content-type": "application/json",
110
82
  };
111
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DescribeSavingsPlansOfferingRates";
83
+ b.bp("/DescribeSavingsPlansOfferingRates");
112
84
  let body;
113
85
  body = JSON.stringify((0, smithy_client_1.take)(input, {
114
86
  filters: (_) => (0, smithy_client_1._json)(_),
@@ -122,23 +94,16 @@ const se_DescribeSavingsPlansOfferingRatesCommand = async (input, context) => {
122
94
  serviceCodes: (_) => (0, smithy_client_1._json)(_),
123
95
  usageTypes: (_) => (0, smithy_client_1._json)(_),
124
96
  }));
125
- return new protocol_http_1.HttpRequest({
126
- protocol,
127
- hostname,
128
- port,
129
- method: "POST",
130
- headers,
131
- path: resolvedPath,
132
- body,
133
- });
97
+ b.m("POST").h(headers).b(body);
98
+ return b.build();
134
99
  };
135
100
  exports.se_DescribeSavingsPlansOfferingRatesCommand = se_DescribeSavingsPlansOfferingRatesCommand;
136
101
  const se_DescribeSavingsPlansOfferingsCommand = async (input, context) => {
137
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
102
+ const b = (0, core_1.requestBuilder)(input, context);
138
103
  const headers = {
139
104
  "content-type": "application/json",
140
105
  };
141
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DescribeSavingsPlansOfferings";
106
+ b.bp("/DescribeSavingsPlansOfferings");
142
107
  let body;
143
108
  body = JSON.stringify((0, smithy_client_1.take)(input, {
144
109
  currencies: (_) => (0, smithy_client_1._json)(_),
@@ -155,80 +120,52 @@ const se_DescribeSavingsPlansOfferingsCommand = async (input, context) => {
155
120
  serviceCodes: (_) => (0, smithy_client_1._json)(_),
156
121
  usageTypes: (_) => (0, smithy_client_1._json)(_),
157
122
  }));
158
- return new protocol_http_1.HttpRequest({
159
- protocol,
160
- hostname,
161
- port,
162
- method: "POST",
163
- headers,
164
- path: resolvedPath,
165
- body,
166
- });
123
+ b.m("POST").h(headers).b(body);
124
+ return b.build();
167
125
  };
168
126
  exports.se_DescribeSavingsPlansOfferingsCommand = se_DescribeSavingsPlansOfferingsCommand;
169
127
  const se_ListTagsForResourceCommand = async (input, context) => {
170
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
128
+ const b = (0, core_1.requestBuilder)(input, context);
171
129
  const headers = {
172
130
  "content-type": "application/json",
173
131
  };
174
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/ListTagsForResource";
132
+ b.bp("/ListTagsForResource");
175
133
  let body;
176
134
  body = JSON.stringify((0, smithy_client_1.take)(input, {
177
135
  resourceArn: [],
178
136
  }));
179
- return new protocol_http_1.HttpRequest({
180
- protocol,
181
- hostname,
182
- port,
183
- method: "POST",
184
- headers,
185
- path: resolvedPath,
186
- body,
187
- });
137
+ b.m("POST").h(headers).b(body);
138
+ return b.build();
188
139
  };
189
140
  exports.se_ListTagsForResourceCommand = se_ListTagsForResourceCommand;
190
141
  const se_TagResourceCommand = async (input, context) => {
191
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
142
+ const b = (0, core_1.requestBuilder)(input, context);
192
143
  const headers = {
193
144
  "content-type": "application/json",
194
145
  };
195
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/TagResource";
146
+ b.bp("/TagResource");
196
147
  let body;
197
148
  body = JSON.stringify((0, smithy_client_1.take)(input, {
198
149
  resourceArn: [],
199
150
  tags: (_) => (0, smithy_client_1._json)(_),
200
151
  }));
201
- return new protocol_http_1.HttpRequest({
202
- protocol,
203
- hostname,
204
- port,
205
- method: "POST",
206
- headers,
207
- path: resolvedPath,
208
- body,
209
- });
152
+ b.m("POST").h(headers).b(body);
153
+ return b.build();
210
154
  };
211
155
  exports.se_TagResourceCommand = se_TagResourceCommand;
212
156
  const se_UntagResourceCommand = async (input, context) => {
213
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
157
+ const b = (0, core_1.requestBuilder)(input, context);
214
158
  const headers = {
215
159
  "content-type": "application/json",
216
160
  };
217
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/UntagResource";
161
+ b.bp("/UntagResource");
218
162
  let body;
219
163
  body = JSON.stringify((0, smithy_client_1.take)(input, {
220
164
  resourceArn: [],
221
165
  tagKeys: (_) => (0, smithy_client_1._json)(_),
222
166
  }));
223
- return new protocol_http_1.HttpRequest({
224
- protocol,
225
- hostname,
226
- port,
227
- method: "POST",
228
- headers,
229
- path: resolvedPath,
230
- body,
231
- });
167
+ b.m("POST").h(headers).b(body);
168
+ return b.build();
232
169
  };
233
170
  exports.se_UntagResourceCommand = se_UntagResourceCommand;
234
171
  const de_CreateSavingsPlanCommand = async (output, context) => {
@@ -1,14 +1,14 @@
1
- import { HttpRequest as __HttpRequest } from "@smithy/protocol-http";
1
+ import { requestBuilder as rb } from "@smithy/core";
2
2
  import { _json, collectBody, decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, map, take, withBaseException, } from "@smithy/smithy-client";
3
3
  import { v4 as generateIdempotencyToken } from "uuid";
4
4
  import { InternalServerException, ResourceNotFoundException, ServiceQuotaExceededException, ValidationException, } from "../models/models_0";
5
5
  import { SavingsplansServiceException as __BaseException } from "../models/SavingsplansServiceException";
6
6
  export const se_CreateSavingsPlanCommand = async (input, context) => {
7
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
7
+ const b = rb(input, context);
8
8
  const headers = {
9
9
  "content-type": "application/json",
10
10
  };
11
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/CreateSavingsPlan";
11
+ b.bp("/CreateSavingsPlan");
12
12
  let body;
13
13
  body = JSON.stringify(take(input, {
14
14
  clientToken: [true, (_) => _ ?? generateIdempotencyToken()],
@@ -18,42 +18,28 @@ export const se_CreateSavingsPlanCommand = async (input, context) => {
18
18
  tags: (_) => _json(_),
19
19
  upfrontPaymentAmount: [],
20
20
  }));
21
- return new __HttpRequest({
22
- protocol,
23
- hostname,
24
- port,
25
- method: "POST",
26
- headers,
27
- path: resolvedPath,
28
- body,
29
- });
21
+ b.m("POST").h(headers).b(body);
22
+ return b.build();
30
23
  };
31
24
  export const se_DeleteQueuedSavingsPlanCommand = async (input, context) => {
32
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
25
+ const b = rb(input, context);
33
26
  const headers = {
34
27
  "content-type": "application/json",
35
28
  };
36
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DeleteQueuedSavingsPlan";
29
+ b.bp("/DeleteQueuedSavingsPlan");
37
30
  let body;
38
31
  body = JSON.stringify(take(input, {
39
32
  savingsPlanId: [],
40
33
  }));
41
- return new __HttpRequest({
42
- protocol,
43
- hostname,
44
- port,
45
- method: "POST",
46
- headers,
47
- path: resolvedPath,
48
- body,
49
- });
34
+ b.m("POST").h(headers).b(body);
35
+ return b.build();
50
36
  };
51
37
  export const se_DescribeSavingsPlanRatesCommand = async (input, context) => {
52
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
38
+ const b = rb(input, context);
53
39
  const headers = {
54
40
  "content-type": "application/json",
55
41
  };
56
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DescribeSavingsPlanRates";
42
+ b.bp("/DescribeSavingsPlanRates");
57
43
  let body;
58
44
  body = JSON.stringify(take(input, {
59
45
  filters: (_) => _json(_),
@@ -61,22 +47,15 @@ export const se_DescribeSavingsPlanRatesCommand = async (input, context) => {
61
47
  nextToken: [],
62
48
  savingsPlanId: [],
63
49
  }));
64
- return new __HttpRequest({
65
- protocol,
66
- hostname,
67
- port,
68
- method: "POST",
69
- headers,
70
- path: resolvedPath,
71
- body,
72
- });
50
+ b.m("POST").h(headers).b(body);
51
+ return b.build();
73
52
  };
74
53
  export const se_DescribeSavingsPlansCommand = async (input, context) => {
75
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
54
+ const b = rb(input, context);
76
55
  const headers = {
77
56
  "content-type": "application/json",
78
57
  };
79
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DescribeSavingsPlans";
58
+ b.bp("/DescribeSavingsPlans");
80
59
  let body;
81
60
  body = JSON.stringify(take(input, {
82
61
  filters: (_) => _json(_),
@@ -86,22 +65,15 @@ export const se_DescribeSavingsPlansCommand = async (input, context) => {
86
65
  savingsPlanIds: (_) => _json(_),
87
66
  states: (_) => _json(_),
88
67
  }));
89
- return new __HttpRequest({
90
- protocol,
91
- hostname,
92
- port,
93
- method: "POST",
94
- headers,
95
- path: resolvedPath,
96
- body,
97
- });
68
+ b.m("POST").h(headers).b(body);
69
+ return b.build();
98
70
  };
99
71
  export const se_DescribeSavingsPlansOfferingRatesCommand = async (input, context) => {
100
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
72
+ const b = rb(input, context);
101
73
  const headers = {
102
74
  "content-type": "application/json",
103
75
  };
104
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DescribeSavingsPlansOfferingRates";
76
+ b.bp("/DescribeSavingsPlansOfferingRates");
105
77
  let body;
106
78
  body = JSON.stringify(take(input, {
107
79
  filters: (_) => _json(_),
@@ -115,22 +87,15 @@ export const se_DescribeSavingsPlansOfferingRatesCommand = async (input, context
115
87
  serviceCodes: (_) => _json(_),
116
88
  usageTypes: (_) => _json(_),
117
89
  }));
118
- return new __HttpRequest({
119
- protocol,
120
- hostname,
121
- port,
122
- method: "POST",
123
- headers,
124
- path: resolvedPath,
125
- body,
126
- });
90
+ b.m("POST").h(headers).b(body);
91
+ return b.build();
127
92
  };
128
93
  export const se_DescribeSavingsPlansOfferingsCommand = async (input, context) => {
129
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
94
+ const b = rb(input, context);
130
95
  const headers = {
131
96
  "content-type": "application/json",
132
97
  };
133
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/DescribeSavingsPlansOfferings";
98
+ b.bp("/DescribeSavingsPlansOfferings");
134
99
  let body;
135
100
  body = JSON.stringify(take(input, {
136
101
  currencies: (_) => _json(_),
@@ -147,77 +112,49 @@ export const se_DescribeSavingsPlansOfferingsCommand = async (input, context) =>
147
112
  serviceCodes: (_) => _json(_),
148
113
  usageTypes: (_) => _json(_),
149
114
  }));
150
- return new __HttpRequest({
151
- protocol,
152
- hostname,
153
- port,
154
- method: "POST",
155
- headers,
156
- path: resolvedPath,
157
- body,
158
- });
115
+ b.m("POST").h(headers).b(body);
116
+ return b.build();
159
117
  };
160
118
  export const se_ListTagsForResourceCommand = async (input, context) => {
161
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
119
+ const b = rb(input, context);
162
120
  const headers = {
163
121
  "content-type": "application/json",
164
122
  };
165
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/ListTagsForResource";
123
+ b.bp("/ListTagsForResource");
166
124
  let body;
167
125
  body = JSON.stringify(take(input, {
168
126
  resourceArn: [],
169
127
  }));
170
- return new __HttpRequest({
171
- protocol,
172
- hostname,
173
- port,
174
- method: "POST",
175
- headers,
176
- path: resolvedPath,
177
- body,
178
- });
128
+ b.m("POST").h(headers).b(body);
129
+ return b.build();
179
130
  };
180
131
  export const se_TagResourceCommand = async (input, context) => {
181
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
132
+ const b = rb(input, context);
182
133
  const headers = {
183
134
  "content-type": "application/json",
184
135
  };
185
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/TagResource";
136
+ b.bp("/TagResource");
186
137
  let body;
187
138
  body = JSON.stringify(take(input, {
188
139
  resourceArn: [],
189
140
  tags: (_) => _json(_),
190
141
  }));
191
- return new __HttpRequest({
192
- protocol,
193
- hostname,
194
- port,
195
- method: "POST",
196
- headers,
197
- path: resolvedPath,
198
- body,
199
- });
142
+ b.m("POST").h(headers).b(body);
143
+ return b.build();
200
144
  };
201
145
  export const se_UntagResourceCommand = async (input, context) => {
202
- const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
146
+ const b = rb(input, context);
203
147
  const headers = {
204
148
  "content-type": "application/json",
205
149
  };
206
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/UntagResource";
150
+ b.bp("/UntagResource");
207
151
  let body;
208
152
  body = JSON.stringify(take(input, {
209
153
  resourceArn: [],
210
154
  tagKeys: (_) => _json(_),
211
155
  }));
212
- return new __HttpRequest({
213
- protocol,
214
- hostname,
215
- port,
216
- method: "POST",
217
- headers,
218
- path: resolvedPath,
219
- body,
220
- });
156
+ b.m("POST").h(headers).b(body);
157
+ return b.build();
221
158
  };
222
159
  export const de_CreateSavingsPlanCommand = async (output, context) => {
223
160
  if (output.statusCode !== 200 && output.statusCode >= 300) {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-savingsplans",
3
3
  "description": "AWS SDK for JavaScript Savingsplans Client for Node.js, Browser and React Native",
4
- "version": "3.476.0",
4
+ "version": "3.477.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": "3.0.0",
22
22
  "@aws-crypto/sha256-js": "3.0.0",
23
- "@aws-sdk/client-sts": "3.476.0",
24
- "@aws-sdk/core": "3.476.0",
25
- "@aws-sdk/credential-provider-node": "3.476.0",
23
+ "@aws-sdk/client-sts": "3.477.0",
24
+ "@aws-sdk/core": "3.477.0",
25
+ "@aws-sdk/credential-provider-node": "3.477.0",
26
26
  "@aws-sdk/middleware-host-header": "3.468.0",
27
27
  "@aws-sdk/middleware-logger": "3.468.0",
28
28
  "@aws-sdk/middleware-recursion-detection": "3.468.0",
@@ -34,6 +34,7 @@
34
34
  "@aws-sdk/util-user-agent-browser": "3.468.0",
35
35
  "@aws-sdk/util-user-agent-node": "3.470.0",
36
36
  "@smithy/config-resolver": "^2.0.21",
37
+ "@smithy/core": "^1.2.0",
37
38
  "@smithy/fetch-http-handler": "^2.3.1",
38
39
  "@smithy/hash-node": "^2.0.17",
39
40
  "@smithy/invalid-dependency": "^2.0.15",