This repository has been archived on 2024-09-11. You can view files and clone it, but cannot push or open issues or pull requests.
svrjs-blog-newsletter/cronjob/node_modules/@smithy/node-config-provider/dist-cjs/index.js
2024-05-26 22:54:55 +02:00

87 lines
3.5 KiB
JavaScript

var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
// src/index.ts
var src_exports = {};
__export(src_exports, {
loadConfig: () => loadConfig
});
module.exports = __toCommonJS(src_exports);
// src/configLoader.ts
// src/fromEnv.ts
var import_property_provider = require("@smithy/property-provider");
var fromEnv = /* @__PURE__ */ __name((envVarSelector) => async () => {
try {
const config = envVarSelector(process.env);
if (config === void 0) {
throw new Error();
}
return config;
} catch (e) {
throw new import_property_provider.CredentialsProviderError(
e.message || `Cannot load config from environment variables with getter: ${envVarSelector}`
);
}
}, "fromEnv");
// src/fromSharedConfigFiles.ts
var import_shared_ini_file_loader = require("@smithy/shared-ini-file-loader");
var fromSharedConfigFiles = /* @__PURE__ */ __name((configSelector, { preferredFile = "config", ...init } = {}) => async () => {
const profile = (0, import_shared_ini_file_loader.getProfileName)(init);
const { configFile, credentialsFile } = await (0, import_shared_ini_file_loader.loadSharedConfigFiles)(init);
const profileFromCredentials = credentialsFile[profile] || {};
const profileFromConfig = configFile[profile] || {};
const mergedProfile = preferredFile === "config" ? { ...profileFromCredentials, ...profileFromConfig } : { ...profileFromConfig, ...profileFromCredentials };
try {
const cfgFile = preferredFile === "config" ? configFile : credentialsFile;
const configValue = configSelector(mergedProfile, cfgFile);
if (configValue === void 0) {
throw new Error();
}
return configValue;
} catch (e) {
throw new import_property_provider.CredentialsProviderError(
e.message || `Cannot load config for profile ${profile} in SDK configuration files with getter: ${configSelector}`
);
}
}, "fromSharedConfigFiles");
// src/fromStatic.ts
var isFunction = /* @__PURE__ */ __name((func) => typeof func === "function", "isFunction");
var fromStatic = /* @__PURE__ */ __name((defaultValue) => isFunction(defaultValue) ? async () => await defaultValue() : (0, import_property_provider.fromStatic)(defaultValue), "fromStatic");
// src/configLoader.ts
var loadConfig = /* @__PURE__ */ __name(({ environmentVariableSelector, configFileSelector, default: defaultValue }, configuration = {}) => (0, import_property_provider.memoize)(
(0, import_property_provider.chain)(
fromEnv(environmentVariableSelector),
fromSharedConfigFiles(configFileSelector, configuration),
fromStatic(defaultValue)
)
), "loadConfig");
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
loadConfig
});