@smithy/node-config-provider
Advanced tools
Comparing version 3.0.0 to 3.1.0
@@ -32,4 +32,20 @@ var __defProp = Object.defineProperty; | ||
var import_property_provider = require("@smithy/property-provider"); | ||
var fromEnv = /* @__PURE__ */ __name((envVarSelector) => async () => { | ||
// src/getSelectorName.ts | ||
function getSelectorName(functionString) { | ||
try { | ||
const constants = new Set(Array.from(functionString.match(/([A-Z_]){3,}/g) ?? [])); | ||
constants.delete("CONFIG"); | ||
constants.delete("CONFIG_PREFIX_SEPARATOR"); | ||
constants.delete("ENV"); | ||
return [...constants].join(", "); | ||
} catch (e) { | ||
return functionString; | ||
} | ||
} | ||
__name(getSelectorName, "getSelectorName"); | ||
// src/fromEnv.ts | ||
var fromEnv = /* @__PURE__ */ __name((envVarSelector, logger) => async () => { | ||
try { | ||
const config = envVarSelector(process.env); | ||
@@ -42,3 +58,4 @@ if (config === void 0) { | ||
throw new import_property_provider.CredentialsProviderError( | ||
e.message || `Cannot load config from environment variables with getter: ${envVarSelector}` | ||
e.message || `Not found in ENV: ${getSelectorName(envVarSelector.toString())}`, | ||
{ logger } | ||
); | ||
@@ -66,3 +83,4 @@ } | ||
throw new import_property_provider.CredentialsProviderError( | ||
e.message || `Cannot load config for profile ${profile} in SDK configuration files with getter: ${configSelector}` | ||
e.message || `Not found in config files w/ profile [${profile}]: ${getSelectorName(configSelector.toString())}`, | ||
{ logger: init.logger } | ||
); | ||
@@ -69,0 +87,0 @@ } |
import { CredentialsProviderError } from "@smithy/property-provider"; | ||
export const fromEnv = (envVarSelector) => async () => { | ||
import { getSelectorName } from "./getSelectorName"; | ||
export const fromEnv = (envVarSelector, logger) => async () => { | ||
try { | ||
@@ -11,4 +12,4 @@ const config = envVarSelector(process.env); | ||
catch (e) { | ||
throw new CredentialsProviderError(e.message || `Cannot load config from environment variables with getter: ${envVarSelector}`); | ||
throw new CredentialsProviderError(e.message || `Not found in ENV: ${getSelectorName(envVarSelector.toString())}`, { logger }); | ||
} | ||
}; |
import { CredentialsProviderError } from "@smithy/property-provider"; | ||
import { getProfileName, loadSharedConfigFiles } from "@smithy/shared-ini-file-loader"; | ||
import { getSelectorName } from "./getSelectorName"; | ||
export const fromSharedConfigFiles = (configSelector, { preferredFile = "config", ...init } = {}) => async () => { | ||
@@ -20,5 +21,4 @@ const profile = getProfileName(init); | ||
catch (e) { | ||
throw new CredentialsProviderError(e.message || | ||
`Cannot load config for profile ${profile} in SDK configuration files with getter: ${configSelector}`); | ||
throw new CredentialsProviderError(e.message || `Not found in config files w/ profile [${profile}]: ${getSelectorName(configSelector.toString())}`, { logger: init.logger }); | ||
} | ||
}; |
@@ -1,2 +0,2 @@ | ||
import { Provider } from "@smithy/types"; | ||
import { Logger, Provider } from "@smithy/types"; | ||
export type GetterFromEnv<T> = (env: Record<string, string | undefined>) => T | undefined; | ||
@@ -7,2 +7,2 @@ /** | ||
*/ | ||
export declare const fromEnv: <T = string>(envVarSelector: GetterFromEnv<T>) => Provider<T>; | ||
export declare const fromEnv: <T = string>(envVarSelector: GetterFromEnv<T>, logger?: Logger) => Provider<T>; |
@@ -1,2 +0,2 @@ | ||
import { Provider } from "@smithy/types"; | ||
import { Logger, Provider } from "@smithy/types"; | ||
export type GetterFromEnv<T> = (env: Record<string, string | undefined>) => T | undefined; | ||
@@ -7,2 +7,2 @@ /** | ||
*/ | ||
export declare const fromEnv: <T = string>(envVarSelector: GetterFromEnv<T>) => Provider<T>; | ||
export declare const fromEnv: <T = string>(envVarSelector: GetterFromEnv<T>, logger?: Logger) => Provider<T>; |
{ | ||
"name": "@smithy/node-config-provider", | ||
"version": "3.0.0", | ||
"version": "3.1.0", | ||
"description": "Load config default values from ini config files and environmental variable", | ||
@@ -27,4 +27,4 @@ "scripts": { | ||
"dependencies": { | ||
"@smithy/property-provider": "^3.0.0", | ||
"@smithy/shared-ini-file-loader": "^3.0.0", | ||
"@smithy/property-provider": "^3.1.0", | ||
"@smithy/shared-ini-file-loader": "^3.1.0", | ||
"@smithy/types": "^3.0.0", | ||
@@ -31,0 +31,0 @@ "tslib": "^2.6.2" |
26398
27
264