@aws-sdk/client-proton 3.509.0 → 3.513.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.
@@ -0,0 +1 @@
1
+ module.exports = require("../index.js");
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveHttpAuthSchemeConfig = exports.defaultProtonHttpAuthSchemeProvider = exports.defaultProtonHttpAuthSchemeParametersProvider = void 0;
4
+ const core_1 = require("@aws-sdk/core");
5
+ const util_middleware_1 = require("@smithy/util-middleware");
6
+ const defaultProtonHttpAuthSchemeParametersProvider = async (config, context, input) => {
7
+ return {
8
+ operation: (0, util_middleware_1.getSmithyContext)(context).operation,
9
+ region: (await (0, util_middleware_1.normalizeProvider)(config.region)()) ||
10
+ (() => {
11
+ throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
12
+ })(),
13
+ };
14
+ };
15
+ exports.defaultProtonHttpAuthSchemeParametersProvider = defaultProtonHttpAuthSchemeParametersProvider;
16
+ function createAwsAuthSigv4HttpAuthOption(authParameters) {
17
+ return {
18
+ schemeId: "aws.auth#sigv4",
19
+ signingProperties: {
20
+ name: "proton",
21
+ region: authParameters.region,
22
+ },
23
+ propertiesExtractor: (config, context) => ({
24
+ signingProperties: {
25
+ config,
26
+ context,
27
+ },
28
+ }),
29
+ };
30
+ }
31
+ const defaultProtonHttpAuthSchemeProvider = (authParameters) => {
32
+ const options = [];
33
+ switch (authParameters.operation) {
34
+ default: {
35
+ options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
36
+ }
37
+ }
38
+ return options;
39
+ };
40
+ exports.defaultProtonHttpAuthSchemeProvider = defaultProtonHttpAuthSchemeProvider;
41
+ const resolveHttpAuthSchemeConfig = (config) => {
42
+ const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
43
+ return {
44
+ ...config_0,
45
+ };
46
+ };
47
+ exports.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
package/dist-cjs/index.js CHANGED
@@ -283,13 +283,14 @@ module.exports = __toCommonJS(src_exports);
283
283
  var import_middleware_host_header = require("@aws-sdk/middleware-host-header");
284
284
  var import_middleware_logger = require("@aws-sdk/middleware-logger");
285
285
  var import_middleware_recursion_detection = require("@aws-sdk/middleware-recursion-detection");
286
- var import_middleware_signing = require("@aws-sdk/middleware-signing");
287
286
  var import_middleware_user_agent = require("@aws-sdk/middleware-user-agent");
288
287
  var import_config_resolver = require("@smithy/config-resolver");
288
+ var import_core = require("@smithy/core");
289
289
  var import_middleware_content_length = require("@smithy/middleware-content-length");
290
290
  var import_middleware_endpoint = require("@smithy/middleware-endpoint");
291
291
  var import_middleware_retry = require("@smithy/middleware-retry");
292
292
 
293
+ var import_httpAuthSchemeProvider = require("./auth/httpAuthSchemeProvider");
293
294
 
294
295
  // src/endpoint/EndpointParameters.ts
295
296
  var resolveClientEndpointParameters = /* @__PURE__ */ __name((options) => {
@@ -314,19 +315,62 @@ var import_runtimeConfig = require("././runtimeConfig");
314
315
  var import_region_config_resolver = require("@aws-sdk/region-config-resolver");
315
316
  var import_protocol_http = require("@smithy/protocol-http");
316
317
  var import_smithy_client = require("@smithy/smithy-client");
318
+
319
+ // src/auth/httpAuthExtensionConfiguration.ts
320
+ var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => {
321
+ const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
322
+ let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
323
+ let _credentials = runtimeConfig.credentials;
324
+ return {
325
+ setHttpAuthScheme(httpAuthScheme) {
326
+ const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
327
+ if (index === -1) {
328
+ _httpAuthSchemes.push(httpAuthScheme);
329
+ } else {
330
+ _httpAuthSchemes.splice(index, 1, httpAuthScheme);
331
+ }
332
+ },
333
+ httpAuthSchemes() {
334
+ return _httpAuthSchemes;
335
+ },
336
+ setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
337
+ _httpAuthSchemeProvider = httpAuthSchemeProvider;
338
+ },
339
+ httpAuthSchemeProvider() {
340
+ return _httpAuthSchemeProvider;
341
+ },
342
+ setCredentials(credentials) {
343
+ _credentials = credentials;
344
+ },
345
+ credentials() {
346
+ return _credentials;
347
+ }
348
+ };
349
+ }, "getHttpAuthExtensionConfiguration");
350
+ var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name((config) => {
351
+ return {
352
+ httpAuthSchemes: config.httpAuthSchemes(),
353
+ httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
354
+ credentials: config.credentials()
355
+ };
356
+ }, "resolveHttpAuthRuntimeConfig");
357
+
358
+ // src/runtimeExtensions.ts
317
359
  var asPartial = /* @__PURE__ */ __name((t) => t, "asPartial");
318
360
  var resolveRuntimeExtensions = /* @__PURE__ */ __name((runtimeConfig, extensions) => {
319
361
  const extensionConfiguration = {
320
362
  ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
321
363
  ...asPartial((0, import_smithy_client.getDefaultExtensionConfiguration)(runtimeConfig)),
322
- ...asPartial((0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig))
364
+ ...asPartial((0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
365
+ ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
323
366
  };
324
367
  extensions.forEach((extension) => extension.configure(extensionConfiguration));
325
368
  return {
326
369
  ...runtimeConfig,
327
370
  ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
328
371
  ...(0, import_smithy_client.resolveDefaultRuntimeConfig)(extensionConfiguration),
329
- ...(0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration)
372
+ ...(0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
373
+ ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
330
374
  };
331
375
  }, "resolveRuntimeExtensions");
332
376
 
@@ -339,8 +383,8 @@ var _ProtonClient = class _ProtonClient extends import_smithy_client.Client {
339
383
  const _config_3 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_2);
340
384
  const _config_4 = (0, import_middleware_retry.resolveRetryConfig)(_config_3);
341
385
  const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
342
- const _config_6 = (0, import_middleware_signing.resolveAwsAuthConfig)(_config_5);
343
- const _config_7 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_6);
386
+ const _config_6 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_5);
387
+ const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
344
388
  const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
345
389
  super(_config_8);
346
390
  this.config = _config_8;
@@ -349,8 +393,14 @@ var _ProtonClient = class _ProtonClient extends import_smithy_client.Client {
349
393
  this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
350
394
  this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
351
395
  this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
352
- this.middlewareStack.use((0, import_middleware_signing.getAwsAuthPlugin)(this.config));
353
396
  this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
397
+ this.middlewareStack.use(
398
+ (0, import_core.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
399
+ httpAuthSchemeParametersProvider: this.getDefaultHttpAuthSchemeParametersProvider(),
400
+ identityProviderConfigProvider: this.getIdentityProviderConfigProvider()
401
+ })
402
+ );
403
+ this.middlewareStack.use((0, import_core.getHttpSigningPlugin)(this.config));
354
404
  }
355
405
  /**
356
406
  * Destroy underlying resources, like sockets. It's usually not necessary to do this.
@@ -360,6 +410,14 @@ var _ProtonClient = class _ProtonClient extends import_smithy_client.Client {
360
410
  destroy() {
361
411
  super.destroy();
362
412
  }
413
+ getDefaultHttpAuthSchemeParametersProvider() {
414
+ return import_httpAuthSchemeProvider.defaultProtonHttpAuthSchemeParametersProvider;
415
+ }
416
+ getIdentityProviderConfigProvider() {
417
+ return async (config) => new import_core.DefaultIdentityProviderConfig({
418
+ "aws.auth#sigv4": config.credentials
419
+ });
420
+ }
363
421
  };
364
422
  __name(_ProtonClient, "ProtonClient");
365
423
  var ProtonClient = _ProtonClient;
@@ -374,7 +432,7 @@ var import_middleware_serde = require("@smithy/middleware-serde");
374
432
  var import_types = require("@smithy/types");
375
433
 
376
434
  // src/protocols/Aws_json1_0.ts
377
- var import_core = require("@aws-sdk/core");
435
+ var import_core2 = require("@aws-sdk/core");
378
436
 
379
437
 
380
438
  var import_uuid = require("uuid");
@@ -3234,7 +3292,7 @@ var de_Deployment = /* @__PURE__ */ __name((output, context) => {
3234
3292
  deploymentStatusMessage: import_smithy_client.expectString,
3235
3293
  environmentName: import_smithy_client.expectString,
3236
3294
  id: import_smithy_client.expectString,
3237
- initialState: (_) => de_DeploymentState((0, import_core.awsExpectUnion)(_), context),
3295
+ initialState: (_) => de_DeploymentState((0, import_core2.awsExpectUnion)(_), context),
3238
3296
  lastAttemptedDeploymentId: import_smithy_client.expectString,
3239
3297
  lastModifiedAt: (_) => (0, import_smithy_client.expectNonNull)((0, import_smithy_client.parseEpochTimestamp)((0, import_smithy_client.expectNumber)(_))),
3240
3298
  lastSucceededDeploymentId: import_smithy_client.expectString,
@@ -3243,7 +3301,7 @@ var de_Deployment = /* @__PURE__ */ __name((output, context) => {
3243
3301
  targetArn: import_smithy_client.expectString,
3244
3302
  targetResourceCreatedAt: (_) => (0, import_smithy_client.expectNonNull)((0, import_smithy_client.parseEpochTimestamp)((0, import_smithy_client.expectNumber)(_))),
3245
3303
  targetResourceType: import_smithy_client.expectString,
3246
- targetState: (_) => de_DeploymentState((0, import_core.awsExpectUnion)(_), context)
3304
+ targetState: (_) => de_DeploymentState((0, import_core2.awsExpectUnion)(_), context)
3247
3305
  });
3248
3306
  }, "de_Deployment");
