dependency-injection-cat
Version:
DI Cat is a truly clean DI-container, which allows you not to pollute your business logic with decorators from DI/IOC libraries!
36 lines (35 loc) • 2.02 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.registerBeans = void 0;
var isMethodBean_1 = require("../ts-helpers/predicates/isMethodBean");
var registerMethodBean_1 = require("./registerMethodBean");
var isClassPropertyBean_1 = require("../ts-helpers/predicates/isClassPropertyBean");
var registerPropertyBean_1 = require("./registerPropertyBean");
var BeanRepository_1 = require("./BeanRepository");
var isArrowFunctionBean_1 = require("../ts-helpers/predicates/isArrowFunctionBean");
var registerArrowFunctionBean_1 = require("./registerArrowFunctionBean");
var isExpressionBean_1 = require("../ts-helpers/predicates/isExpressionBean");
var registerExpressionBean_1 = require("./registerExpressionBean");
var isEmbeddedBean_1 = require("../ts-helpers/predicates/isEmbeddedBean");
var registerEmbeddedBeans_1 = require("./registerEmbeddedBeans");
function registerBeans(contextDescriptor) {
BeanRepository_1.BeanRepository.clearBeanInfoByContextDescriptor(contextDescriptor);
contextDescriptor.node.members.forEach(function (classElement) {
if ((0, isMethodBean_1.isMethodBean)(classElement)) {
(0, registerMethodBean_1.registerMethodBean)(contextDescriptor, classElement);
}
if ((0, isClassPropertyBean_1.isClassPropertyBean)(classElement)) {
(0, registerPropertyBean_1.registerPropertyBean)(contextDescriptor, classElement);
}
if ((0, isArrowFunctionBean_1.isArrowFunctionBean)(classElement)) {
(0, registerArrowFunctionBean_1.registerArrowFunctionBean)(contextDescriptor, classElement);
}
if ((0, isExpressionBean_1.isExpressionBean)(classElement)) {
(0, registerExpressionBean_1.registerExpressionBean)(contextDescriptor, classElement);
}
if ((0, isEmbeddedBean_1.isEmbeddedBean)(classElement)) {
(0, registerEmbeddedBeans_1.registerEmbeddedBean)(contextDescriptor, classElement);
}
});
}
exports.registerBeans = registerBeans;