@aws-sdk/client-codecatalyst 3.450.0 → 3.451.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 (31) hide show
  1. package/dist-cjs/CodeCatalystClient.js +17 -4
  2. package/dist-cjs/auth/httpAuthExtensionConfiguration.js +43 -0
  3. package/dist-cjs/auth/httpAuthSchemeProvider.js +39 -0
  4. package/dist-cjs/runtimeConfig.browser.js +11 -0
  5. package/dist-cjs/runtimeConfig.js +10 -0
  6. package/dist-cjs/runtimeConfig.shared.js +10 -0
  7. package/dist-cjs/runtimeExtensions.js +3 -0
  8. package/dist-es/CodeCatalystClient.js +17 -4
  9. package/dist-es/auth/httpAuthExtensionConfiguration.js +38 -0
  10. package/dist-es/auth/httpAuthSchemeProvider.js +33 -0
  11. package/dist-es/runtimeConfig.browser.js +11 -0
  12. package/dist-es/runtimeConfig.js +10 -0
  13. package/dist-es/runtimeConfig.shared.js +10 -0
  14. package/dist-es/runtimeExtensions.js +3 -0
  15. package/dist-types/CodeCatalystClient.d.ts +5 -3
  16. package/dist-types/auth/httpAuthExtensionConfiguration.d.ts +29 -0
  17. package/dist-types/auth/httpAuthSchemeProvider.d.ts +67 -0
  18. package/dist-types/extensionConfiguration.d.ts +2 -1
  19. package/dist-types/runtimeConfig.browser.d.ts +3 -1
  20. package/dist-types/runtimeConfig.d.ts +3 -1
  21. package/dist-types/runtimeConfig.native.d.ts +3 -1
  22. package/dist-types/runtimeConfig.shared.d.ts +2 -0
  23. package/dist-types/ts3.4/CodeCatalystClient.d.ts +8 -6
  24. package/dist-types/ts3.4/auth/httpAuthExtensionConfiguration.d.ts +27 -0
  25. package/dist-types/ts3.4/auth/httpAuthSchemeProvider.d.ts +40 -0
  26. package/dist-types/ts3.4/extensionConfiguration.d.ts +3 -1
  27. package/dist-types/ts3.4/runtimeConfig.browser.d.ts +5 -3
  28. package/dist-types/ts3.4/runtimeConfig.d.ts +5 -3
  29. package/dist-types/ts3.4/runtimeConfig.native.d.ts +5 -3
  30. package/dist-types/ts3.4/runtimeConfig.shared.d.ts +2 -0
  31. package/package.json +35 -33
@@ -4,18 +4,27 @@ exports.CodeCatalystClient = exports.__Client = void 0;
4
4
  const middleware_host_header_1 = require("@aws-sdk/middleware-host-header");
5
5
  const middleware_logger_1 = require("@aws-sdk/middleware-logger");
6
6
  const middleware_recursion_detection_1 = require("@aws-sdk/middleware-recursion-detection");
7
- const middleware_token_1 = require("@aws-sdk/middleware-token");
8
7
  const middleware_user_agent_1 = require("@aws-sdk/middleware-user-agent");
9
8
  const config_resolver_1 = require("@smithy/config-resolver");
9
+ const core_1 = require("@smithy/core");
10
10
  const middleware_content_length_1 = require("@smithy/middleware-content-length");
11
11
  const middleware_endpoint_1 = require("@smithy/middleware-endpoint");
12
12
  const middleware_retry_1 = require("@smithy/middleware-retry");
13
13
  const smithy_client_1 = require("@smithy/smithy-client");
14
14
  Object.defineProperty(exports, "__Client", { enumerable: true, get: function () { return smithy_client_1.Client; } });
15
+ const httpAuthSchemeProvider_1 = require("./auth/httpAuthSchemeProvider");
15
16
  const EndpointParameters_1 = require("./endpoint/EndpointParameters");
16
17
  const runtimeConfig_1 = require("./runtimeConfig");
17
18
  const runtimeExtensions_1 = require("./runtimeExtensions");
18
19
  class CodeCatalystClient extends smithy_client_1.Client {
20
+ getDefaultHttpAuthSchemeParametersProvider() {
21
+ return httpAuthSchemeProvider_1.defaultCodeCatalystHttpAuthSchemeParametersProvider;
22
+ }
23
+ getIdentityProviderConfigProvider() {
24
+ return async (config) => new core_1.DefaultIdentityProviderConfig({
25
+ "smithy.api#httpBearerAuth": config.token,
26
+ });
27
+ }
19
28
  constructor(...[configuration]) {
20
29
  const _config_0 = (0, runtimeConfig_1.getRuntimeConfig)(configuration || {});
21
30
  const _config_1 = (0, EndpointParameters_1.resolveClientEndpointParameters)(_config_0);
@@ -23,8 +32,8 @@ class CodeCatalystClient extends smithy_client_1.Client {
23
32
  const _config_3 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_2);
24
33
  const _config_4 = (0, middleware_retry_1.resolveRetryConfig)(_config_3);
25
34
  const _config_5 = (0, middleware_host_header_1.resolveHostHeaderConfig)(_config_4);
26
- const _config_6 = (0, middleware_token_1.resolveTokenConfig)(_config_5);
27
- const _config_7 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_6);
35
+ const _config_6 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_5);
36
+ const _config_7 = (0, httpAuthSchemeProvider_1.resolveHttpAuthSchemeConfig)(_config_6);
28
37
  const _config_8 = (0, runtimeExtensions_1.resolveRuntimeExtensions)(_config_7, configuration?.extensions || []);
29
38
  super(_config_8);
30
39
  this.config = _config_8;
@@ -33,8 +42,12 @@ class CodeCatalystClient extends smithy_client_1.Client {
33
42
  this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config));
34
43
  this.middlewareStack.use((0, middleware_logger_1.getLoggerPlugin)(this.config));
35
44
  this.middlewareStack.use((0, middleware_recursion_detection_1.getRecursionDetectionPlugin)(this.config));
36
- this.middlewareStack.use((0, middleware_token_1.getTokenPlugin)(this.config));
37
45
  this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config));
46
+ this.middlewareStack.use((0, core_1.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
47
+ identityProviderConfigProvider: this.getIdentityProviderConfigProvider(),
48
+ httpAuthSchemeParametersProvider: this.getDefaultHttpAuthSchemeParametersProvider(),
49
+ }));
50
+ this.middlewareStack.use((0, core_1.getHttpSigningPlugin)(this.config));
38
51
  }
