@akala/core
Version:
23 lines • 883 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const global_injector_1 = require("./global-injector");
function factory(name, ...toInject) {
return function (target) {
var instance = null;
var factory = function () {
if (!instance) {
var args = [null];
for (var arg in arguments)
args.push(arguments[arg]);
instance = new (target.bind.apply(target, args))();
}
return instance.build();
};
if (toInject == null || toInject.length == 0)
global_injector_1.registerFactory(name, global_injector_1.inject(factory));
else
global_injector_1.registerFactory(name, global_injector_1.injectWithName(toInject, factory));
};
}
exports.factory = factory;
//# sourceMappingURL=factory.js.map