leds-spark-lib
Version:
Biblioteca de geração de código
22 lines • 1.04 kB
JavaScript
import path from "path";
import { isLocalEntity, isModule } from "../../../../models/model.js";
import fs from "fs";
import { generate as generateBaseControllers } from "./BaseControllers/generate.js";
import { generate as generateEntities } from "./Entities/generate.js";
export function generate(model, target_folder) {
const basecontrollers_folder = target_folder + "/BaseControllers";
const entities_folder = target_folder + "/Entities";
fs.mkdirSync(entities_folder, { recursive: true });
fs.mkdirSync(basecontrollers_folder, { recursive: true });
generateBaseControllers(model, basecontrollers_folder);
generateLoop(model, entities_folder);
}
function generateLoop(model, tgt_folder) {
const modules = model.abstractElements.filter(isModule);
for (const mod of modules) {
for (const cls of mod.elements.filter(isLocalEntity)) {
fs.writeFileSync(path.join(tgt_folder, `${cls.name}Controller.cs`), generateEntities(model, cls));
}
}
}
//# sourceMappingURL=generate.js.map