39
52
  destroy() {
40
53
  super.destroy();
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveHttpAuthRuntimeConfig = exports.getHttpAuthExtensionConfiguration = void 0;
4
+ const getHttpAuthExtensionConfiguration = (runtimeConfig) => {
5
+ const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
6
+ let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
7
+ let _token = runtimeConfig.token;
8
+ return {
9
+ setHttpAuthScheme(httpAuthScheme) {
10
+ const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
11
+ if (index === -1) {
12
+ _httpAuthSchemes.push(httpAuthScheme);
13
+ }
14
+ else {
15
+ _httpAuthSchemes.splice(index, 1, httpAuthScheme);
16
+ }
17
+ },
18
+ httpAuthSchemes() {
19
+ return _httpAuthSchemes;
20
+ },
21
+ setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
22
+ _httpAuthSchemeProvider = httpAuthSchemeProvider;
23
+ },
24
+ httpAuthSchemeProvider() {
25
+ return _httpAuthSchemeProvider;
26
+ },
27
+ setToken(token) {
28
+ _token = token;
29
+ },
30
+ token() {
31
+ return _token;
32
+ },
33
+ };
34
+ };
35
+ exports.getHttpAuthExtensionConfiguration = getHttpAuthExtensionConfiguration;
36
+ const resolveHttpAuthRuntimeConfig = (config) => {
37
+ return {
38
+ httpAuthSchemes: config.httpAuthSchemes(),
39
+ httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
40
+ token: config.token(),
41
+ };
42
+ };
43
+ exports.resolveHttpAuthRuntimeConfig = resolveHttpAuthRuntimeConfig;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveHttpAuthSchemeConfig = exports.defaultCodeCatalystHttpAuthSchemeProvider = exports.defaultCodeCatalystHttpAuthSchemeParametersProvider = void 0;
4
+ const core_1 = require("@smithy/core");
5
+ const util_middleware_1 = require("@smithy/util-middleware");
6
+ const defaultCodeCatalystHttpAuthSchemeParametersProvider = async (config, context, input) => {
7
+ return {
8
+ operation: (0, util_middleware_1.getSmithyContext)(context).operation,
9
+ };
10
+ };
11
+ exports.defaultCodeCatalystHttpAuthSchemeParametersProvider = defaultCodeCatalystHttpAuthSchemeParametersProvider;
12
+ function createSmithyApiHttpBearerAuthHttpAuthOption(authParameters) {
13
+ return {
14
+ schemeId: "smithy.api#httpBearerAuth",
15
+ propertiesExtractor: (__config, context) => ({
16
+ identityProperties: {
17
+ __config,
18
+ },
19
+ }),
20
+ };
21
+ }
22
+ const defaultCodeCatalystHttpAuthSchemeProvider = (authParameters) => {
23
+ const options = [];
24
+ switch (authParameters.operation) {
25
+ default: {
26
+ options.push(createSmithyApiHttpBearerAuthHttpAuthOption(authParameters));
27
+ }
28
+ }
29
+ return options;
30
+ };
31
+ exports.defaultCodeCatalystHttpAuthSchemeProvider = defaultCodeCatalystHttpAuthSchemeProvider;
32
+ const resolveHttpAuthSchemeConfig = (config) => {
33
+ const token = (0, core_1.memoizeIdentityProvider)(config.token, core_1.isIdentityExpired, core_1.doesIdentityRequireRefresh);
34
+ return {
35
+ ...config,
36
+ token,
37
+ };
38
+ };
39
+ exports.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
@@ -6,6 +6,7 @@ const package_json_1 = tslib_1.__importDefault(require("../package.json"));
6
6
  const sha256_browser_1 = require("@aws-crypto/sha256-browser");
7
7
  const util_user_agent_browser_1 = require("@aws-sdk/util-user-agent-browser");
8
8
  const config_resolver_1 = require("@smithy/config-resolver");
9
+ const core_1 = require("@smithy/core");
9
10
  const fetch_http_handler_1 = require("@smithy/fetch-http-handler");
10
11
  const util_body_length_browser_1 = require("@smithy/util-body-length-browser");
11
12
  const util_retry_1 = require("@smithy/util-retry");