3249
3307
  var de_DeploymentState = /* @__PURE__ */ __name((output, context) => {
@@ -5550,88 +5608,88 @@ var Proton = _Proton;
5550
5608
  (0, import_smithy_client.createAggregatedClient)(commands, Proton);
5551
5609
 
5552
5610
  // src/pagination/ListComponentOutputsPaginator.ts
5553
- var import_core2 = require("@smithy/core");
5554
- var paginateListComponentOutputs = (0, import_core2.createPaginator)(ProtonClient, ListComponentOutputsCommand, "nextToken", "nextToken", "");
5611
+
5612
+ var paginateListComponentOutputs = (0, import_core.createPaginator)(ProtonClient, ListComponentOutputsCommand, "nextToken", "nextToken", "");
5555
5613
 
5556
5614
  // src/pagination/ListComponentProvisionedResourcesPaginator.ts
5557
- var import_core3 = require("@smithy/core");
5558
- var paginateListComponentProvisionedResources = (0, import_core3.createPaginator)(ProtonClient, ListComponentProvisionedResourcesCommand, "nextToken", "nextToken", "");
5615
+
5616
+ var paginateListComponentProvisionedResources = (0, import_core.createPaginator)(ProtonClient, ListComponentProvisionedResourcesCommand, "nextToken", "nextToken", "");
5559
5617
 
5560
5618
  // src/pagination/ListComponentsPaginator.ts
5561
- var import_core4 = require("@smithy/core");
5562
- var paginateListComponents = (0, import_core4.createPaginator)(ProtonClient, ListComponentsCommand, "nextToken", "nextToken", "maxResults");
5619
+
5620
+ var paginateListComponents = (0, import_core.createPaginator)(ProtonClient, ListComponentsCommand, "nextToken", "nextToken", "maxResults");
5563
5621
 
5564
5622
  // src/pagination/ListDeploymentsPaginator.ts
5565
- var import_core5 = require("@smithy/core");
5566
- var paginateListDeployments = (0, import_core5.createPaginator)(ProtonClient, ListDeploymentsCommand, "nextToken", "nextToken", "maxResults");
5623
+
5624
+ var paginateListDeployments = (0, import_core.createPaginator)(ProtonClient, ListDeploymentsCommand, "nextToken", "nextToken", "maxResults");
5567
5625
 
5568
5626
  // src/pagination/ListEnvironmentAccountConnectionsPaginator.ts
5569
- var import_core6 = require("@smithy/core");
5570
- var paginateListEnvironmentAccountConnections = (0, import_core6.createPaginator)(ProtonClient, ListEnvironmentAccountConnectionsCommand, "nextToken", "nextToken", "maxResults");
5627
+
5628
+ var paginateListEnvironmentAccountConnections = (0, import_core.createPaginator)(ProtonClient, ListEnvironmentAccountConnectionsCommand, "nextToken", "nextToken", "maxResults");
5571
5629
 
5572
5630
  // src/pagination/ListEnvironmentOutputsPaginator.ts
5573
- var import_core7 = require("@smithy/core");
5574
- var paginateListEnvironmentOutputs = (0, import_core7.createPaginator)(ProtonClient, ListEnvironmentOutputsCommand, "nextToken", "nextToken", "");
5631
+
5632
+ var paginateListEnvironmentOutputs = (0, import_core.createPaginator)(ProtonClient, ListEnvironmentOutputsCommand, "nextToken", "nextToken", "");
5575
5633
 
5576
5634
  // src/pagination/ListEnvironmentProvisionedResourcesPaginator.ts
5577
- var import_core8 = require("@smithy/core");
5578
- var paginateListEnvironmentProvisionedResources = (0, import_core8.createPaginator)(ProtonClient, ListEnvironmentProvisionedResourcesCommand, "nextToken", "nextToken", "");
5635
+
5636
+ var paginateListEnvironmentProvisionedResources = (0, import_core.createPaginator)(ProtonClient, ListEnvironmentProvisionedResourcesCommand, "nextToken", "nextToken", "");
5579
5637
 
5580
5638
  // src/pagination/ListEnvironmentTemplateVersionsPaginator.ts
5581
- var import_core9 = require("@smithy/core");
5582
- var paginateListEnvironmentTemplateVersions = (0, import_core9.createPaginator)(ProtonClient, ListEnvironmentTemplateVersionsCommand, "nextToken", "nextToken", "maxResults");
5639
+
5640
+ var paginateListEnvironmentTemplateVersions = (0, import_core.createPaginator)(ProtonClient, ListEnvironmentTemplateVersionsCommand, "nextToken", "nextToken", "maxResults");
5583
5641
 
5584
5642
  // src/pagination/ListEnvironmentTemplatesPaginator.ts
5585
- var import_core10 = require("@smithy/core");
5586
- var paginateListEnvironmentTemplates = (0, import_core10.createPaginator)(ProtonClient, ListEnvironmentTemplatesCommand, "nextToken", "nextToken", "maxResults");
5643
+
5644
+ var paginateListEnvironmentTemplates = (0, import_core.createPaginator)(ProtonClient, ListEnvironmentTemplatesCommand, "nextToken", "nextToken", "maxResults");
5587
5645
 
5588
5646
  // src/pagination/ListEnvironmentsPaginator.ts
5589
- var import_core11 = require("@smithy/core");
5590
- var paginateListEnvironments = (0, import_core11.createPaginator)(ProtonClient, ListEnvironmentsCommand, "nextToken", "nextToken", "maxResults");
5647
+
5648
+ var paginateListEnvironments = (0, import_core.createPaginator)(ProtonClient, ListEnvironmentsCommand, "nextToken", "nextToken", "maxResults");
5591
5649
 
5592
5650
  // src/pagination/ListRepositoriesPaginator.ts
5593
- var import_core12 = require("@smithy/core");
5594
- var paginateListRepositories = (0, import_core12.createPaginator)(ProtonClient, ListRepositoriesCommand, "nextToken", "nextToken", "maxResults");
5651
+
5652
+ var paginateListRepositories = (0, import_core.createPaginator)(ProtonClient, ListRepositoriesCommand, "nextToken", "nextToken", "maxResults");
5595
5653
 
5596
5654
  // src/pagination/ListRepositorySyncDefinitionsPaginator.ts
5597
- var import_core13 = require("@smithy/core");
5598
- var paginateListRepositorySyncDefinitions = (0, import_core13.createPaginator)(ProtonClient, ListRepositorySyncDefinitionsCommand, "nextToken", "nextToken", "");
5655
+
5656
+ var paginateListRepositorySyncDefinitions = (0, import_core.createPaginator)(ProtonClient, ListRepositorySyncDefinitionsCommand, "nextToken", "nextToken", "");
5599
5657
 
5600
5658
  // src/pagination/ListServiceInstanceOutputsPaginator.ts
5601
- var import_core14 = require("@smithy/core");
5602
- var paginateListServiceInstanceOutputs = (0, import_core14.createPaginator)(ProtonClient, ListServiceInstanceOutputsCommand, "nextToken", "nextToken", "");
5659
+
5660
+ var paginateListServiceInstanceOutputs = (0, import_core.createPaginator)(ProtonClient, ListServiceInstanceOutputsCommand, "nextToken", "nextToken", "");
5603
5661
 
5604
5662
  // src/pagination/ListServiceInstanceProvisionedResourcesPaginator.ts
5605
- var import_core15 = require("@smithy/core");
5606
- var paginateListServiceInstanceProvisionedResources = (0, import_core15.createPaginator)(ProtonClient, ListServiceInstanceProvisionedResourcesCommand, "nextToken", "nextToken", "");
5663
+
5664
+ var paginateListServiceInstanceProvisionedResources = (0, import_core.createPaginator)(ProtonClient, ListServiceInstanceProvisionedResourcesCommand, "nextToken", "nextToken", "");
5607
5665
 
5608
5666
  // src/pagination/ListServiceInstancesPaginator.ts
5609
- var import_core16 = require("@smithy/core");
5610
- var paginateListServiceInstances = (0, import_core16.createPaginator)(ProtonClient, ListServiceInstancesCommand, "nextToken", "nextToken", "maxResults");
5667
+
5668
+ var paginateListServiceInstances = (0, import_core.createPaginator)(ProtonClient, ListServiceInstancesCommand, "nextToken", "nextToken", "maxResults");
5611
5669
 
5612
5670
  // src/pagination/ListServicePipelineOutputsPaginator.ts
5613
- var import_core17 = require("@smithy/core");
5614
- var paginateListServicePipelineOutputs = (0, import_core17.createPaginator)(ProtonClient, ListServicePipelineOutputsCommand, "nextToken", "nextToken", "");
5671
+
5672
+ var paginateListServicePipelineOutputs = (0, import_core.createPaginator)(ProtonClient, ListServicePipelineOutputsCommand, "nextToken", "nextToken", "");
5615
5673
 
5616
5674
  // src/pagination/ListServicePipelineProvisionedResourcesPaginator.ts
5617
- var import_core18 = require("@smithy/core");
5618
- var paginateListServicePipelineProvisionedResources = (0, import_core18.createPaginator)(ProtonClient, ListServicePipelineProvisionedResourcesCommand, "nextToken", "nextToken", "");
5675
+
5676
+ var paginateListServicePipelineProvisionedResources = (0, import_core.createPaginator)(ProtonClient, ListServicePipelineProvisionedResourcesCommand, "nextToken", "nextToken", "");
5619
5677
 
5620
5678
  // src/pagination/ListServiceTemplateVersionsPaginator.ts
5621
- var import_core19 = require("@smithy/core");
5622
- var paginateListServiceTemplateVersions = (0, import_core19.createPaginator)(ProtonClient, ListServiceTemplateVersionsCommand, "nextToken", "nextToken", "maxResults");
5679
+
5680
+ var paginateListServiceTemplateVersions = (0, import_core.createPaginator)(ProtonClient, ListServiceTemplateVersionsCommand, "nextToken", "nextToken", "maxResults");
5623
5681
 
5624
5682
  // src/pagination/ListServiceTemplatesPaginator.ts
5625
- var import_core20 = require("@smithy/core");
5626
- var paginateListServiceTemplates = (0, import_core20.createPaginator)(ProtonClient, ListServiceTemplatesCommand, "nextToken", "nextToken", "maxResults");
5683
+
5684
+ var paginateListServiceTemplates = (0, import_core.createPaginator)(ProtonClient, ListServiceTemplatesCommand, "nextToken", "nextToken", "maxResults");
5627
5685
 
5628
5686
  // src/pagination/ListServicesPaginator.ts
5629
- var import_core21 = require("@smithy/core");
5630
- var paginateListServices = (0, import_core21.createPaginator)(ProtonClient, ListServicesCommand, "nextToken", "nextToken", "maxResults");
5687
+
5688
+ var paginateListServices = (0, import_core.createPaginator)(ProtonClient, ListServicesCommand, "nextToken", "nextToken", "maxResults");
5631
5689
 
5632
5690
  // src/pagination/ListTagsForResourcePaginator.ts
5633
- var import_core22 = require("@smithy/core");
5634
- var paginateListTagsForResource = (0, import_core22.createPaginator)(ProtonClient, ListTagsForResourceCommand, "nextToken", "nextToken", "maxResults");
5691
+
5692
+ var paginateListTagsForResource = (0, import_core.createPaginator)(ProtonClient, ListTagsForResourceCommand, "nextToken", "nextToken", "maxResults");
5635
5693
 
5636
5694
  // src/waiters/waitForComponentDeleted.ts
5637
5695
  var import_util_waiter = require("@smithy/util-waiter");
@@ -1,10 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getRuntimeConfig = void 0;
4
+ const core_1 = require("@aws-sdk/core");
4
5
  const smithy_client_1 = require("@smithy/smithy-client");
5
6
  const url_parser_1 = require("@smithy/url-parser");
6
7
  const util_base64_1 = require("@smithy/util-base64");
7
8
  const util_utf8_1 = require("@smithy/util-utf8");
9
+ const httpAuthSchemeProvider_1 = require("./auth/httpAuthSchemeProvider");
8
10
  const endpointResolver_1 = require("./endpoint/endpointResolver");
9
11
  const getRuntimeConfig = (config) => {
10
12
  return {
@@ -14,6 +16,14 @@ const getRuntimeConfig = (config) => {
14
16
  disableHostPrefix: config?.disableHostPrefix ?? false,
15
17
  endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
16
18
  extensions: config?.extensions ?? [],
19
+ httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultProtonHttpAuthSchemeProvider,
20
+ httpAuthSchemes: config?.httpAuthSchemes ?? [
21
+ {
22
+ schemeId: "aws.auth#sigv4",
23
+ identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
24
+ signer: new core_1.AwsSdkSigV4Signer(),
25
+ },
26
+ ],
17
27
  logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
18
28
  serviceId: config?.serviceId ?? "Proton",
19
29
  urlParser: config?.urlParser ?? url_parser_1.parseUrl,
@@ -1,13 +1,14 @@
1
1
  import { getHostHeaderPlugin, resolveHostHeaderConfig, } from "@aws-sdk/middleware-host-header";
2
2
  import { getLoggerPlugin } from "@aws-sdk/middleware-logger";
3
3
  import { getRecursionDetectionPlugin } from "@aws-sdk/middleware-recursion-detection";
4
- import { getAwsAuthPlugin, resolveAwsAuthConfig, } from "@aws-sdk/middleware-signing";
5
4
  import { getUserAgentPlugin, resolveUserAgentConfig, } from "@aws-sdk/middleware-user-agent";
6
5
  import { resolveRegionConfig } from "@smithy/config-resolver";
6
+ import { DefaultIdentityProviderConfig, getHttpAuthSchemeEndpointRuleSetPlugin, getHttpSigningPlugin, } from "@smithy/core";
7
7
  import { getContentLengthPlugin } from "@smithy/middleware-content-length";
8
8
  import { resolveEndpointConfig } from "@smithy/middleware-endpoint";
9
9
  import { getRetryPlugin, resolveRetryConfig } from "@smithy/middleware-retry";
10
10
  import { Client as __Client, } from "@smithy/smithy-client";
11
+ import { defaultProtonHttpAuthSchemeParametersProvider, resolveHttpAuthSchemeConfig, } from "./auth/httpAuthSchemeProvider";
11
12
  import { resolveClientEndpointParameters, } from "./endpoint/EndpointParameters";
12
13
  import { getRuntimeConfig as __getRuntimeConfig } from "./runtimeConfig";
13
14
  import { resolveRuntimeExtensions } from "./runtimeExtensions";
@@ -20,8 +21,8 @@ export class ProtonClient extends __Client {
20
21
  const _config_3 = resolveEndpointConfig(_config_2);
21
22
  const _config_4 = resolveRetryConfig(_config_3);
22
23
  const _config_5 = resolveHostHeaderConfig(_config_4);
23
- const _config_6 = resolveAwsAuthConfig(_config_5);
24
- const _config_7 = resolveUserAgentConfig(_config_6);
24
+ const _config_6 = resolveUserAgentConfig(_config_5);
25
+ const _config_7 = resolveHttpAuthSchemeConfig(_config_6);
25
26
  const _config_8 = resolveRuntimeExtensions(_config_7, configuration?.extensions || []);
26
27
  super(_config_8);
27
28
  this.config = _config_8;
@@ -30,10 +31,22 @@ export class ProtonClient extends __Client {
30
31
  this.middlewareStack.use(getHostHeaderPlugin(this.config));
31
32
  this.middlewareStack.use(getLoggerPlugin(this.config));
32
33
  this.middlewareStack.use(getRecursionDetectionPlugin(this.config));
33
- this.middlewareStack.use(getAwsAuthPlugin(this.config));
34
34
  this.middlewareStack.use(getUserAgentPlugin(this.config));
35
+ this.middlewareStack.use(getHttpAuthSchemeEndpointRuleSetPlugin(this.config, {
36
+ httpAuthSchemeParametersProvider: this.getDefaultHttpAuthSchemeParametersProvider(),
37
+ identityProviderConfigProvider: this.getIdentityProviderConfigProvider(),
38
+ }));
39
+ this.middlewareStack.use(getHttpSigningPlugin(this.config));
35
40
  }
36
41
  destroy() {
37
42
  super.destroy();
38
43
  }
44
+ getDefaultHttpAuthSchemeParametersProvider() {
45
+ return defaultProtonHttpAuthSchemeParametersProvider;
46
+ }
47
+ getIdentityProviderConfigProvider() {
48
+ return async (config) => new DefaultIdentityProviderConfig({
49
+ "aws.auth#sigv4": config.credentials,
50
+ });
51
+ }
39
52
  }
@@ -0,0 +1,38 @@
1
+ export const getHttpAuthExtensionConfiguration = (runtimeConfig) => {
2
+ const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
3
+ let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
4
+ let _credentials = runtimeConfig.credentials;
5
+ return {
6
+ setHttpAuthScheme(httpAuthScheme) {
7
+ const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
8
+ if (index === -1) {
9
+ _httpAuthSchemes.push(httpAuthScheme);
10
+ }
11
+ else {
12
+ _httpAuthSchemes.splice(index, 1, httpAuthScheme);
13
+ }
14
+ },
15
+ httpAuthSchemes() {
16
+ return _httpAuthSchemes;
17
+ },
18
+ setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
19
+ _httpAuthSchemeProvider = httpAuthSchemeProvider;
20
+ },
21
+ httpAuthSchemeProvider() {
22
+ return _httpAuthSchemeProvider;
23
+ },
24
+ setCredentials(credentials) {
25
+ _credentials = credentials;
26
+ },
27
+ credentials() {
28
+ return _credentials;
29
+ },
30
+ };
31
+ };
32
+ export const resolveHttpAuthRuntimeConfig = (config) => {
33
+ return {
34
+ httpAuthSchemes: config.httpAuthSchemes(),
35
+ httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
36
+ credentials: config.credentials(),
37
+ };
38
+ };
@@ -0,0 +1,41 @@
1
+ import { resolveAwsSdkSigV4Config, } from "@aws-sdk/core";
2
+ import { getSmithyContext, normalizeProvider } from "@smithy/util-middleware";
3
+ export const defaultProtonHttpAuthSchemeParametersProvider = async (config, context, input) => {
4
+ return {
5
+ operation: getSmithyContext(context).operation,
6
+ region: (await normalizeProvider(config.region)()) ||
7
+ (() => {
8
+ throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
9
+ })(),
10
+ };
11
+ };
12
+ function createAwsAuthSigv4HttpAuthOption(authParameters) {
13
+ return {
14
+ schemeId: "aws.auth#sigv4",
15
+ signingProperties: {
16
+ name: "proton",
17
+ region: authParameters.region,
18
+ },
19
+ propertiesExtractor: (config, context) => ({
20
+ signingProperties: {
21
+ config,
22
+ context,
23
+ },
24
+ }),
25
+ };
26
+ }
27
+ export const defaultProtonHttpAuthSchemeProvider = (authParameters) => {
28
+ const options = [];
29
+ switch (authParameters.operation) {
30
+ default: {
31
+ options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
32
+ }
33
+ }
34
+ return options;
35
+ };
36
+ export const resolveHttpAuthSchemeConfig = (config) => {
37
+ const config_0 = resolveAwsSdkSigV4Config(config);
38
+ return {
39
+ ...config_0,
40
+ };
41
+ };
@@ -1,7 +1,9 @@
1
+ import { AwsSdkSigV4Signer } from "@aws-sdk/core";
1
2
  import { NoOpLogger } from "@smithy/smithy-client";
2
3
  import { parseUrl } from "@smithy/url-parser";
3
4
  import { fromBase64, toBase64 } from "@smithy/util-base64";
4
5
  import { fromUtf8, toUtf8 } from "@smithy/util-utf8";
6
+ import { defaultProtonHttpAuthSchemeProvider } from "./auth/httpAuthSchemeProvider";
5
7
  import { defaultEndpointResolver } from "./endpoint/endpointResolver";
6
8
  export const getRuntimeConfig = (config) => {
7
9
  return {
@@ -11,6 +13,14 @@ export const getRuntimeConfig = (config) => {
11
13
  disableHostPrefix: config?.disableHostPrefix ?? false,
12
14
  endpointProvider: config?.endpointProvider ?? defaultEndpointResolver,
13
15
  extensions: config?.extensions ?? [],
16
+ httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? defaultProtonHttpAuthSchemeProvider,
17
+ httpAuthSchemes: config?.httpAuthSchemes ?? [
18
+ {
19
+ schemeId: "aws.auth#sigv4",
20
+ identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
21
+ signer: new AwsSdkSigV4Signer(),
22
+ },
23
+ ],
14
24
  logger: config?.logger ?? new NoOpLogger(),
15
25
  serviceId: config?.serviceId ?? "Proton",
16
26
  urlParser: config?.urlParser ?? parseUrl,
@@ -1,12 +1,14 @@
1
1
  import { getAwsRegionExtensionConfiguration, resolveAwsRegionExtensionConfiguration, } from "@aws-sdk/region-config-resolver";
2
2
  import { getHttpHandlerExtensionConfiguration, resolveHttpHandlerRuntimeConfig } from "@smithy/protocol-http";
3
3
  import { getDefaultExtensionConfiguration, resolveDefaultRuntimeConfig } from "@smithy/smithy-client";
4
+ import { getHttpAuthExtensionConfiguration, resolveHttpAuthRuntimeConfig } from "./auth/httpAuthExtensionConfiguration";
4
5
  const asPartial = (t) => t;
5
6
  export const resolveRuntimeExtensions = (runtimeConfig, extensions) => {
6
7
  const extensionConfiguration = {
7
8
  ...asPartial(getAwsRegionExtensionConfiguration(runtimeConfig)),
8
9
  ...asPartial(getDefaultExtensionConfiguration(runtimeConfig)),
9
10
  ...asPartial(getHttpHandlerExtensionConfiguration(runtimeConfig)),
11
+ ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig)),
10
12
  };
11
13
  extensions.forEach((extension) => extension.configure(extensionConfiguration));
12
14
  return {
@@ -14,5 +16,6 @@ export const resolveRuntimeExtensions = (runtimeConfig, extensions) => {
14
16
  ...resolveAwsRegionExtensionConfiguration(extensionConfiguration),
15
17
  ...resolveDefaultRuntimeConfig(extensionConfiguration),
16
18
  ...resolveHttpHandlerRuntimeConfig(extensionConfiguration),
19
+ ...resolveHttpAuthRuntimeConfig(extensionConfiguration),
17
20
  };
18
21
  };
@@ -1,13 +1,12 @@
1
1
  import { HostHeaderInputConfig, HostHeaderResolvedConfig } from "@aws-sdk/middleware-host-header";
2
- import { AwsAuthInputConfig, AwsAuthResolvedConfig } from "@aws-sdk/middleware-signing";
3
2
  import { UserAgentInputConfig, UserAgentResolvedConfig } from "@aws-sdk/middleware-user-agent";
4
- import { Credentials as __Credentials } from "@aws-sdk/types";
5
3
  import { RegionInputConfig, RegionResolvedConfig } from "@smithy/config-resolver";
6
4
  import { EndpointInputConfig, EndpointResolvedConfig } from "@smithy/middleware-endpoint";
7
5
  import { RetryInputConfig, RetryResolvedConfig } from "@smithy/middleware-retry";
8
6
  import { HttpHandler as __HttpHandler } from "@smithy/protocol-http";
9
7
  import { Client as __Client, DefaultsMode as __DefaultsMode, SmithyConfiguration as __SmithyConfiguration, SmithyResolvedConfiguration as __SmithyResolvedConfiguration } from "@smithy/smithy-client";
10
- import { BodyLengthCalculator as __BodyLengthCalculator, CheckOptionalClientConfig as __CheckOptionalClientConfig, ChecksumConstructor as __ChecksumConstructor, Decoder as __Decoder, Encoder as __Encoder, HashConstructor as __HashConstructor, HttpHandlerOptions as __HttpHandlerOptions, Logger as __Logger, Provider as __Provider, Provider, StreamCollector as __StreamCollector, UrlParser as __UrlParser, UserAgent as __UserAgent } from "@smithy/types";
8
+ import { AwsCredentialIdentityProvider, BodyLengthCalculator as __BodyLengthCalculator, CheckOptionalClientConfig as __CheckOptionalClientConfig, ChecksumConstructor as __ChecksumConstructor, Decoder as __Decoder, Encoder as __Encoder, HashConstructor as __HashConstructor, HttpHandlerOptions as __HttpHandlerOptions, Logger as __Logger, Provider as __Provider, Provider, StreamCollector as __StreamCollector, UrlParser as __UrlParser, UserAgent as __UserAgent } from "@smithy/types";
9
+ import { HttpAuthSchemeInputConfig, HttpAuthSchemeResolvedConfig } from "./auth/httpAuthSchemeProvider";
11
10
  import { AcceptEnvironmentAccountConnectionCommandInput, AcceptEnvironmentAccountConnectionCommandOutput } from "./commands/AcceptEnvironmentAccountConnectionCommand";
12
11
  import { CancelComponentDeploymentCommandInput, CancelComponentDeploymentCommandOutput } from "./commands/CancelComponentDeploymentCommand";
13
12
  import { CancelEnvironmentDeploymentCommandInput, CancelEnvironmentDeploymentCommandOutput } from "./commands/CancelEnvironmentDeploymentCommand";
@@ -178,20 +177,21 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__
178
177
  * Enables FIPS compatible endpoints.
179
178
  */
180
179
  useFipsEndpoint?: boolean | __Provider<boolean>;
180
+ /**
181
+ * The provider populating default tracking information to be sent with `user-agent`, `x-amz-user-agent` header
182
+ * @internal
183
+ */
184
+ defaultUserAgentProvider?: Provider<__UserAgent>;
181
185
  /**
182
186
  * The AWS region to which this client will send requests
183
187
  */
184
188
  region?: string | __Provider<string>;
185
189
  /**
186
190
  * Default credentials provider; Not available in browser runtime.
191
+ * @deprecated
187
192
  * @internal
188
193
  */
189
- credentialDefaultProvider?: (input: any) => __Provider<__Credentials>;
190
- /**
191
- * The provider populating default tracking information to be sent with `user-agent`, `x-amz-user-agent` header
192
- * @internal
193
- */
194
- defaultUserAgentProvider?: Provider<__UserAgent>;
194
+ credentialDefaultProvider?: (input: any) => AwsCredentialIdentityProvider;
195
195
  /**
196
196
  * Value for how many times a request will be made at most in case of retry.
197
197
  */
@@ -218,7 +218,7 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__
218
218
  /**
219
219
  * @public
220
220
  */
221
- export type ProtonClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> & ClientDefaults & RegionInputConfig & EndpointInputConfig<EndpointParameters> & RetryInputConfig & HostHeaderInputConfig & AwsAuthInputConfig & UserAgentInputConfig & ClientInputEndpointParameters;
221
+ export type ProtonClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> & ClientDefaults & RegionInputConfig & EndpointInputConfig<EndpointParameters> & RetryInputConfig & HostHeaderInputConfig & UserAgentInputConfig & HttpAuthSchemeInputConfig & ClientInputEndpointParameters;
222
222
  /**
223
223
  * @public
224
224
  *
@@ -229,7 +229,7 @@ export interface ProtonClientConfig extends ProtonClientConfigType {
229
229
  /**
230
230
  * @public
231
231
  */
232
- export type ProtonClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & Required<ClientDefaults> & RuntimeExtensionsConfig & RegionResolvedConfig & EndpointResolvedConfig<EndpointParameters> & RetryResolvedConfig & HostHeaderResolvedConfig & AwsAuthResolvedConfig & UserAgentResolvedConfig & ClientResolvedEndpointParameters;
232
+ export type ProtonClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & Required<ClientDefaults> & RuntimeExtensionsConfig & RegionResolvedConfig & EndpointResolvedConfig<EndpointParameters> & RetryResolvedConfig & HostHeaderResolvedConfig & UserAgentResolvedConfig & HttpAuthSchemeResolvedConfig & ClientResolvedEndpointParameters;
233
233
  /**
234
234
  * @public
235
235
  *
@@ -381,4 +381,6 @@ export declare class ProtonClient extends __Client<__HttpHandlerOptions, Service
381
381
  * Otherwise, sockets might stay open for quite a long time before the server terminates them.
382
382
  */
383
383
  destroy(): void;
384
+ private getDefaultHttpAuthSchemeParametersProvider;
385
+ private getIdentityProviderConfigProvider;
384
386
  }
@@ -0,0 +1,29 @@
1
+ import { AwsCredentialIdentity, AwsCredentialIdentityProvider, HttpAuthScheme } from "@smithy/types";
2
+ import { ProtonHttpAuthSchemeProvider } from "./httpAuthSchemeProvider";
3
+ /**
4
+ * @internal
5
+ */
6
+ export interface HttpAuthExtensionConfiguration {
7
+ setHttpAuthScheme(httpAuthScheme: HttpAuthScheme): void;
8
+ httpAuthSchemes(): HttpAuthScheme[];
9
+ setHttpAuthSchemeProvider(httpAuthSchemeProvider: ProtonHttpAuthSchemeProvider): void;
10
+ httpAuthSchemeProvider(): ProtonHttpAuthSchemeProvider;
11
+ setCredentials(credentials: AwsCredentialIdentity | AwsCredentialIdentityProvider): void;
12
+ credentials(): AwsCredentialIdentity | AwsCredentialIdentityProvider | undefined;
13
+ }
14
+ /**
15
+ * @internal
16
+ */
17
+ export type HttpAuthRuntimeConfig = Partial<{
18
+ httpAuthSchemes: HttpAuthScheme[];
19
+ httpAuthSchemeProvider: ProtonHttpAuthSchemeProvider;
20
+ credentials: AwsCredentialIdentity | AwsCredentialIdentityProvider;
21
+ }>;
22
+ /**
23
+ * @internal
24
+ */
25
+ export declare const getHttpAuthExtensionConfiguration: (runtimeConfig: HttpAuthRuntimeConfig) => HttpAuthExtensionConfiguration;
26
+ /**
27
+ * @internal
28
+ */
29
+ export declare const resolveHttpAuthRuntimeConfig: (config: HttpAuthExtensionConfiguration) => HttpAuthRuntimeConfig;
@@ -0,0 +1,61 @@
1
+ import { AwsSdkSigV4AuthInputConfig, AwsSdkSigV4AuthResolvedConfig, AwsSdkSigV4PreviouslyResolved } from "@aws-sdk/core";
2
+ import { HandlerExecutionContext, HttpAuthScheme, HttpAuthSchemeParameters, HttpAuthSchemeParametersProvider, HttpAuthSchemeProvider } from "@smithy/types";
3
+ import { ProtonClientResolvedConfig } from "../ProtonClient";
4
+ /**
5
+ * @internal
6
+ */
7
+ export interface ProtonHttpAuthSchemeParameters extends HttpAuthSchemeParameters {
8
+ region?: string;
9
+ }
10
+ /**
11
+ * @internal
12
+ */
13
+ export interface ProtonHttpAuthSchemeParametersProvider extends HttpAuthSchemeParametersProvider<ProtonClientResolvedConfig, HandlerExecutionContext, ProtonHttpAuthSchemeParameters, object> {
14
+ }
15
+ /**
16
+ * @internal
17
+ */
18
+ export declare const defaultProtonHttpAuthSchemeParametersProvider: (config: ProtonClientResolvedConfig, context: HandlerExecutionContext, input: object) => Promise<ProtonHttpAuthSchemeParameters>;
19
+ /**
20
+ * @internal
21
+ */
22
+ export interface ProtonHttpAuthSchemeProvider extends HttpAuthSchemeProvider<ProtonHttpAuthSchemeParameters> {
23
+ }
24
+ /**
25
+ * @internal
26
+ */
27
+ export declare const defaultProtonHttpAuthSchemeProvider: ProtonHttpAuthSchemeProvider;
28
+ /**
29
+ * @internal
30
+ */
31
+ export interface HttpAuthSchemeInputConfig extends AwsSdkSigV4AuthInputConfig {
32
+ /**
33
+ * experimentalIdentityAndAuth: Configuration of HttpAuthSchemes for a client which provides default identity providers and signers per auth scheme.
34
+ * @internal
35
+ */
36
+ httpAuthSchemes?: HttpAuthScheme[];
37
+ /**
38
+ * experimentalIdentityAndAuth: Configuration of an HttpAuthSchemeProvider for a client which resolves which HttpAuthScheme to use.
39
+ * @internal
40
+ */
41
+ httpAuthSchemeProvider?: ProtonHttpAuthSchemeProvider;
42
+ }
43
+ /**
44
+ * @internal
45
+ */
46
+ export interface HttpAuthSchemeResolvedConfig extends AwsSdkSigV4AuthResolvedConfig {
47
+ /**
48
+ * experimentalIdentityAndAuth: Configuration of HttpAuthSchemes for a client which provides default identity providers and signers per auth scheme.
49
+ * @internal
50
+ */
51
+ readonly httpAuthSchemes: HttpAuthScheme[];
52
+ /**
53
+ * experimentalIdentityAndAuth: Configuration of an HttpAuthSchemeProvider for a client which resolves which HttpAuthScheme to use.
54
+ * @internal
55
+ */
56
+ readonly httpAuthSchemeProvider: ProtonHttpAuthSchemeProvider;
57
+ }
58
+ /**
59
+ * @internal
60
+ */
61
+ export declare const resolveHttpAuthSchemeConfig: <T>(config: T & HttpAuthSchemeInputConfig & AwsSdkSigV4PreviouslyResolved) => T & HttpAuthSchemeResolvedConfig;
@@ -1,8 +1,9 @@
1
1
  import { AwsRegionExtensionConfiguration } from "@aws-sdk/types";
2
2
  import { HttpHandlerExtensionConfiguration } from "@smithy/protocol-http";
3
3
  import { DefaultExtensionConfiguration } from "@smithy/types";
4
+ import { HttpAuthExtensionConfiguration } from "./auth/httpAuthExtensionConfiguration";
4
5
  /**
5
6
  * @internal
6
7
  */
7
- export interface ProtonExtensionConfiguration extends HttpHandlerExtensionConfiguration, DefaultExtensionConfiguration, AwsRegionExtensionConfiguration {
8
+ export interface ProtonExtensionConfiguration extends HttpHandlerExtensionConfiguration, DefaultExtensionConfiguration, AwsRegionExtensionConfiguration, HttpAuthExtensionConfiguration {
8
9
  }
@@ -7,7 +7,7 @@ export declare const getRuntimeConfig: (config: ProtonClientConfig) => {
7
7
  runtime: string;
8
8
  defaultsMode: import("@smithy/types").Provider<import("@smithy/smithy-client").ResolvedDefaultsMode>;
9
9
  bodyLengthChecker: import("@smithy/types").BodyLengthCalculator;
10
- credentialDefaultProvider: (input: any) => import("@smithy/types").Provider<import("@aws-sdk/types").Credentials>;
10
+ credentialDefaultProvider: (input: any) => import("@smithy/types").AwsCredentialIdentityProvider;
11
11
  defaultUserAgentProvider: import("@smithy/types").Provider<import("@smithy/types").UserAgent>;
12
12
  maxAttempts: number | import("@smithy/types").Provider<number>;
13
13
  region: string | import("@smithy/types").Provider<any>;
@@ -36,11 +36,13 @@ export declare const getRuntimeConfig: (config: ProtonClientConfig) => {
36
36
  }) => import("@smithy/types").EndpointV2;
37
37
  tls?: boolean | undefined;
38
38
  retryStrategy?: import("@smithy/types").RetryStrategy | import("@smithy/types").RetryStrategyV2 | undefined;
39
- credentials?: import("@smithy/types").AwsCredentialIdentity | import("@smithy/types").Provider<import("@smithy/types").AwsCredentialIdentity> | undefined;
39
+ customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
40
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
41
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").ProtonHttpAuthSchemeProvider;
42
+ credentials?: import("@smithy/types").AwsCredentialIdentity | import("@smithy/types").AwsCredentialIdentityProvider | undefined;
40
43
  signer?: import("@smithy/types").RequestSigner | ((authScheme?: import("@smithy/types").AuthScheme | undefined) => Promise<import("@smithy/types").RequestSigner>) | undefined;
41
44
  signingEscapePath?: boolean | undefined;
42
45
  systemClockOffset?: number | undefined;
43
46
  signingRegion?: string | undefined;
44
47
  signerConstructor?: (new (options: import("@smithy/signature-v4").SignatureV4Init & import("@smithy/signature-v4").SignatureV4CryptoInit) => import("@smithy/types").RequestSigner) | undefined;
45
- customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
46
48
  };
@@ -36,11 +36,13 @@ export declare const getRuntimeConfig: (config: ProtonClientConfig) => {
36
36
  }) => import("@smithy/types").EndpointV2;
37
37
  tls?: boolean | undefined;
38
38
  retryStrategy?: import("@smithy/types").RetryStrategy | import("@smithy/types").RetryStrategyV2 | undefined;
39
- credentials?: import("@smithy/types").AwsCredentialIdentity | import("@smithy/types").Provider<import("@smithy/types").AwsCredentialIdentity> | undefined;
39
+ customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
40
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
41
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").ProtonHttpAuthSchemeProvider;
42
+ credentials?: import("@smithy/types").AwsCredentialIdentity | import("@smithy/types").AwsCredentialIdentityProvider | undefined;
40
43
  signer?: import("@smithy/types").RequestSigner | ((authScheme?: import("@smithy/types").AuthScheme | undefined) => Promise<import("@smithy/types").RequestSigner>) | undefined;
41
44
  signingEscapePath?: boolean | undefined;
42
45
  systemClockOffset?: number | undefined;
43
46
  signingRegion?: string | undefined;
44
47
  signerConstructor?: (new (options: import("@smithy/signature-v4").SignatureV4Init & import("@smithy/signature-v4").SignatureV4CryptoInit) => import("@smithy/types").RequestSigner) | undefined;
45
- customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
46
48
  };
@@ -21,9 +21,9 @@ export declare const getRuntimeConfig: (config: ProtonClientConfig) => {
21
21
  serviceId: string;
22
22
  useDualstackEndpoint: boolean | import("@smithy/types").Provider<boolean>;
23
23
  useFipsEndpoint: boolean | import("@smithy/types").Provider<boolean>;
24
- region: string | import("@smithy/types").Provider<any>;
25
- credentialDefaultProvider: (input: any) => import("@smithy/types").Provider<import("@aws-sdk/types").Credentials>;
26
24
  defaultUserAgentProvider: import("@smithy/types").Provider<import("@smithy/types").UserAgent>;
25
+ region: string | import("@smithy/types").Provider<any>;
26
+ credentialDefaultProvider: (input: any) => import("@smithy/types").AwsCredentialIdentityProvider;
27
27
  maxAttempts: number | import("@smithy/types").Provider<number>;
28
28
  retryMode: string | import("@smithy/types").Provider<string>;
29
29
  logger: import("@smithy/types").Logger;
@@ -35,11 +35,13 @@ export declare const getRuntimeConfig: (config: ProtonClientConfig) => {
35
35
  }) => import("@smithy/types").EndpointV2;
36
36
  tls?: boolean | undefined;
37
37
  retryStrategy?: import("@smithy/types").RetryStrategy | import("@smithy/types").RetryStrategyV2 | undefined;
38
- credentials?: import("@smithy/types").AwsCredentialIdentity | import("@smithy/types").Provider<import("@smithy/types").AwsCredentialIdentity> | undefined;
38
+ customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
39
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
40
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").ProtonHttpAuthSchemeProvider;
41
+ credentials?: import("@smithy/types").AwsCredentialIdentity | import("@smithy/types").AwsCredentialIdentityProvider | undefined;
39
42
  signer?: import("@smithy/types").RequestSigner | ((authScheme?: import("@smithy/types").AuthScheme | undefined) => Promise<import("@smithy/types").RequestSigner>) | undefined;
40
43
  signingEscapePath?: boolean | undefined;
41
44
  systemClockOffset?: number | undefined;
42
45
  signingRegion?: string | undefined;
43
46
  signerConstructor?: (new (options: import("@smithy/signature-v4").SignatureV4Init & import("@smithy/signature-v4").SignatureV4CryptoInit) => import("@smithy/types").RequestSigner) | undefined;
44
- customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
45
47
  };
@@ -11,6 +11,8 @@ export declare const getRuntimeConfig: (config: ProtonClientConfig) => {
11
11
  logger?: import("@smithy/types").Logger | undefined;
12
12
  }) => import("@smithy/types").EndpointV2;
13
13
  extensions: import("./runtimeExtensions").RuntimeExtension[];
14
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").ProtonHttpAuthSchemeProvider;
15
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
14
16
  logger: import("@smithy/types").Logger;
15
17
  serviceId: string;
16
18
  urlParser: import("@smithy/types").UrlParser;
@@ -2,15 +2,10 @@ import {
2
2
  HostHeaderInputConfig,
3
3
  HostHeaderResolvedConfig,
4
4
  } from "@aws-sdk/middleware-host-header";
5
- import {
6
- AwsAuthInputConfig,
7
- AwsAuthResolvedConfig,
8
- } from "@aws-sdk/middleware-signing";
9
5
  import {
10
6
  UserAgentInputConfig,
11
7
  UserAgentResolvedConfig,
12
8
  } from "@aws-sdk/middleware-user-agent";
13
- import { Credentials as __Credentials } from "@aws-sdk/types";
14
9
  import {
15
10
  RegionInputConfig,
16
11
  RegionResolvedConfig,
@@ -31,6 +26,7 @@ import {
31
26
  SmithyResolvedConfiguration as __SmithyResolvedConfiguration,
32
27
  } from "@smithy/smithy-client";
33
28
  import {
29
+ AwsCredentialIdentityProvider,
34
30
  BodyLengthCalculator as __BodyLengthCalculator,
35
31
  CheckOptionalClientConfig as __CheckOptionalClientConfig,
36
32
  ChecksumConstructor as __ChecksumConstructor,
@@ -45,6 +41,10 @@ import {
45
41
  UrlParser as __UrlParser,
46
42
  UserAgent as __UserAgent,
47
43
  } from "@smithy/types";
44
+ import {
45
+ HttpAuthSchemeInputConfig,
46
+ HttpAuthSchemeResolvedConfig,
47
+ } from "./auth/httpAuthSchemeProvider";
48
48
  import {
49
49
  AcceptEnvironmentAccountConnectionCommandInput,
50
50
  AcceptEnvironmentAccountConnectionCommandOutput,
@@ -592,9 +592,9 @@ export interface ClientDefaults
592
592
  serviceId?: string;
593
593
  useDualstackEndpoint?: boolean | __Provider<boolean>;
594
594
  useFipsEndpoint?: boolean | __Provider<boolean>;
595
- region?: string | __Provider<string>;
596
- credentialDefaultProvider?: (input: any) => __Provider<__Credentials>;
597
595
  defaultUserAgentProvider?: Provider<__UserAgent>;
596
+ region?: string | __Provider<string>;
597
+ credentialDefaultProvider?: (input: any) => AwsCredentialIdentityProvider;
598
598
  maxAttempts?: number | __Provider<number>;
599
599
  retryMode?: string | __Provider<string>;
600
600
  logger?: __Logger;
@@ -609,8 +609,8 @@ export type ProtonClientConfigType = Partial<
609
609
  EndpointInputConfig<EndpointParameters> &
610
610
  RetryInputConfig &
611
611
  HostHeaderInputConfig &
612
- AwsAuthInputConfig &
613
612
  UserAgentInputConfig &
613
+ HttpAuthSchemeInputConfig &
614
614
  ClientInputEndpointParameters;
615
615
  export interface ProtonClientConfig extends ProtonClientConfigType {}
616
616
  export type ProtonClientResolvedConfigType =
@@ -621,8 +621,8 @@ export type ProtonClientResolvedConfigType =
621
621
  EndpointResolvedConfig<EndpointParameters> &
622
622
  RetryResolvedConfig &
623
623
  HostHeaderResolvedConfig &
624
- AwsAuthResolvedConfig &
625
624
  UserAgentResolvedConfig &
625
+ HttpAuthSchemeResolvedConfig &
626
626
  ClientResolvedEndpointParameters;
627
627
  export interface ProtonClientResolvedConfig
628
628
  extends ProtonClientResolvedConfigType {}
@@ -637,4 +637,6 @@ export declare class ProtonClient extends __Client<
637
637
  ...[configuration]: __CheckOptionalClientConfig<ProtonClientConfig>
638
638
  );
639
639
  destroy(): void;
640
+ private getDefaultHttpAuthSchemeParametersProvider;
641
+ private getIdentityProviderConfigProvider;
640
642
  }
@@ -0,0 +1,32 @@
1
+ import {
2
+ AwsCredentialIdentity,
3
+ AwsCredentialIdentityProvider,
4
+ HttpAuthScheme,
5
+ } from "@smithy/types";
6
+ import { ProtonHttpAuthSchemeProvider } from "./httpAuthSchemeProvider";
7
+ export interface HttpAuthExtensionConfiguration {
8
+ setHttpAuthScheme(httpAuthScheme: HttpAuthScheme): void;
9
+ httpAuthSchemes(): HttpAuthScheme[];
10
+ setHttpAuthSchemeProvider(
11
+ httpAuthSchemeProvider: ProtonHttpAuthSchemeProvider
12
+ ): void;
13
+ httpAuthSchemeProvider(): ProtonHttpAuthSchemeProvider;
14
+ setCredentials(
15
+ credentials: AwsCredentialIdentity | AwsCredentialIdentityProvider
16
+ ): void;
17
+ credentials():
18
+ | AwsCredentialIdentity
19
+ | AwsCredentialIdentityProvider
20
+ | undefined;
21
+ }
22
+ export type HttpAuthRuntimeConfig = Partial<{
23
+ httpAuthSchemes: HttpAuthScheme[];
24
+ httpAuthSchemeProvider: ProtonHttpAuthSchemeProvider;
25
+ credentials: AwsCredentialIdentity | AwsCredentialIdentityProvider;
26
+ }>;
27
+ export declare const getHttpAuthExtensionConfiguration: (
28
+ runtimeConfig: HttpAuthRuntimeConfig
29
+ ) => HttpAuthExtensionConfiguration;
30
+ export declare const resolveHttpAuthRuntimeConfig: (
31
+ config: HttpAuthExtensionConfiguration
32
+ ) => HttpAuthRuntimeConfig;
@@ -0,0 +1,44 @@
1
+ import {
2
+ AwsSdkSigV4AuthInputConfig,
3
+ AwsSdkSigV4AuthResolvedConfig,
4
+ AwsSdkSigV4PreviouslyResolved,
5
+ } from "@aws-sdk/core";
6
+ import {
7
+ HandlerExecutionContext,
8
+ HttpAuthScheme,
9
+ HttpAuthSchemeParameters,
10
+ HttpAuthSchemeParametersProvider,
11
+ HttpAuthSchemeProvider,
12
+ } from "@smithy/types";
13
+ import { ProtonClientResolvedConfig } from "../ProtonClient";
14
+ export interface ProtonHttpAuthSchemeParameters
15
+ extends HttpAuthSchemeParameters {
16
+ region?: string;
17
+ }
18
+ export interface ProtonHttpAuthSchemeParametersProvider
19
+ extends HttpAuthSchemeParametersProvider<
20
+ ProtonClientResolvedConfig,
21
+ HandlerExecutionContext,
22
+ ProtonHttpAuthSchemeParameters,
23
+ object
24
+ > {}
25
+ export declare const defaultProtonHttpAuthSchemeParametersProvider: (
26
+ config: ProtonClientResolvedConfig,
27
+ context: HandlerExecutionContext,
28
+ input: object
29
+ ) => Promise<ProtonHttpAuthSchemeParameters>;
30
+ export interface ProtonHttpAuthSchemeProvider
31
+ extends HttpAuthSchemeProvider<ProtonHttpAuthSchemeParameters> {}
32
+ export declare const defaultProtonHttpAuthSchemeProvider: ProtonHttpAuthSchemeProvider;
33
+ export interface HttpAuthSchemeInputConfig extends AwsSdkSigV4AuthInputConfig {
34
+ httpAuthSchemes?: HttpAuthScheme[];
35
+ httpAuthSchemeProvider?: ProtonHttpAuthSchemeProvider;
36
+ }
37
+ export interface HttpAuthSchemeResolvedConfig
38
+ extends AwsSdkSigV4AuthResolvedConfig {
39
+ readonly httpAuthSchemes: HttpAuthScheme[];
40
+ readonly httpAuthSchemeProvider: ProtonHttpAuthSchemeProvider;
41
+ }
42
+ export declare const resolveHttpAuthSchemeConfig: <T>(
43
+ config: T & HttpAuthSchemeInputConfig & AwsSdkSigV4PreviouslyResolved
44
+ ) => T & HttpAuthSchemeResolvedConfig;
@@ -1,7 +1,9 @@
1
1
  import { AwsRegionExtensionConfiguration } from "@aws-sdk/types";
2
2
  import { HttpHandlerExtensionConfiguration } from "@smithy/protocol-http";
3
3
  import { DefaultExtensionConfiguration } from "@smithy/types";
4
+ import { HttpAuthExtensionConfiguration } from "./auth/httpAuthExtensionConfiguration";
4
5
  export interface ProtonExtensionConfiguration
5
6
  extends HttpHandlerExtensionConfiguration,
6
7
  DefaultExtensionConfiguration,
7
- AwsRegionExtensionConfiguration {}
8
+ AwsRegionExtensionConfiguration,
9
+ HttpAuthExtensionConfiguration {}
@@ -8,7 +8,7 @@ export declare const getRuntimeConfig: (config: ProtonClientConfig) => {
8
8
  bodyLengthChecker: import("@smithy/types").BodyLengthCalculator;
9
9
  credentialDefaultProvider: (
10
10
  input: any
11
- ) => import("@smithy/types").Provider<import("@aws-sdk/types").Credentials>;
11
+ ) => import("@smithy/types").AwsCredentialIdentityProvider;
12
12
  defaultUserAgentProvider: import("@smithy/types").Provider<
13
13
  import("@smithy/types").UserAgent
14
14
  >;
@@ -72,11 +72,12 @@ export declare const getRuntimeConfig: (config: ProtonClientConfig) => {
72
72
  | import("@smithy/types").RetryStrategy
73
73
  | import("@smithy/types").RetryStrategyV2
74
74
  | undefined;
75
+ customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
76
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
77
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").ProtonHttpAuthSchemeProvider;
75
78
  credentials?:
76
79
  | import("@smithy/types").AwsCredentialIdentity
77
- | import("@smithy/types").Provider<
78
- import("@smithy/types").AwsCredentialIdentity
79
- >
80
+ | import("@smithy/types").AwsCredentialIdentityProvider
80
81
  | undefined;
81
82
  signer?:
82
83
  | import("@smithy/types").RequestSigner
@@ -93,5 +94,4 @@ export declare const getRuntimeConfig: (config: ProtonClientConfig) => {
93
94
  import("@smithy/signature-v4").SignatureV4CryptoInit
94
95
  ) => import("@smithy/types").RequestSigner)
95
96
  | undefined;
96
- customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
97
97
  };
@@ -76,11 +76,12 @@ export declare const getRuntimeConfig: (config: ProtonClientConfig) => {
76
76
  | import("@smithy/types").RetryStrategy
77
77
  | import("@smithy/types").RetryStrategyV2
78
78
  | undefined;
79
+ customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
80
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
81
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").ProtonHttpAuthSchemeProvider;
79
82
  credentials?:
80
83
  | import("@smithy/types").AwsCredentialIdentity
81
- | import("@smithy/types").Provider<
82
- import("@smithy/types").AwsCredentialIdentity
83
- >
84
+ | import("@smithy/types").AwsCredentialIdentityProvider
84
85
  | undefined;
85
86
  signer?:
86
87
  | import("@smithy/types").RequestSigner
@@ -97,5 +98,4 @@ export declare const getRuntimeConfig: (config: ProtonClientConfig) => {
97
98
  import("@smithy/signature-v4").SignatureV4CryptoInit
98
99
  ) => import("@smithy/types").RequestSigner)
99
100
  | undefined;
100
- customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
101
101
  };
