19 lines
1.0 KiB
JavaScript
19 lines
1.0 KiB
JavaScript
|
|
import { getAwsRegionExtensionConfiguration, resolveAwsRegionExtensionConfiguration, } from "@aws-sdk/region-config-resolver";
|
||
|
|
import { getHttpHandlerExtensionConfiguration, resolveHttpHandlerRuntimeConfig } from "@smithy/protocol-http";
|
||
|
|
import { getDefaultExtensionConfiguration, resolveDefaultRuntimeConfig } from "@smithy/smithy-client";
|
||
|
|
const asPartial = (t) => t;
|
||
|
|
export const resolveRuntimeExtensions = (runtimeConfig, extensions) => {
|
||
|
|
const extensionConfiguration = {
|
||
|
|
...asPartial(getAwsRegionExtensionConfiguration(runtimeConfig)),
|
||
|
|
...asPartial(getDefaultExtensionConfiguration(runtimeConfig)),
|
||
|
|
...asPartial(getHttpHandlerExtensionConfiguration(runtimeConfig)),
|
||
|
|
};
|
||
|
|
extensions.forEach((extension) => extension.configure(extensionConfiguration));
|
||
|
|
return {
|
||
|
|
...runtimeConfig,
|
||
|
|
...resolveAwsRegionExtensionConfiguration(extensionConfiguration),
|
||
|
|
...resolveDefaultRuntimeConfig(extensionConfiguration),
|
||
|
|
...resolveHttpHandlerRuntimeConfig(extensionConfiguration),
|
||
|
|
};
|
||
|
|
};
|