@@ -24,6 +25,16 @@ const getRuntimeConfig = (config) => {
24
25
  bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_browser_1.calculateBodyLength,
25
26
  defaultUserAgentProvider: config?.defaultUserAgentProvider ??
26
27
  (0, util_user_agent_browser_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
28
+ httpAuthSchemes: config?.httpAuthSchemes ?? [
29
+ {
30
+ schemeId: "smithy.api#httpBearerAuth",
31
+ identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#httpBearerAuth") ||
32
+ (async () => {
33
+ throw new Error("`token` is missing");
34
+ }),
35
+ signer: new core_1.HttpBearerAuthSigner(),
36
+ },
37
+ ],
27
38
  maxAttempts: config?.maxAttempts ?? util_retry_1.DEFAULT_MAX_ATTEMPTS,
28
39
  requestHandler: config?.requestHandler ?? new fetch_http_handler_1.FetchHttpHandler(defaultConfigProvider),
29
40
  retryMode: config?.retryMode ?? (async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE),
@@ -4,8 +4,10 @@ exports.getRuntimeConfig = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const package_json_1 = tslib_1.__importDefault(require("../package.json"));
6
6
  const core_1 = require("@aws-sdk/core");
7
+ const token_providers_1 = require("@aws-sdk/token-providers");
7
8
  const util_user_agent_node_1 = require("@aws-sdk/util-user-agent-node");
8
9
  const config_resolver_1 = require("@smithy/config-resolver");
10
+ const core_2 = require("@smithy/core");
9
11
  const hash_node_1 = require("@smithy/hash-node");
10
12
  const middleware_retry_1 = require("@smithy/middleware-retry");
11
13
  const node_config_provider_1 = require("@smithy/node-config-provider");
@@ -30,6 +32,14 @@ const getRuntimeConfig = (config) => {
30
32
  bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
31
33
  defaultUserAgentProvider: config?.defaultUserAgentProvider ??
32
34
  (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
35
+ httpAuthSchemes: config?.httpAuthSchemes ?? [
36
+ {
37
+ schemeId: "smithy.api#httpBearerAuth",
38
+ identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#httpBearerAuth") ||
39
+ (async (idProps) => await (0, token_providers_1.nodeProvider)(idProps?.__config || {})(idProps)),
40
+ signer: new core_2.HttpBearerAuthSigner(),
41
+ },
42
+ ],
33
43
  maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
34
44
  requestHandler: config?.requestHandler ?? new node_http_handler_1.NodeHttpHandler(defaultConfigProvider),
35
45
  retryMode: config?.retryMode ??
@@ -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("@smithy/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.defaultCodeCatalystHttpAuthSchemeProvider,
20
+ httpAuthSchemes: config?.httpAuthSchemes ?? [
21
+ {
22
+ schemeId: "smithy.api#httpBearerAuth",
23
+ identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#httpBearerAuth"),
24
+ signer: new core_1.HttpBearerAuthSigner(),
25
+ },
26
+ ],
17
27
  logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
18
28
  serviceId: config?.serviceId ?? "CodeCatalyst",
19
29
  urlParser: config?.urlParser ?? url_parser_1.parseUrl,
@@ -4,12 +4,14 @@ exports.resolveRuntimeExtensions = void 0;
4
4
  const region_config_resolver_1 = require("@aws-sdk/region-config-resolver");
5
5
  const protocol_http_1 = require("@smithy/protocol-http");
6
6
  const smithy_client_1 = require("@smithy/smithy-client");
7
+ const httpAuthExtensionConfiguration_1 = require("./auth/httpAuthExtensionConfiguration");
7
8
  const asPartial = (t) => t;
8
9
  const resolveRuntimeExtensions = (runtimeConfig, extensions) => {
9
10
  const extensionConfiguration = {
10
11
  ...asPartial((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig)),
11
12
  ...asPartial((0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig)),
12
13
  ...asPartial((0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
14
+ ...asPartial((0, httpAuthExtensionConfiguration_1.getHttpAuthExtensionConfiguration)(runtimeConfig)),
13
15
  };
14
16
  extensions.forEach((extension) => extension.configure(extensionConfiguration));
15
17
  return {
@@ -17,6 +19,7 @@ const resolveRuntimeExtensions = (runtimeConfig, extensions) => {
17
19
  ...(0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
18
20
  ...(0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration),
19
21
  ...(0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
22
+ ...(0, httpAuthExtensionConfiguration_1.resolveHttpAuthRuntimeConfig)(extensionConfiguration),
20
23
  };
21
24
  };
22
25
  exports.resolveRuntimeExtensions = resolveRuntimeExtensions;
@@ -1,18 +1,27 @@
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 { getTokenPlugin, resolveTokenConfig } from "@aws-sdk/middleware-token";
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 { defaultCodeCatalystHttpAuthSchemeParametersProvider, 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";
14
15
  export { __Client };
15
16
  export class CodeCatalystClient extends __Client {
17
+ getDefaultHttpAuthSchemeParametersProvider() {
18
+ return defaultCodeCatalystHttpAuthSchemeParametersProvider;
19
+ }
20
+ getIdentityProviderConfigProvider() {
21
+ return async (config) => new DefaultIdentityProviderConfig({
22
+ "smithy.api#httpBearerAuth": config.token,
23
+ });
24
+ }
16
25
  constructor(...[configuration]) {
17
26
  const _config_0 = __getRuntimeConfig(configuration || {});
18
27
  const _config_1 = resolveClientEndpointParameters(_config_0);
@@ -20,8 +29,8 @@ export class CodeCatalystClient extends __Client {
20
29
  const _config_3 = resolveEndpointConfig(_config_2);
21
30
  const _config_4 = resolveRetryConfig(_config_3);
22
31
  const _config_5 = resolveHostHeaderConfig(_config_4);
23
- const _config_6 = resolveTokenConfig(_config_5);
24
- const _config_7 = resolveUserAgentConfig(_config_6);
32
+ const _config_6 = resolveUserAgentConfig(_config_5);
33
+ const _config_7 = resolveHttpAuthSchemeConfig(_config_6);
25
34
  const _config_8 = resolveRuntimeExtensions(_config_7, configuration?.extensions || []);
26
35
  super(_config_8);
27
36
  this.config = _config_8;
@@ -30,8 +39,12 @@ export class CodeCatalystClient extends __Client {
30
39
  this.middlewareStack.use(getHostHeaderPlugin(this.config));
31
40
  this.middlewareStack.use(getLoggerPlugin(this.config));
32
41
  this.middlewareStack.use(getRecursionDetectionPlugin(this.config));
33
- this.middlewareStack.use(getTokenPlugin(this.config));
34
42
  this.middlewareStack.use(getUserAgentPlugin(this.config));
43
+ this.middlewareStack.use(getHttpAuthSchemeEndpointRuleSetPlugin(this.config, {
44
+ identityProviderConfigProvider: this.getIdentityProviderConfigProvider(),
45
+ httpAuthSchemeParametersProvider: this.getDefaultHttpAuthSchemeParametersProvider(),
46
+ }));
47
+ this.middlewareStack.use(getHttpSigningPlugin(this.config));
35
48
  }
36
49
  destroy() {
37
50
  super.destroy();
@@ -0,0 +1,38 @@
1
+ export const getHttpAuthExtensionConfiguration = (runtimeConfig) => {
2
+ const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
3
+ let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
4
+ let _token = runtimeConfig.token;
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
+ setToken(token) {
25
+ _token = token;
26
+ },
27
+ token() {
28
+ return _token;
29
+ },
30
+ };
31
+ };
32
+ export const resolveHttpAuthRuntimeConfig = (config) => {
33
+ return {
34
+ httpAuthSchemes: config.httpAuthSchemes(),
35
+ httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
36
+ token: config.token(),
37
+ };
38
+ };
@@ -0,0 +1,33 @@
1
+ import { doesIdentityRequireRefresh, isIdentityExpired, memoizeIdentityProvider } from "@smithy/core";
2
+ import { getSmithyContext } from "@smithy/util-middleware";
3
+ export const defaultCodeCatalystHttpAuthSchemeParametersProvider = async (config, context, input) => {
4
+ return {
5
+ operation: getSmithyContext(context).operation,
6
+ };
7
+ };
8
+ function createSmithyApiHttpBearerAuthHttpAuthOption(authParameters) {
9
+ return {
10
+ schemeId: "smithy.api#httpBearerAuth",
11
+ propertiesExtractor: (__config, context) => ({
12
+ identityProperties: {
13
+ __config,
14
+ },
15
+ }),
16
+ };
17
+ }
18
+ export const defaultCodeCatalystHttpAuthSchemeProvider = (authParameters) => {
19
+ const options = [];
20
+ switch (authParameters.operation) {
21
+ default: {
22
+ options.push(createSmithyApiHttpBearerAuthHttpAuthOption(authParameters));
23
+ }
24
+ }
25
+ return options;
26
+ };
27
+ export const resolveHttpAuthSchemeConfig = (config) => {
28
+ const token = memoizeIdentityProvider(config.token, isIdentityExpired, doesIdentityRequireRefresh);
29
+ return {
30
+ ...config,
31
+ token,
32
+ };
33
+ };
@@ -2,6 +2,7 @@ import packageInfo from "../package.json";
2
2
  import { Sha256 } from "@aws-crypto/sha256-browser";
3
3
  import { defaultUserAgent } from "@aws-sdk/util-user-agent-browser";
4
4
  import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@smithy/config-resolver";
5
+ import { HttpBearerAuthSigner } from "@smithy/core";
5
6
  import { FetchHttpHandler as RequestHandler, streamCollector } from "@smithy/fetch-http-handler";
6
7
  import { calculateBodyLength } from "@smithy/util-body-length-browser";
7
8
  import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@smithy/util-retry";
@@ -20,6 +21,16 @@ export const getRuntimeConfig = (config) => {
20
21
  bodyLengthChecker: config?.bodyLengthChecker ?? calculateBodyLength,
21
22
  defaultUserAgentProvider: config?.defaultUserAgentProvider ??
22
23
  defaultUserAgent({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }),
24
+ httpAuthSchemes: config?.httpAuthSchemes ?? [
25
+ {
26
+ schemeId: "smithy.api#httpBearerAuth",
27
+ identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#httpBearerAuth") ||
28
+ (async () => {
29
+ throw new Error("`token` is missing");
30
+ }),
31
+ signer: new HttpBearerAuthSigner(),
32
+ },
33
+ ],
23
34
  maxAttempts: config?.maxAttempts ?? DEFAULT_MAX_ATTEMPTS,
24
35
  requestHandler: config?.requestHandler ?? new RequestHandler(defaultConfigProvider),
25
36
  retryMode: config?.retryMode ?? (async () => (await defaultConfigProvider()).retryMode || DEFAULT_RETRY_MODE),
@@ -1,7 +1,9 @@
1
1
  import packageInfo from "../package.json";
2
2
  import { emitWarningIfUnsupportedVersion as awsCheckVersion } from "@aws-sdk/core";
3
+ import { nodeProvider } from "@aws-sdk/token-providers";
3
4
  import { defaultUserAgent } from "@aws-sdk/util-user-agent-node";
4
5
  import { NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, } from "@smithy/config-resolver";
6
+ import { HttpBearerAuthSigner } from "@smithy/core";
5
7
  import { Hash } from "@smithy/hash-node";
6
8
  import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@smithy/middleware-retry";
7
9
  import { loadConfig as loadNodeConfig } from "@smithy/node-config-provider";
@@ -26,6 +28,14 @@ export const getRuntimeConfig = (config) => {
26
28
  bodyLengthChecker: config?.bodyLengthChecker ?? calculateBodyLength,
27
29
  defaultUserAgentProvider: config?.defaultUserAgentProvider ??
28
30
  defaultUserAgent({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }),
31
+ httpAuthSchemes: config?.httpAuthSchemes ?? [
32
+ {
33
+ schemeId: "smithy.api#httpBearerAuth",
34
+ identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#httpBearerAuth") ||
35
+ (async (idProps) => await nodeProvider(idProps?.__config || {})(idProps)),
36
+ signer: new HttpBearerAuthSigner(),
37
+ },
38
+ ],
29
39
  maxAttempts: config?.maxAttempts ?? loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
30
40
  requestHandler: config?.requestHandler ?? new RequestHandler(defaultConfigProvider),
31
41
  retryMode: config?.retryMode ??
@@ -1,7 +1,9 @@
1
+ import { HttpBearerAuthSigner } from "@smithy/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 { defaultCodeCatalystHttpAuthSchemeProvider } 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 ?? defaultCodeCatalystHttpAuthSchemeProvider,
17
+ httpAuthSchemes: config?.httpAuthSchemes ?? [
18
+ {
19
+ schemeId: "smithy.api#httpBearerAuth",
20
+ identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#httpBearerAuth"),
21
+ signer: new HttpBearerAuthSigner(),
22
+ },
23
+ ],
14
24
  logger: config?.logger ?? new NoOpLogger(),
15
25
  serviceId: config?.serviceId ?? "CodeCatalyst",
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,5 +1,4 @@
1
1
  import { HostHeaderInputConfig, HostHeaderResolvedConfig } from "@aws-sdk/middleware-host-header";
2
- import { TokenInputConfig, TokenResolvedConfig } from "@aws-sdk/middleware-token";
3
2
  import { UserAgentInputConfig, UserAgentResolvedConfig } from "@aws-sdk/middleware-user-agent";
4
3
  import { RegionInputConfig, RegionResolvedConfig } from "@smithy/config-resolver";
5
4
  import { EndpointInputConfig, EndpointResolvedConfig } from "@smithy/middleware-endpoint";
@@ -7,6 +6,7 @@ import { RetryInputConfig, RetryResolvedConfig } from "@smithy/middleware-retry"
7
6
  import { HttpHandler as __HttpHandler } from "@smithy/protocol-http";
8
7
  import { Client as __Client, DefaultsMode as __DefaultsMode, SmithyConfiguration as __SmithyConfiguration, SmithyResolvedConfiguration as __SmithyResolvedConfiguration } from "@smithy/smithy-client";
9
8
  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";
9
+ import { HttpAuthSchemeInputConfig, HttpAuthSchemeResolvedConfig } from "./auth/httpAuthSchemeProvider";
10
10
  import { CreateAccessTokenCommandInput, CreateAccessTokenCommandOutput } from "./commands/CreateAccessTokenCommand";
11
11
  import { CreateDevEnvironmentCommandInput, CreateDevEnvironmentCommandOutput } from "./commands/CreateDevEnvironmentCommand";
12
12
  import { CreateProjectCommandInput, CreateProjectCommandOutput } from "./commands/CreateProjectCommand";
@@ -154,7 +154,7 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__
154
154
  /**
155
155
  * @public
156
156
  */
157
- export type CodeCatalystClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> & ClientDefaults & RegionInputConfig & EndpointInputConfig<EndpointParameters> & RetryInputConfig & HostHeaderInputConfig & TokenInputConfig & UserAgentInputConfig & ClientInputEndpointParameters;
157
+ export type CodeCatalystClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> & ClientDefaults & RegionInputConfig & EndpointInputConfig<EndpointParameters> & RetryInputConfig & HostHeaderInputConfig & UserAgentInputConfig & HttpAuthSchemeInputConfig & ClientInputEndpointParameters;
158
158
  /**
159
159
  * @public
160
160
  *
@@ -165,7 +165,7 @@ export interface CodeCatalystClientConfig extends CodeCatalystClientConfigType {
165
165
  /**
166
166
  * @public
167
167
  */
168
- export type CodeCatalystClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & Required<ClientDefaults> & RuntimeExtensionsConfig & RegionResolvedConfig & EndpointResolvedConfig<EndpointParameters> & RetryResolvedConfig & HostHeaderResolvedConfig & TokenResolvedConfig & UserAgentResolvedConfig & ClientResolvedEndpointParameters;
168
+ export type CodeCatalystClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & Required<ClientDefaults> & RuntimeExtensionsConfig & RegionResolvedConfig & EndpointResolvedConfig<EndpointParameters> & RetryResolvedConfig & HostHeaderResolvedConfig & UserAgentResolvedConfig & HttpAuthSchemeResolvedConfig & ClientResolvedEndpointParameters;
169
169
  /**
170
170
  * @public
171
171
  *
@@ -333,6 +333,8 @@ export declare class CodeCatalystClient extends __Client<__HttpHandlerOptions, S
333
333
  * The resolved configuration of CodeCatalystClient class. This is resolved and normalized from the {@link CodeCatalystClientConfig | constructor configuration interface}.
334
334
  */
335
335
  readonly config: CodeCatalystClientResolvedConfig;
336
+ private getDefaultHttpAuthSchemeParametersProvider;
337
+ private getIdentityProviderConfigProvider;
336
338
  constructor(...[configuration]: __CheckOptionalClientConfig<CodeCatalystClientConfig>);
337
339
  /**
338
340
  * Destroy underlying resources, like sockets. It's usually not necessary to do this.
@@ -0,0 +1,29 @@
1
+ import { HttpAuthScheme, TokenIdentity, TokenIdentityProvider } from "@smithy/types";
2
+ import { CodeCatalystHttpAuthSchemeProvider } from "./httpAuthSchemeProvider";
3
+ /**
4
+ * @internal
5
+ */
6
+ export interface HttpAuthExtensionConfiguration {
7
+ setHttpAuthScheme(httpAuthScheme: HttpAuthScheme): void;
8
+ httpAuthSchemes(): HttpAuthScheme[];
9
+ setHttpAuthSchemeProvider(httpAuthSchemeProvider: CodeCatalystHttpAuthSchemeProvider): void;
10
+ httpAuthSchemeProvider(): CodeCatalystHttpAuthSchemeProvider;
11
+ setToken(token: TokenIdentity | TokenIdentityProvider): void;
12
+ token(): TokenIdentity | TokenIdentityProvider | undefined;
13
+ }
14
+ /**
15
+ * @internal
16
+ */
17
+ export type HttpAuthRuntimeConfig = Partial<{
18
+ httpAuthSchemes: HttpAuthScheme[];
19
+ httpAuthSchemeProvider: CodeCatalystHttpAuthSchemeProvider;
20
+ token: TokenIdentity | TokenIdentityProvider;
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,67 @@
1
+ import { HandlerExecutionContext, HttpAuthScheme, HttpAuthSchemeParameters, HttpAuthSchemeParametersProvider, HttpAuthSchemeProvider, TokenIdentity, TokenIdentityProvider } from "@smithy/types";
2
+ import { CodeCatalystClientResolvedConfig } from "../CodeCatalystClient";
3
+ /**
4
+ * @internal
5
+ */
6
+ export interface CodeCatalystHttpAuthSchemeParameters extends HttpAuthSchemeParameters {
7
+ }
8
+ /**
9
+ * @internal
10
+ */
11
+ export interface CodeCatalystHttpAuthSchemeParametersProvider extends HttpAuthSchemeParametersProvider<CodeCatalystClientResolvedConfig, HandlerExecutionContext, CodeCatalystHttpAuthSchemeParameters, object> {
12
+ }
13
+ /**
14
+ * @internal
15
+ */
16
+ export declare const defaultCodeCatalystHttpAuthSchemeParametersProvider: (config: CodeCatalystClientResolvedConfig, context: HandlerExecutionContext, input: object) => Promise<CodeCatalystHttpAuthSchemeParameters>;
17
+ /**
18
+ * @internal
19
+ */
20
+ export interface CodeCatalystHttpAuthSchemeProvider extends HttpAuthSchemeProvider<CodeCatalystHttpAuthSchemeParameters> {
21
+ }
22
+ /**
23
+ * @internal
24
+ */
25
+ export declare const defaultCodeCatalystHttpAuthSchemeProvider: CodeCatalystHttpAuthSchemeProvider;
26
+ /**
27
+ * @internal
28
+ */
29
+ export interface HttpAuthSchemeInputConfig {
30
+ /**
31
+ * experimentalIdentityAndAuth: Configuration of HttpAuthSchemes for a client which provides default identity providers and signers per auth scheme.
32
+ * @internal
33
+ */
34
+ httpAuthSchemes?: HttpAuthScheme[];
35
+ /**
36
+ * experimentalIdentityAndAuth: Configuration of an HttpAuthSchemeProvider for a client which resolves which HttpAuthScheme to use.
37
+ * @internal
38
+ */
39
+ httpAuthSchemeProvider?: CodeCatalystHttpAuthSchemeProvider;
40
+ /**
41
+ * The token used to authenticate requests.
42
+ */
43
+ token?: TokenIdentity | TokenIdentityProvider;
44
+ }
45
+ /**
46
+ * @internal
47
+ */
48
+ export interface HttpAuthSchemeResolvedConfig {
49
+ /**
50
+ * experimentalIdentityAndAuth: Configuration of HttpAuthSchemes for a client which provides default identity providers and signers per auth scheme.
51
+ * @internal
52
+ */
53
+ readonly httpAuthSchemes: HttpAuthScheme[];
54
+ /**
55
+ * experimentalIdentityAndAuth: Configuration of an HttpAuthSchemeProvider for a client which resolves which HttpAuthScheme to use.
56
+ * @internal
57
+ */
58
+ readonly httpAuthSchemeProvider: CodeCatalystHttpAuthSchemeProvider;
59
+ /**
60
+ * The token used to authenticate requests.
61
+ */
62
+ readonly token?: TokenIdentityProvider;
63
+ }
64
+ /**
65
+ * @internal
66
+ */
67
+ export declare const resolveHttpAuthSchemeConfig: (config: HttpAuthSchemeInputConfig) => 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 CodeCatalystExtensionConfiguration extends HttpHandlerExtensionConfiguration, DefaultExtensionConfiguration, AwsRegionExtensionConfiguration {
8
+ export interface CodeCatalystExtensionConfiguration extends HttpHandlerExtensionConfiguration, DefaultExtensionConfiguration, AwsRegionExtensionConfiguration, HttpAuthExtensionConfiguration {
8
9
  }
@@ -8,6 +8,7 @@ export declare const getRuntimeConfig: (config: CodeCatalystClientConfig) => {
8
8
  defaultsMode: import("@smithy/types").Provider<import("@smithy/smithy-client").ResolvedDefaultsMode>;
9
9
  bodyLengthChecker: import("@smithy/types").BodyLengthCalculator;
10
10
  defaultUserAgentProvider: import("@smithy/types").Provider<import("@smithy/types").UserAgent>;
11
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
11
12
  maxAttempts: number | import("@smithy/types").Provider<number>;
12
13
  requestHandler: (import("@smithy/types").RequestHandler<any, any, import("@smithy/types").HttpHandlerOptions> & import("@smithy/types").RequestHandler<import("@smithy/protocol-http").HttpRequest, import("@smithy/protocol-http").HttpResponse, import("@smithy/types").HttpHandlerOptions> & {
13
14
  updateHttpClientConfig(key: never, value: never): void;
@@ -35,6 +36,7 @@ export declare const getRuntimeConfig: (config: CodeCatalystClientConfig) => {
35
36
  }) => import("@smithy/types").EndpointV2;
36
37
  tls?: boolean | undefined;
37
38
  retryStrategy?: import("@smithy/types").RetryStrategy | import("@smithy/types").RetryStrategyV2 | undefined;
38
- token?: import("@aws-sdk/types").TokenIdentity | import("@aws-sdk/types").TokenIdentityProvider | undefined;
39
39
  customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
40
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").CodeCatalystHttpAuthSchemeProvider;
41
+ token?: import("@smithy/types").TokenIdentity | import("@smithy/types").TokenIdentityProvider | undefined;
40
42
  };
@@ -8,6 +8,7 @@ export declare const getRuntimeConfig: (config: CodeCatalystClientConfig) => {
8
8
  defaultsMode: import("@smithy/types").Provider<import("@smithy/smithy-client").ResolvedDefaultsMode>;
9
9
  bodyLengthChecker: import("@smithy/types").BodyLengthCalculator;
10
10
  defaultUserAgentProvider: import("@smithy/types").Provider<import("@smithy/types").UserAgent>;
11
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
11
12
  maxAttempts: number | import("@smithy/types").Provider<number>;
12
13
  requestHandler: (import("@smithy/types").RequestHandler<any, any, import("@smithy/types").HttpHandlerOptions> & import("@smithy/types").RequestHandler<import("@smithy/protocol-http").HttpRequest, import("@smithy/protocol-http").HttpResponse, import("@smithy/types").HttpHandlerOptions> & {
13
14
  updateHttpClientConfig(key: never, value: never): void;
@@ -35,6 +36,7 @@ export declare const getRuntimeConfig: (config: CodeCatalystClientConfig) => {
35
36
  }) => import("@smithy/types").EndpointV2;
36
37
  tls?: boolean | undefined;
37
38
  retryStrategy?: import("@smithy/types").RetryStrategy | import("@smithy/types").RetryStrategyV2 | undefined;
38
- token?: import("@aws-sdk/types").TokenIdentity | import("@aws-sdk/types").TokenIdentityProvider | undefined;
39
39
  customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
40
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").CodeCatalystHttpAuthSchemeProvider;
41
+ token?: import("@smithy/types").TokenIdentity | import("@smithy/types").TokenIdentityProvider | undefined;
40
42
  };
@@ -34,6 +34,8 @@ export declare const getRuntimeConfig: (config: CodeCatalystClientConfig) => {
34
34
  }) => import("@smithy/types").EndpointV2;
35
35
  tls?: boolean | undefined;
36
36
  retryStrategy?: import("@smithy/types").RetryStrategy | import("@smithy/types").RetryStrategyV2 | undefined;
37
- token?: import("@aws-sdk/types").TokenIdentity | import("@aws-sdk/types").TokenIdentityProvider | undefined;
38
37
  customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
38
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
39
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").CodeCatalystHttpAuthSchemeProvider;
40
+ token?: import("@smithy/types").TokenIdentity | import("@smithy/types").TokenIdentityProvider | undefined;
39
41
  };
@@ -11,6 +11,8 @@ export declare const getRuntimeConfig: (config: CodeCatalystClientConfig) => {
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").CodeCatalystHttpAuthSchemeProvider;
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,10 +2,6 @@ import {
2
2
  HostHeaderInputConfig,
3
3
  HostHeaderResolvedConfig,
4
4
  } from "@aws-sdk/middleware-host-header";
5
- import {
6
- TokenInputConfig,
7
- TokenResolvedConfig,
8
- } from "@aws-sdk/middleware-token";
9
5
  import {
10
6
  UserAgentInputConfig,
11
7
  UserAgentResolvedConfig,
@@ -44,6 +40,10 @@ import {
44
40
  UrlParser as __UrlParser,
45
41
  UserAgent as __UserAgent,
46
42
  } from "@smithy/types";
43
+ import {
44
+ HttpAuthSchemeInputConfig,
45
+ HttpAuthSchemeResolvedConfig,
46
+ } from "./auth/httpAuthSchemeProvider";
47
47
  import {
48
48
  CreateAccessTokenCommandInput,
49
49
  CreateAccessTokenCommandOutput,
@@ -282,8 +282,8 @@ export type CodeCatalystClientConfigType = Partial<
282
282
  EndpointInputConfig<EndpointParameters> &
283
283
  RetryInputConfig &
284
284
  HostHeaderInputConfig &
285
- TokenInputConfig &
286
285
  UserAgentInputConfig &
286
+ HttpAuthSchemeInputConfig &
287
287
  ClientInputEndpointParameters;
288
288
  export interface CodeCatalystClientConfig
289
289
  extends CodeCatalystClientConfigType {}
@@ -295,8 +295,8 @@ export type CodeCatalystClientResolvedConfigType =
295
295
  EndpointResolvedConfig<EndpointParameters> &
296
296
  RetryResolvedConfig &
297
297
  HostHeaderResolvedConfig &
298
- TokenResolvedConfig &
299
298
  UserAgentResolvedConfig &
299
+ HttpAuthSchemeResolvedConfig &
300
300
  ClientResolvedEndpointParameters;
301
301
  export interface CodeCatalystClientResolvedConfig
302
302
  extends CodeCatalystClientResolvedConfigType {}
@@ -307,6 +307,8 @@ export declare class CodeCatalystClient extends __Client<
307
307
  CodeCatalystClientResolvedConfig
308
308
  > {
309
309
  readonly config: CodeCatalystClientResolvedConfig;
310
+ private getDefaultHttpAuthSchemeParametersProvider;
311
+ private getIdentityProviderConfigProvider;
310
312
  constructor(
311
313
  ...[configuration]: __CheckOptionalClientConfig<CodeCatalystClientConfig>
312
314
  );
@@ -0,0 +1,27 @@
1
+ import {
2
+ HttpAuthScheme,
3
+ TokenIdentity,
4
+ TokenIdentityProvider,
5
+ } from "@smithy/types";
6
+ import { CodeCatalystHttpAuthSchemeProvider } from "./httpAuthSchemeProvider";
7
+ export interface HttpAuthExtensionConfiguration {
8
+ setHttpAuthScheme(httpAuthScheme: HttpAuthScheme): void;
9
+ httpAuthSchemes(): HttpAuthScheme[];
10
+ setHttpAuthSchemeProvider(
11
+ httpAuthSchemeProvider: CodeCatalystHttpAuthSchemeProvider
12
+ ): void;
13
+ httpAuthSchemeProvider(): CodeCatalystHttpAuthSchemeProvider;
14
+ setToken(token: TokenIdentity | TokenIdentityProvider): void;
15
+ token(): TokenIdentity | TokenIdentityProvider | undefined;
16
+ }
17
+ export type HttpAuthRuntimeConfig = Partial<{
18
+ httpAuthSchemes: HttpAuthScheme[];
19
+ httpAuthSchemeProvider: CodeCatalystHttpAuthSchemeProvider;
20
+ token: TokenIdentity | TokenIdentityProvider;
21
+ }>;
22
+ export declare const getHttpAuthExtensionConfiguration: (
23
+ runtimeConfig: HttpAuthRuntimeConfig
24
+ ) => HttpAuthExtensionConfiguration;
25
+ export declare const resolveHttpAuthRuntimeConfig: (
26
+ config: HttpAuthExtensionConfiguration
27
+ ) => HttpAuthRuntimeConfig;
@@ -0,0 +1,40 @@
1
+ import {
2
+ HandlerExecutionContext,
3
+ HttpAuthScheme,
4
+ HttpAuthSchemeParameters,
5
+ HttpAuthSchemeParametersProvider,
6
+ HttpAuthSchemeProvider,
7
+ TokenIdentity,
8
+ TokenIdentityProvider,
9
+ } from "@smithy/types";
10
+ import { CodeCatalystClientResolvedConfig } from "../CodeCatalystClient";
11
+ export interface CodeCatalystHttpAuthSchemeParameters
12
+ extends HttpAuthSchemeParameters {}
13
+ export interface CodeCatalystHttpAuthSchemeParametersProvider
14
+ extends HttpAuthSchemeParametersProvider<
15
+ CodeCatalystClientResolvedConfig,
16
+ HandlerExecutionContext,
17
+ CodeCatalystHttpAuthSchemeParameters,
18
+ object
19
+ > {}
20
+ export declare const defaultCodeCatalystHttpAuthSchemeParametersProvider: (
21
+ config: CodeCatalystClientResolvedConfig,
22
+ context: HandlerExecutionContext,
23
+ input: object
24
+ ) => Promise<CodeCatalystHttpAuthSchemeParameters>;
25
+ export interface CodeCatalystHttpAuthSchemeProvider
26
+ extends HttpAuthSchemeProvider<CodeCatalystHttpAuthSchemeParameters> {}
27
+ export declare const defaultCodeCatalystHttpAuthSchemeProvider: CodeCatalystHttpAuthSchemeProvider;
28
+ export interface HttpAuthSchemeInputConfig {
29
+ httpAuthSchemes?: HttpAuthScheme[];
30
+ httpAuthSchemeProvider?: CodeCatalystHttpAuthSchemeProvider;
31
+ token?: TokenIdentity | TokenIdentityProvider;
32
+ }
33
+ export interface HttpAuthSchemeResolvedConfig {
34
+ readonly httpAuthSchemes: HttpAuthScheme[];
35
+ readonly httpAuthSchemeProvider: CodeCatalystHttpAuthSchemeProvider;
36
+ readonly token?: TokenIdentityProvider;
37
+ }
38
+ export declare const resolveHttpAuthSchemeConfig: (
39
+ config: HttpAuthSchemeInputConfig
40
+ ) => 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 CodeCatalystExtensionConfiguration
5
6
  extends HttpHandlerExtensionConfiguration,
6
7
  DefaultExtensionConfiguration,
7
- AwsRegionExtensionConfiguration {}
8
+ AwsRegionExtensionConfiguration,
9
+ HttpAuthExtensionConfiguration {}
@@ -9,6 +9,7 @@ export declare const getRuntimeConfig: (config: CodeCatalystClientConfig) => {
9
9
  defaultUserAgentProvider: import("@smithy/types").Provider<
10
10
  import("@smithy/types").UserAgent
11
11
  >;
12
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
12
13
  maxAttempts: number | import("@smithy/types").Provider<number>;
13
14
  requestHandler:
14
15
  | (import("@smithy/types").RequestHandler<
@@ -69,9 +70,10 @@ export declare const getRuntimeConfig: (config: CodeCatalystClientConfig) => {
69
70
  | import("@smithy/types").RetryStrategy
70
71
  | import("@smithy/types").RetryStrategyV2
71
72
  | undefined;
73
+ customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
74
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").CodeCatalystHttpAuthSchemeProvider;
72
75
  token?:
73
- | import("@aws-sdk/types").TokenIdentity
74
- | import("@aws-sdk/types").TokenIdentityProvider
76
+ | import("@smithy/types").TokenIdentity
77
+ | import("@smithy/types").TokenIdentityProvider
75
78
  | undefined;
76
- customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
77
79
  };
@@ -9,6 +9,7 @@ export declare const getRuntimeConfig: (config: CodeCatalystClientConfig) => {
9
9
  defaultUserAgentProvider: import("@smithy/types").Provider<
10
10
  import("@smithy/types").UserAgent
11
11
  >;
12
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
12
13
  maxAttempts: number | import("@smithy/types").Provider<number>;
13
14
  requestHandler:
14
15
  | (import("@smithy/types").RequestHandler<
@@ -69,9 +70,10 @@ export declare const getRuntimeConfig: (config: CodeCatalystClientConfig) => {
69
70
  | import("@smithy/types").RetryStrategy
70
71
  | import("@smithy/types").RetryStrategyV2
71
72
  | undefined;
73
+ customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
74
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").CodeCatalystHttpAuthSchemeProvider;
72
75
  token?:
73
- | import("@aws-sdk/types").TokenIdentity
74
- | import("@aws-sdk/types").TokenIdentityProvider
76
+ | import("@smithy/types").TokenIdentity
77
+ | import("@smithy/types").TokenIdentityProvider
75
78
  | undefined;
76
- customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
77
79
  };
@@ -60,9 +60,11 @@ export declare const getRuntimeConfig: (config: CodeCatalystClientConfig) => {
60
60
  | import("@smithy/types").RetryStrategy
61
61
  | import("@smithy/types").RetryStrategyV2
62
62
  | undefined;
63
+ customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
64
+ httpAuthSchemes: import("@smithy/types").HttpAuthScheme[];
65
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").CodeCatalystHttpAuthSchemeProvider;
63
66
  token?:
64
- | import("@aws-sdk/types").TokenIdentity
65
- | import("@aws-sdk/types").TokenIdentityProvider
67
+ | import("@smithy/types").TokenIdentity
68
+ | import("@smithy/types").TokenIdentityProvider
66
69
  | undefined;
67
- customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
68
70
  };
@@ -11,6 +11,8 @@ export declare const getRuntimeConfig: (config: CodeCatalystClientConfig) => {
11
11
  }
12
12
  ) => import("@smithy/types").EndpointV2;
13
13
  extensions: import("./runtimeExtensions").RuntimeExtension[];
14
+ httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").CodeCatalystHttpAuthSchemeProvider;
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-codecatalyst",
3
3
  "description": "AWS SDK for JavaScript Codecatalyst Client for Node.js, Browser and React Native",
4
- "version": "3.450.0",
4
+ "version": "3.451.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",
@@ -21,40 +21,42 @@
21
21
  "dependencies": {
22
22
  "@aws-crypto/sha256-browser": "3.0.0",
23
23
  "@aws-crypto/sha256-js": "3.0.0",
24
- "@aws-sdk/core": "3.445.0",
25
- "@aws-sdk/middleware-host-header": "3.449.0",
26
- "@aws-sdk/middleware-logger": "3.449.0",
27
- "@aws-sdk/middleware-recursion-detection": "3.449.0",
28
- "@aws-sdk/middleware-token": "3.449.0",
29
- "@aws-sdk/middleware-user-agent": "3.449.0",
30
- "@aws-sdk/region-config-resolver": "3.433.0",
31
- "@aws-sdk/types": "3.449.0",
32
- "@aws-sdk/util-endpoints": "3.449.0",
33
- "@aws-sdk/util-user-agent-browser": "3.449.0",
34
- "@aws-sdk/util-user-agent-node": "3.449.0",
35
- "@smithy/config-resolver": "^2.0.16",
36
- "@smithy/fetch-http-handler": "^2.2.4",
37
- "@smithy/hash-node": "^2.0.12",
38
- "@smithy/invalid-dependency": "^2.0.12",
39
- "@smithy/middleware-content-length": "^2.0.14",
40
- "@smithy/middleware-endpoint": "^2.1.3",
41
- "@smithy/middleware-retry": "^2.0.18",
42
- "@smithy/middleware-serde": "^2.0.12",
43
- "@smithy/middleware-stack": "^2.0.6",
44
- "@smithy/node-config-provider": "^2.1.3",
45
- "@smithy/node-http-handler": "^2.1.8",
46
- "@smithy/protocol-http": "^3.0.8",
47
- "@smithy/smithy-client": "^2.1.12",
48
- "@smithy/types": "^2.4.0",
49
- "@smithy/url-parser": "^2.0.12",
50
- "@smithy/util-base64": "^2.0.0",
24
+ "@aws-sdk/core": "3.451.0",
25
+ "@aws-sdk/middleware-host-header": "3.451.0",
26
+ "@aws-sdk/middleware-logger": "3.451.0",
27
+ "@aws-sdk/middleware-recursion-detection": "3.451.0",
28
+ "@aws-sdk/middleware-user-agent": "3.451.0",
29
+ "@aws-sdk/region-config-resolver": "3.451.0",
30
+ "@aws-sdk/token-providers": "3.451.0",
31
+ "@aws-sdk/types": "3.451.0",
32
+ "@aws-sdk/util-endpoints": "3.451.0",
33
+ "@aws-sdk/util-user-agent-browser": "3.451.0",
34
+ "@aws-sdk/util-user-agent-node": "3.451.0",
35
+ "@smithy/config-resolver": "^2.0.18",
36
+ "@smithy/core": "^1.0.1",
37
+ "@smithy/fetch-http-handler": "^2.2.6",
38
+ "@smithy/hash-node": "^2.0.15",
39
+ "@smithy/invalid-dependency": "^2.0.13",
40
+ "@smithy/middleware-content-length": "^2.0.15",
41
+ "@smithy/middleware-endpoint": "^2.2.0",
42
+ "@smithy/middleware-retry": "^2.0.20",
43
+ "@smithy/middleware-serde": "^2.0.13",
44
+ "@smithy/middleware-stack": "^2.0.7",
45
+ "@smithy/node-config-provider": "^2.1.5",
46
+ "@smithy/node-http-handler": "^2.1.9",
47
+ "@smithy/protocol-http": "^3.0.9",
48
+ "@smithy/smithy-client": "^2.1.15",
49
+ "@smithy/types": "^2.5.0",
50
+ "@smithy/url-parser": "^2.0.13",
51
+ "@smithy/util-base64": "^2.0.1",
51
52
  "@smithy/util-body-length-browser": "^2.0.0",
52
53
  "@smithy/util-body-length-node": "^2.1.0",
53
- "@smithy/util-defaults-mode-browser": "^2.0.16",
54
- "@smithy/util-defaults-mode-node": "^2.0.21",
55
- "@smithy/util-endpoints": "^1.0.2",
56
- "@smithy/util-retry": "^2.0.5",
57
- "@smithy/util-utf8": "^2.0.0",
54
+ "@smithy/util-defaults-mode-browser": "^2.0.19",
55
+ "@smithy/util-defaults-mode-node": "^2.0.25",
56
+ "@smithy/util-endpoints": "^1.0.4",
57
+ "@smithy/util-middleware": "^2.0.6",
58
+ "@smithy/util-retry": "^2.0.6",
59
+ "@smithy/util-utf8": "^2.0.2",
58
60
  "tslib": "^2.5.0"
59
61
  },
60
62
  "devDependencies": {