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!
27 lines (26 loc) • 1.28 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var config_1 = require("../../external/config");
var getTransformerFactory_1 = require("../../core/transformers/getTransformerFactory");
var initContexts_1 = require("../../core/initContexts");
var CompilationContext_1 = require("../../compilation-context/CompilationContext");
var webpack_1 = __importDefault(require("../../plugins/webpack"));
var lodash_1 = require("lodash");
exports.default = (function (program, config) {
(0, config_1.initDiConfig)(config);
(0, initContexts_1.initContexts)();
var transformerFactory = (0, getTransformerFactory_1.getTransformerFactory)();
return function (context) { return function (sourceFile) {
var transformedSourceFile = transformerFactory(context)(sourceFile);
if (!(0, lodash_1.get)(webpack_1.default, 'isErrorsHandledByWebpack')) {
var errorMessage = CompilationContext_1.CompilationContext.getErrorMessage();
if (errorMessage !== null) {
throw new Error(errorMessage);
}
}
return transformedSourceFile;
}; };
});