@@ -29,13 +29,13 @@ export declare const getRuntimeConfig: (config: ProtonClientConfig) => {
29
29
  serviceId: string;
30
30
  useDualstackEndpoint: boolean | import("@smithy/types").Provider<boolean>;
31
31
  useFipsEndpoint: boolean | import("@smithy/types").Provider<boolean>;
32
- region: string | import("@smithy/types").Provider<any>;
33
- credentialDefaultProvider: (
34
- input: any
35
- ) => import("@smithy/types").Provider<import("@aws-sdk/types").Credentials>;
36
32
  defaultUserAgentProvider: import("@smithy/types").Provider<
37
33
  import("@smithy/types").UserAgent
38
34
  >;
35
+ region: string | import("@smithy/types").Provider<any>;
36
+ credentialDefaultProvider: (
37
+ input: any
38
+ ) => import("@smithy/types").AwsCredentialIdentityProvider;
39
39
  maxAttempts: number | import("@smithy/types").Provider<number>;
40
40
  retryMode: string | import("@smithy/types").Provider<string>;
41
41
  logger: import("@smithy/types").Logger;
@@ -63,11 +63,12 @@ export declare const getRuntimeConfig: (config: ProtonClientConfig) => {
63
63
  | import("@smithy/types").RetryStrategy
64
64
  | import("@smithy/types").RetryStrategyV2
65
65
  | undefined;
66
+ customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
67
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
68
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").ProtonHttpAuthSchemeProvider;
66
69
  credentials?:
67
70
  | import("@smithy/types").AwsCredentialIdentity
68
- | import("@smithy/types").Provider<
69
- import("@smithy/types").AwsCredentialIdentity
70
- >
71
+ | import("@smithy/types").AwsCredentialIdentityProvider
71
72
  | undefined;
72
73
  signer?:
73
74
  | import("@smithy/types").RequestSigner
@@ -84,5 +85,4 @@ export declare const getRuntimeConfig: (config: ProtonClientConfig) => {
84
85
  import("@smithy/signature-v4").SignatureV4CryptoInit
85
86
  ) => import("@smithy/types").RequestSigner)
86
87
  | undefined;
87
- customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
88
88
  };
