@aws-sdk/client-textract 3.194.0 → 3.195.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.
Files changed (72) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist-cjs/TextractClient.js +11 -8
  3. package/dist-cjs/commands/AnalyzeDocumentCommand.js +10 -0
  4. package/dist-cjs/commands/AnalyzeExpenseCommand.js +10 -0
  5. package/dist-cjs/commands/AnalyzeIDCommand.js +10 -0
  6. package/dist-cjs/commands/DetectDocumentTextCommand.js +10 -0
  7. package/dist-cjs/commands/GetDocumentAnalysisCommand.js +10 -0
  8. package/dist-cjs/commands/GetDocumentTextDetectionCommand.js +10 -0
  9. package/dist-cjs/commands/GetExpenseAnalysisCommand.js +10 -0
  10. package/dist-cjs/commands/StartDocumentAnalysisCommand.js +10 -0
  11. package/dist-cjs/commands/StartDocumentTextDetectionCommand.js +10 -0
  12. package/dist-cjs/commands/StartExpenseAnalysisCommand.js +10 -0
  13. package/dist-cjs/endpoint/EndpointParameters.js +13 -0
  14. package/dist-cjs/endpoint/endpointResolver.js +12 -0
  15. package/dist-cjs/endpoint/ruleset.js +318 -0
  16. package/dist-cjs/runtimeConfig.shared.js +3 -3
  17. package/dist-es/TextractClient.js +12 -9
  18. package/dist-es/commands/AnalyzeDocumentCommand.js +10 -0
  19. package/dist-es/commands/AnalyzeExpenseCommand.js +10 -0
  20. package/dist-es/commands/AnalyzeIDCommand.js +10 -0
  21. package/dist-es/commands/DetectDocumentTextCommand.js +10 -0
  22. package/dist-es/commands/GetDocumentAnalysisCommand.js +10 -0
  23. package/dist-es/commands/GetDocumentTextDetectionCommand.js +10 -0
  24. package/dist-es/commands/GetExpenseAnalysisCommand.js +10 -0
  25. package/dist-es/commands/StartDocumentAnalysisCommand.js +10 -0
  26. package/dist-es/commands/StartDocumentTextDetectionCommand.js +10 -0
  27. package/dist-es/commands/StartExpenseAnalysisCommand.js +10 -0
  28. package/dist-es/endpoint/EndpointParameters.js +8 -0
  29. package/dist-es/endpoint/endpointResolver.js +8 -0
  30. package/dist-es/endpoint/ruleset.js +315 -0
  31. package/dist-es/runtimeConfig.shared.js +2 -2
  32. package/dist-types/TextractClient.d.ts +6 -9
  33. package/dist-types/commands/AnalyzeDocumentCommand.d.ts +2 -0
  34. package/dist-types/commands/AnalyzeExpenseCommand.d.ts +2 -0
  35. package/dist-types/commands/AnalyzeIDCommand.d.ts +2 -0
  36. package/dist-types/commands/DetectDocumentTextCommand.d.ts +2 -0
  37. package/dist-types/commands/GetDocumentAnalysisCommand.d.ts +2 -0
  38. package/dist-types/commands/GetDocumentTextDetectionCommand.d.ts +2 -0
  39. package/dist-types/commands/GetExpenseAnalysisCommand.d.ts +2 -0
  40. package/dist-types/commands/StartDocumentAnalysisCommand.d.ts +2 -0
  41. package/dist-types/commands/StartDocumentTextDetectionCommand.d.ts +2 -0
  42. package/dist-types/commands/StartExpenseAnalysisCommand.d.ts +2 -0
  43. package/dist-types/endpoint/EndpointParameters.d.ts +19 -0
  44. package/dist-types/endpoint/endpointResolver.d.ts +5 -0
  45. package/dist-types/endpoint/ruleset.d.ts +2 -0
  46. package/dist-types/runtimeConfig.browser.d.ts +4 -2
  47. package/dist-types/runtimeConfig.d.ts +4 -2
  48. package/dist-types/runtimeConfig.native.d.ts +4 -2
  49. package/dist-types/runtimeConfig.shared.d.ts +3 -1
  50. package/dist-types/ts3.4/TextractClient.d.ts +15 -8
  51. package/dist-types/ts3.4/commands/AnalyzeDocumentCommand.d.ts +2 -0
  52. package/dist-types/ts3.4/commands/AnalyzeExpenseCommand.d.ts +2 -0
  53. package/dist-types/ts3.4/commands/AnalyzeIDCommand.d.ts +2 -0
  54. package/dist-types/ts3.4/commands/DetectDocumentTextCommand.d.ts +2 -0
  55. package/dist-types/ts3.4/commands/GetDocumentAnalysisCommand.d.ts +2 -0
  56. package/dist-types/ts3.4/commands/GetDocumentTextDetectionCommand.d.ts +2 -0
  57. package/dist-types/ts3.4/commands/GetExpenseAnalysisCommand.d.ts +2 -0
  58. package/dist-types/ts3.4/commands/StartDocumentAnalysisCommand.d.ts +2 -0
  59. package/dist-types/ts3.4/commands/StartDocumentTextDetectionCommand.d.ts +2 -0
  60. package/dist-types/ts3.4/commands/StartExpenseAnalysisCommand.d.ts +2 -0
  61. package/dist-types/ts3.4/endpoint/EndpointParameters.d.ts +26 -0
  62. package/dist-types/ts3.4/endpoint/endpointResolver.d.ts +8 -0
  63. package/dist-types/ts3.4/endpoint/ruleset.d.ts +2 -0
  64. package/dist-types/ts3.4/runtimeConfig.browser.d.ts +14 -4
  65. package/dist-types/ts3.4/runtimeConfig.d.ts +14 -4
  66. package/dist-types/ts3.4/runtimeConfig.native.d.ts +14 -3
  67. package/dist-types/ts3.4/runtimeConfig.shared.d.ts +6 -1
  68. package/package.json +3 -1
  69. package/dist-cjs/endpoints.js +0 -194
  70. package/dist-es/endpoints.js +0 -190
  71. package/dist-types/endpoints.d.ts +0 -2
  72. package/dist-types/ts3.4/endpoints.d.ts +0 -2
