ts-bakery
Version:
Baked dependency injection for Typescript.
33 lines • 1.68 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const DependencyConfigurationBuilder_1 = require("../Configuration/DependencyConfigurationBuilder");
const DependencyConfigurationWriter_1 = require("../Json/DependencyConfigurationWriter");
const TsBakeryConverter_1 = require("../Conversion/TsBakeryConverter");
const TsNodeConverter_1 = require("../Conversion/TsNodeConverter");
const Paths_1 = require("./Paths");
const ScriptIndex_1 = require("./ScriptIndex");
const TsBakeryConfig_1 = require("../Configuration/TsBakeryConfig");
const fs = require("fs");
const path = require("path");
function createDefaultConfigIfNotExists() {
const configPath = path.join(process.cwd(), 'ts-bakery.json');
if (!fs.existsSync(configPath)) {
const defaultConfig = { ...TsBakeryConfig_1.DEFAULT_TS_BAKERY_CONFIG, sourceRoot: "." };
fs.writeFileSync(configPath, JSON.stringify(defaultConfig, null, 2));
console.log('Created default ts-bakery.json configuration file');
}
}
function bake() {
createDefaultConfigIfNotExists();
const nodeConverter = new TsNodeConverter_1.default();
const bakeryConverter = new TsBakeryConverter_1.default();
const scriptIndex = new ScriptIndex_1.default(bakeryConverter);
scriptIndex.initialize(Paths_1.default.SourceRoot);
const configurationBuilder = new DependencyConfigurationBuilder_1.default(scriptIndex, bakeryConverter, nodeConverter);
const configuration = configurationBuilder.buildConfiguration();
const writer = new DependencyConfigurationWriter_1.default();
writer.write(configuration);
}
bake();
//# sourceMappingURL=CliBakery.js.map