@baizey/dependency-injection
Version:
A simple typescript dependency injection
21 lines (20 loc) • 741 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.proxyLifetimes = proxyLifetimes;
var ServiceProvider_1 = require("../ServiceProvider");
function proxyLifetimes(services, providerMock) {
var provider = services.buildDebug();
Object.entries(providerMock).forEach(function (_a) {
var key = _a[0], value = _a[1];
var lifetime = provider.lifetimes[key];
switch (typeof value) {
case 'function':
lifetime.factory = value;
break;
default:
lifetime.factory = function () { return value; };
break;
}
});
return new ServiceProvider_1.DebugServiceProvider(provider.lifetimes);
}