@@ -0,0 +1,318 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ruleSet = void 0;
4
+ exports.ruleSet = {
5
+ version: "1.0",
6
+ parameters: {
7
+ Region: {
8
+ builtIn: "AWS::Region",
9
+ required: false,
10
+ documentation: "The AWS region used to dispatch the request.",
11
+ type: "String",
12
+ },
13
+ UseDualStack: {
14
+ builtIn: "AWS::UseDualStack",
15
+ required: true,
16
+ default: false,
17
+ documentation: "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.",
18
+ type: "Boolean",
19
+ },
20
+ UseFIPS: {
21
+ builtIn: "AWS::UseFIPS",
22
+ required: true,
23
+ default: false,
24
+ documentation: "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.",
25
+ type: "Boolean",
26
+ },
27
+ Endpoint: {
28
+ builtIn: "SDK::Endpoint",
29
+ required: false,
30
+ documentation: "Override the endpoint used to send this request",
31
+ type: "String",
32
+ },
33
+ },
34
+ rules: [
35
+ {
36
+ conditions: [
37
+ {
38
+ fn: "aws.partition",
39
+ argv: [
40
+ {
41
+ ref: "Region",
42
+ },
43
+ ],
44
+ assign: "PartitionResult",
45
+ },
46
+ ],
47
+ type: "tree",
48
+ rules: [
49
+ {
50
+ conditions: [
51
+ {
52
+ fn: "isSet",
53
+ argv: [
54
+ {
55
+ ref: "Endpoint",
56
+ },
57
+ ],
58
+ },
59
+ {
60
+ fn: "parseURL",
61
+ argv: [
62
+ {
63
+ ref: "Endpoint",
64
+ },
65
+ ],
66
+ assign: "url",
67
+ },
68
+ ],
69
+ type: "tree",
70
+ rules: [
71
+ {
72
+ conditions: [
73
+ {
74
+ fn: "booleanEquals",
75
+ argv: [
76
+ {
77
+ ref: "UseFIPS",
78
+ },
79
+ true,
80
+ ],
81
+ },
82
+ ],
83
+ error: "Invalid Configuration: FIPS and custom endpoint are not supported",
84
+ type: "error",
85
+ },
86
+ {
87
+ conditions: [],
88
+ type: "tree",
89
+ rules: [
90
+ {
91
+ conditions: [
92
+ {
93
+ fn: "booleanEquals",
94
+ argv: [
95
+ {
96
+ ref: "UseDualStack",
97
+ },
98
+ true,
99
+ ],
100
+ },
101
+ ],
102
+ error: "Invalid Configuration: Dualstack and custom endpoint are not supported",
103
+ type: "error",
104
+ },
105
+ {
106
+ conditions: [],
107
+ endpoint: {
108
+ url: {
109
+ ref: "Endpoint",
110
+ },
111
+ properties: {},
112
+ headers: {},
113
+ },
114
+ type: "endpoint",
115
+ },
116
+ ],
117
+ },
118
+ ],
119
+ },
120
+ {
121
+ conditions: [
122
+ {
123
+ fn: "booleanEquals",
124
+ argv: [
125
+ {
126
+ ref: "UseFIPS",
127
+ },
128
+ true,
129
+ ],
130
+ },
131
+ {
132
+ fn: "booleanEquals",
133
+ argv: [
134
+ {
135
+ ref: "UseDualStack",
136
+ },
137
+ true,
138
+ ],
139
+ },
140
+ ],
141
+ type: "tree",
142
+ rules: [
143
+ {
144
+ conditions: [
145
+ {
146
+ fn: "booleanEquals",
147
+ argv: [
148
+ true,
149
+ {
150
+ fn: "getAttr",
151
+ argv: [
152
+ {
153
+ ref: "PartitionResult",
154
+ },
155
+ "supportsFIPS",
156
+ ],
157
+ },
158
+ ],
159
+ },
160
+ {
161
+ fn: "booleanEquals",
162
+ argv: [
163
+ true,
164
+ {
165
+ fn: "getAttr",
166
+ argv: [
167
+ {
168
+ ref: "PartitionResult",
169
+ },
170
+ "supportsDualStack",
171
+ ],
172
+ },
173
+ ],
174
+ },
175
+ ],
176
+ type: "tree",
177
+ rules: [
178
+ {
179
+ conditions: [],
180
+ endpoint: {
181
+ url: "https://textract-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",
182
+ properties: {},
183
+ headers: {},
184
+ },
185
+ type: "endpoint",
186
+ },
187
+ ],
188
+ },
189
+ {
190
+ conditions: [],
191
+ error: "FIPS and DualStack are enabled, but this partition does not support one or both",
192
+ type: "error",
193
+ },
194
+ ],
195
+ },
196
+ {
197
+ conditions: [
198
+ {
199
+ fn: "booleanEquals",
200
+ argv: [
201
+ {
202
+ ref: "UseFIPS",
203
+ },
204
+ true,
205
+ ],
206
+ },
207
+ ],
208
+ type: "tree",
209
+ rules: [
210
+ {
211
+ conditions: [
212
+ {
213
+ fn: "booleanEquals",
214
+ argv: [
215
+ true,
216
+ {
217
+ fn: "getAttr",
218
+ argv: [
219
+ {
220
+ ref: "PartitionResult",
221
+ },
222
+ "supportsFIPS",
223
+ ],
224
+ },
225
+ ],
226
+ },
227
+ ],
228
+ type: "tree",
229
+ rules: [
230
+ {
231
+ conditions: [],
232
+ type: "tree",
233
+ rules: [
234
+ {
235
+ conditions: [],
236
+ endpoint: {
237
+ url: "https://textract-fips.{Region}.{PartitionResult#dnsSuffix}",
238
+ properties: {},
239
+ headers: {},
240
+ },
241
+ type: "endpoint",
242
+ },
243
+ ],
244
+ },
245
+ ],
246
+ },
247
+ {
248
+ conditions: [],
249
+ error: "FIPS is enabled but this partition does not support FIPS",
250
+ type: "error",
251
+ },
252
+ ],
253
+ },
254
+ {
255
+ conditions: [
256
+ {
257
+ fn: "booleanEquals",
258
+ argv: [
259
+ {
260
+ ref: "UseDualStack",
261
+ },
262
+ true,
263
+ ],
264
+ },
265
+ ],
266
+ type: "tree",
267
+ rules: [
268
+ {
269
+ conditions: [
270
+ {
271
+ fn: "booleanEquals",
272
+ argv: [
273
+ true,
274
+ {
275
+ fn: "getAttr",
276
+ argv: [
277
+ {
278
+ ref: "PartitionResult",
279
+ },
280
+ "supportsDualStack",
281
+ ],
282
+ },
283
+ ],
284
+ },
285
+ ],
286
+ type: "tree",
287
+ rules: [
288
+ {
289
+ conditions: [],
290
+ endpoint: {
291
+ url: "https://textract.{Region}.{PartitionResult#dualStackDnsSuffix}",
292
+ properties: {},
293
+ headers: {},
294
+ },
295
+ type: "endpoint",
296
+ },
297
+ ],
298
+ },
299
+ {
300
+ conditions: [],
301
+ error: "DualStack is enabled but this partition does not support DualStack",
302
+ type: "error",
303
+ },
304
+ ],
305
+ },
306
+ {
307
+ conditions: [],
308
+ endpoint: {
309
+ url: "https://textract.{Region}.{PartitionResult#dnsSuffix}",
310
+ properties: {},
311
+ headers: {},
312
+ },
313
+ type: "endpoint",
314
+ },
315
+ ],
316
+ },
317
+ ],
318
+ };
@@ -2,14 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getRuntimeConfig = void 0;
4
4
  const url_parser_1 = require("@aws-sdk/url-parser");
