contexify
Version:
A TypeScript library providing a powerful dependency injection container with context-based IoC capabilities, inspired by LoopBack's Context system.
29 lines • 990 B
JavaScript
var __defProp = Object.defineProperty;
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
import { BindingKey } from "./binding-key.js";
class DefaultConfigurationResolver {
static {
__name(this, "DefaultConfigurationResolver");
}
context;
constructor(context) {
this.context = context;
}
getConfigAsValueOrPromise(key, propertyPath, resolutionOptions) {
const resolvedPropertyPath = propertyPath ?? "";
const configKey = configBindingKeyFor(key, resolvedPropertyPath);
const options = Object.assign({
optional: true
}, resolutionOptions);
return this.context.getValueOrPromise(configKey, options);
}
}
function configBindingKeyFor(key, propertyPath) {
return BindingKey.create(BindingKey.buildKeyForConfig(key).toString(), propertyPath);
}
__name(configBindingKeyFor, "configBindingKeyFor");
export {
DefaultConfigurationResolver,
configBindingKeyFor
};
//# sourceMappingURL=binding-config.js.map