@@ -11,6 +11,8 @@ export declare const getRuntimeConfig: (config: ProtonClientConfig) => {
11
11
  }
12
12
  ) => import("@smithy/types").EndpointV2;
13
13
  extensions: import("./runtimeExtensions").RuntimeExtension[];
14
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").ProtonHttpAuthSchemeProvider;
15
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
14
16
  logger: import("@smithy/types").Logger;
15
17
  serviceId: string;
16
18
  urlParser: import("@smithy/types").UrlParser;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-proton",
3
3
  "description": "AWS SDK for JavaScript Proton Client for Node.js, Browser and React Native",
4
- "version": "3.509.0",
4
+ "version": "3.513.0",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
7
7
  "build:cjs": "node ../../scripts/compilation/inline client-proton",
@@ -20,21 +20,20 @@
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.507.0",
24
- "@aws-sdk/core": "3.496.0",
25
- "@aws-sdk/credential-provider-node": "3.509.0",
26
- "@aws-sdk/middleware-host-header": "3.502.0",
27
- "@aws-sdk/middleware-logger": "3.502.0",
28
- "@aws-sdk/middleware-recursion-detection": "3.502.0",
29
- "@aws-sdk/middleware-signing": "3.502.0",
30
- "@aws-sdk/middleware-user-agent": "3.502.0",
31
- "@aws-sdk/region-config-resolver": "3.502.0",
32
- "@aws-sdk/types": "3.502.0",
33
- "@aws-sdk/util-endpoints": "3.502.0",
34
- "@aws-sdk/util-user-agent-browser": "3.502.0",
35
- "@aws-sdk/util-user-agent-node": "3.502.0",
23
+ "@aws-sdk/client-sts": "3.513.0",
24
+ "@aws-sdk/core": "3.513.0",
25
+ "@aws-sdk/credential-provider-node": "3.513.0",
26
+ "@aws-sdk/middleware-host-header": "3.511.0",
27
+ "@aws-sdk/middleware-logger": "3.511.0",
28
+ "@aws-sdk/middleware-recursion-detection": "3.511.0",
29
+ "@aws-sdk/middleware-user-agent": "3.511.0",
30
+ "@aws-sdk/region-config-resolver": "3.511.0",
31
+ "@aws-sdk/types": "3.511.0",
32
+ "@aws-sdk/util-endpoints": "3.511.0",
33
+ "@aws-sdk/util-user-agent-browser": "3.511.0",
34
+ "@aws-sdk/util-user-agent-node": "3.511.0",
36
35
  "@smithy/config-resolver": "^2.1.1",
37
- "@smithy/core": "^1.3.1",
36
+ "@smithy/core": "^1.3.2",
38
37
  "@smithy/fetch-http-handler": "^2.4.1",
39
38
  "@smithy/hash-node": "^2.1.1",
40
39
  "@smithy/invalid-dependency": "^2.1.1",
@@ -53,8 +52,9 @@
53
52
  "@smithy/util-body-length-browser": "^2.1.1",
54
53
  "@smithy/util-body-length-node": "^2.2.1",
55
54
  "@smithy/util-defaults-mode-browser": "^2.1.1",
56
- "@smithy/util-defaults-mode-node": "^2.1.1",
55
+ "@smithy/util-defaults-mode-node": "^2.2.0",
57
56
  "@smithy/util-endpoints": "^1.1.1",
57
+ "@smithy/util-middleware": "^2.1.1",
58
58
  "@smithy/util-retry": "^2.1.1",
59
59
  "@smithy/util-utf8": "^2.1.1",
60
60
  "@smithy/util-waiter": "^2.1.1",