5
- const endpoints_1 = require("./endpoints");
5
+ const endpointResolver_1 = require("./endpoint/endpointResolver");
6
6
  const getRuntimeConfig = (config) => {
7
7
  var _a, _b, _c, _d, _e;
8
8
  return ({
9
9
  apiVersion: "2018-06-27",
10
10
  disableHostPrefix: (_a = config === null || config === void 0 ? void 0 : config.disableHostPrefix) !== null && _a !== void 0 ? _a : false,
11
- logger: (_b = config === null || config === void 0 ? void 0 : config.logger) !== null && _b !== void 0 ? _b : {},
12
- regionInfoProvider: (_c = config === null || config === void 0 ? void 0 : config.regionInfoProvider) !== null && _c !== void 0 ? _c : endpoints_1.defaultRegionInfoProvider,
11
+ endpointProvider: (_b = config === null || config === void 0 ? void 0 : config.endpointProvider) !== null && _b !== void 0 ? _b : endpointResolver_1.defaultEndpointResolver,
12
+ logger: (_c = config === null || config === void 0 ? void 0 : config.logger) !== null && _c !== void 0 ? _c : {},
13
13
  serviceId: (_d = config === null || config === void 0 ? void 0 : config.serviceId) !== null && _d !== void 0 ? _d : "Textract",
14
14
  urlParser: (_e = config === null || config === void 0 ? void 0 : config.urlParser) !== null && _e !== void 0 ? _e : url_parser_1.parseUrl,
15
15
  });
@@ -1,5 +1,6 @@
1
- import { resolveEndpointsConfig, resolveRegionConfig, } from "@aws-sdk/config-resolver";
1
+ import { resolveRegionConfig } from "@aws-sdk/config-resolver";
2
2
  import { getContentLengthPlugin } from "@aws-sdk/middleware-content-length";
3
+ import { resolveEndpointConfig } from "@aws-sdk/middleware-endpoint";
3
4
  import { getHostHeaderPlugin, resolveHostHeaderConfig, } from "@aws-sdk/middleware-host-header";
4
5
  import { getLoggerPlugin } from "@aws-sdk/middleware-logger";
5
6
  import { getRecursionDetectionPlugin } from "@aws-sdk/middleware-recursion-detection";
@@ -7,18 +8,20 @@ import { getRetryPlugin, resolveRetryConfig } from "@aws-sdk/middleware-retry";
7
8
  import { getAwsAuthPlugin, resolveAwsAuthConfig, } from "@aws-sdk/middleware-signing";
8
9
  import { getUserAgentPlugin, resolveUserAgentConfig, } from "@aws-sdk/middleware-user-agent";
9
10
  import { Client as __Client, } from "@aws-sdk/smithy-client";
11
+ import { resolveClientEndpointParameters, } from "./endpoint/EndpointParameters";
10
12
  import { getRuntimeConfig as __getRuntimeConfig } from "./runtimeConfig";
11
13
  export class TextractClient extends __Client {
12
14
  constructor(configuration) {
13
15
  const _config_0 = __getRuntimeConfig(configuration);
14
- const _config_1 = resolveRegionConfig(_config_0);
15
- const _config_2 = resolveEndpointsConfig(_config_1);
16
- const _config_3 = resolveRetryConfig(_config_2);
17
- const _config_4 = resolveHostHeaderConfig(_config_3);
18
- const _config_5 = resolveAwsAuthConfig(_config_4);
19
- const _config_6 = resolveUserAgentConfig(_config_5);
20
- super(_config_6);
21
- this.config = _config_6;
16
+ const _config_1 = resolveClientEndpointParameters(_config_0);
17
+ const _config_2 = resolveRegionConfig(_config_1);
18
+ const _config_3 = resolveEndpointConfig(_config_2);
19
+ const _config_4 = resolveRetryConfig(_config_3);
20
+ const _config_5 = resolveHostHeaderConfig(_config_4);
21
+ const _config_6 = resolveAwsAuthConfig(_config_5);
22
+ const _config_7 = resolveUserAgentConfig(_config_6);
23
+ super(_config_7);
24
+ this.config = _config_7;
22
25
  this.middlewareStack.use(getRetryPlugin(this.config));
23
26
  this.middlewareStack.use(getContentLengthPlugin(this.config));
24
27
  this.middlewareStack.use(getHostHeaderPlugin(this.config));
@@ -1,3 +1,4 @@
1
+ import { getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
1
2
  import { getSerdePlugin } from "@aws-sdk/middleware-serde";
2
3
  import { Command as $Command } from "@aws-sdk/smithy-client";
3
4
  import { AnalyzeDocumentRequestFilterSensitiveLog, AnalyzeDocumentResponseFilterSensitiveLog, } from "../models/models_0";
@@ -7,8 +8,17 @@ export class AnalyzeDocumentCommand extends $Command {
7
8
  super();
8
9
  this.input = input;
9
10
  }
11
+ static getEndpointParameterInstructions() {
12
+ return {
13
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
14
+ Endpoint: { type: "builtInParams", name: "endpoint" },
15
+ Region: { type: "builtInParams", name: "region" },
16
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
17
+ };
18
+ }
10
19
  resolveMiddleware(clientStack, configuration, options) {
11
20
  this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
21
+ this.middlewareStack.use(getEndpointPlugin(configuration, AnalyzeDocumentCommand.getEndpointParameterInstructions()));
12
22
  const stack = clientStack.concat(this.middlewareStack);
13
23
  const { logger } = configuration;
14
24
  const clientName = "TextractClient";
@@ -1,3 +1,4 @@
1
+ import { getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
1
2
  import { getSerdePlugin } from "@aws-sdk/middleware-serde";
2
3
  import { Command as $Command } from "@aws-sdk/smithy-client";
3
4
  import { AnalyzeExpenseRequestFilterSensitiveLog, AnalyzeExpenseResponseFilterSensitiveLog, } from "../models/models_0";
@@ -7,8 +8,17 @@ export class AnalyzeExpenseCommand extends $Command {
7
8
  super();
8
9
  this.input = input;
9
10
  }
11
+ static getEndpointParameterInstructions() {
12
+ return {
13
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
14
+ Endpoint: { type: "builtInParams", name: "endpoint" },
15
+ Region: { type: "builtInParams", name: "region" },
16
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
17
+ };
18
+ }
10
19
  resolveMiddleware(clientStack, configuration, options) {
11
20
  this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
21
+ this.middlewareStack.use(getEndpointPlugin(configuration, AnalyzeExpenseCommand.getEndpointParameterInstructions()));
12
22
  const stack = clientStack.concat(this.middlewareStack);
13
23
  const { logger } = configuration;
14
24
  const clientName = "TextractClient";
@@ -1,3 +1,4 @@
1
+ import { getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
1
2
  import { getSerdePlugin } from "@aws-sdk/middleware-serde";
2
3
  import { Command as $Command } from "@aws-sdk/smithy-client";
3
4
  import { AnalyzeIDRequestFilterSensitiveLog, AnalyzeIDResponseFilterSensitiveLog, } from "../models/models_0";
@@ -7,8 +8,17 @@ export class AnalyzeIDCommand extends $Command {
7
8
  super();
8
9
  this.input = input;
9
10
  }
11
+ static getEndpointParameterInstructions() {
12
+ return {
13
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
14
+ Endpoint: { type: "builtInParams", name: "endpoint" },
15
+ Region: { type: "builtInParams", name: "region" },
16
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
17
+ };
18
+ }
10
19
  resolveMiddleware(clientStack, configuration, options) {
11
20
  this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
21
+ this.middlewareStack.use(getEndpointPlugin(configuration, AnalyzeIDCommand.getEndpointParameterInstructions()));
12
22
  const stack = clientStack.concat(this.middlewareStack);
13
23
  const { logger } = configuration;
14
24
  const clientName = "TextractClient";
@@ -1,3 +1,4 @@
1
+ import { getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
1
2
  import { getSerdePlugin } from "@aws-sdk/middleware-serde";
2
3
  import { Command as $Command } from "@aws-sdk/smithy-client";
3
4
  import { DetectDocumentTextRequestFilterSensitiveLog, DetectDocumentTextResponseFilterSensitiveLog, } from "../models/models_0";
@@ -7,8 +8,17 @@ export class DetectDocumentTextCommand extends $Command {
7
8
  super();
8
9
  this.input = input;
9
10
  }
11
+ static getEndpointParameterInstructions() {
12
+ return {
13
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
14
+ Endpoint: { type: "builtInParams", name: "endpoint" },
15
+ Region: { type: "builtInParams", name: "region" },
16
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
17
+ };
18
+ }
10
19
  resolveMiddleware(clientStack, configuration, options) {
11
20
  this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
21
+ this.middlewareStack.use(getEndpointPlugin(configuration, DetectDocumentTextCommand.getEndpointParameterInstructions()));
12
22
  const stack = clientStack.concat(this.middlewareStack);
13
23
  const { logger } = configuration;
14
24
  const clientName = "TextractClient";
@@ -1,3 +1,4 @@
1
+ import { getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
1
2
  import { getSerdePlugin } from "@aws-sdk/middleware-serde";
2
3
  import { Command as $Command } from "@aws-sdk/smithy-client";
3
4
  import { GetDocumentAnalysisRequestFilterSensitiveLog, GetDocumentAnalysisResponseFilterSensitiveLog, } from "../models/models_0";
@@ -7,8 +8,17 @@ export class GetDocumentAnalysisCommand extends $Command {
7
8
  super();
8
9
  this.input = input;
9
10
  }
11
+ static getEndpointParameterInstructions() {
12
+ return {
13
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
14
+ Endpoint: { type: "builtInParams", name: "endpoint" },
15
+ Region: { type: "builtInParams", name: "region" },
16
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
17
+ };
18
+ }
10
19
  resolveMiddleware(clientStack, configuration, options) {
11
20
  this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
21
+ this.middlewareStack.use(getEndpointPlugin(configuration, GetDocumentAnalysisCommand.getEndpointParameterInstructions()));
12
22
  const stack = clientStack.concat(this.middlewareStack);
13
23
  const { logger } = configuration;
14
24
  const clientName = "TextractClient";
@@ -1,3 +1,4 @@
1
+ import { getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
1
2
  import { getSerdePlugin } from "@aws-sdk/middleware-serde";
2
3
  import { Command as $Command } from "@aws-sdk/smithy-client";
3
4
  import { GetDocumentTextDetectionRequestFilterSensitiveLog, GetDocumentTextDetectionResponseFilterSensitiveLog, } from "../models/models_0";
@@ -7,8 +8,17 @@ export class GetDocumentTextDetectionCommand extends $Command {
7
8
  super();
8
9
  this.input = input;
9
10
  }
11
+ static getEndpointParameterInstructions() {
12
+ return {
13
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
14
+ Endpoint: { type: "builtInParams", name: "endpoint" },
15
+ Region: { type: "builtInParams", name: "region" },
16
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
17
+ };
18
+ }
10
19
  resolveMiddleware(clientStack, configuration, options) {
11
20
  this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
21
+ this.middlewareStack.use(getEndpointPlugin(configuration, GetDocumentTextDetectionCommand.getEndpointParameterInstructions()));
12
22
  const stack = clientStack.concat(this.middlewareStack);
13
23
  const { logger } = configuration;
14
24
  const clientName = "TextractClient";
@@ -1,3 +1,4 @@
1
+ import { getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
1
2
  import { getSerdePlugin } from "@aws-sdk/middleware-serde";
2
3
  import { Command as $Command } from "@aws-sdk/smithy-client";
3
4
  import { GetExpenseAnalysisRequestFilterSensitiveLog, GetExpenseAnalysisResponseFilterSensitiveLog, } from "../models/models_0";
@@ -7,8 +8,17 @@ export class GetExpenseAnalysisCommand extends $Command {
7
8
  super();
8
9
  this.input = input;
9
10
  }
11
+ static getEndpointParameterInstructions() {
12
+ return {
13
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
14
+ Endpoint: { type: "builtInParams", name: "endpoint" },
15
+ Region: { type: "builtInParams", name: "region" },
16
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
17
+ };
18
+ }
10
19
  resolveMiddleware(clientStack, configuration, options) {
11
20
  this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
21
+ this.middlewareStack.use(getEndpointPlugin(configuration, GetExpenseAnalysisCommand.getEndpointParameterInstructions()));
12
22
  const stack = clientStack.concat(this.middlewareStack);
13
23
  const { logger } = configuration;
14
24
  const clientName = "TextractClient";
@@ -1,3 +1,4 @@
1
+ import { getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
1
2
  import { getSerdePlugin } from "@aws-sdk/middleware-serde";
2
3
  import { Command as $Command } from "@aws-sdk/smithy-client";
3
4
  import { StartDocumentAnalysisRequestFilterSensitiveLog, StartDocumentAnalysisResponseFilterSensitiveLog, } from "../models/models_0";
@@ -7,8 +8,17 @@ export class StartDocumentAnalysisCommand extends $Command {
7
8
  super();
8
9
  this.input = input;
9
10
  }
11
+ static getEndpointParameterInstructions() {
12
+ return {
13
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
14
+ Endpoint: { type: "builtInParams", name: "endpoint" },
15
+ Region: { type: "builtInParams", name: "region" },
16
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
17
+ };
18
+ }
10
19
  resolveMiddleware(clientStack, configuration, options) {
11
20
  this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
21
+ this.middlewareStack.use(getEndpointPlugin(configuration, StartDocumentAnalysisCommand.getEndpointParameterInstructions()));
12
22
  const stack = clientStack.concat(this.middlewareStack);
13
23
  const { logger } = configuration;
14
24
  const clientName = "TextractClient";
@@ -1,3 +1,4 @@
1
+ import { getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
1
2
  import { getSerdePlugin } from "@aws-sdk/middleware-serde";
2
3
  import { Command as $Command } from "@aws-sdk/smithy-client";
3
4
  import { StartDocumentTextDetectionRequestFilterSensitiveLog, StartDocumentTextDetectionResponseFilterSensitiveLog, } from "../models/models_0";
@@ -7,8 +8,17 @@ export class StartDocumentTextDetectionCommand extends $Command {
7
8
  super();
8
9
  this.input = input;
9
10
  }
11
+ static getEndpointParameterInstructions() {
12
+ return {
13
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
14
+ Endpoint: { type: "builtInParams", name: "endpoint" },
15
+ Region: { type: "builtInParams", name: "region" },
16
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
17
+ };
18
+ }
10
19
  resolveMiddleware(clientStack, configuration, options) {
11
20
  this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
21
+ this.middlewareStack.use(getEndpointPlugin(configuration, StartDocumentTextDetectionCommand.getEndpointParameterInstructions()));
12
22
  const stack = clientStack.concat(this.middlewareStack);
13
23
  const { logger } = configuration;
14
24
  const clientName = "TextractClient";
@@ -1,3 +1,4 @@
1
+ import { getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
1
2
  import { getSerdePlugin } from "@aws-sdk/middleware-serde";
2
3
  import { Command as $Command } from "@aws-sdk/smithy-client";
3
4
  import { StartExpenseAnalysisRequestFilterSensitiveLog, StartExpenseAnalysisResponseFilterSensitiveLog, } from "../models/models_0";
@@ -7,8 +8,17 @@ export class StartExpenseAnalysisCommand extends $Command {
7
8
  super();
8
9
  this.input = input;
9
10
  }
11
+ static getEndpointParameterInstructions() {
12
+ return {
13
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
14
+ Endpoint: { type: "builtInParams", name: "endpoint" },
15
+ Region: { type: "builtInParams", name: "region" },
16
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
17
+ };
18
+ }
10
19
  resolveMiddleware(clientStack, configuration, options) {
11
20
  this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
21
+ this.middlewareStack.use(getEndpointPlugin(configuration, StartExpenseAnalysisCommand.getEndpointParameterInstructions()));
12
22
  const stack = clientStack.concat(this.middlewareStack);
13
23
  const { logger } = configuration;
14
24
  const clientName = "TextractClient";
@@ -0,0 +1,8 @@
1
+ export const resolveClientEndpointParameters = (options) => {
2
+ return {
3
+ ...options,
4
+ useDualstackEndpoint: options.useDualstackEndpoint ?? false,
5
+ useFipsEndpoint: options.useFipsEndpoint ?? false,
6
+ defaultSigningName: "textract",
7
+ };
8
+ };
@@ -0,0 +1,8 @@
1
+ import { resolveEndpoint } from "@aws-sdk/util-endpoints";
2
+ import { ruleSet } from "./ruleset";
3
+ export const defaultEndpointResolver = (endpointParams, context = {}) => {
4
+ return resolveEndpoint(ruleSet, {
5
+ endpointParams: endpointParams,
6
+ logger: context.logger,
7
+ });
8
+ };