foalts2-cli
Version:
CLI tool for FoalTS
30 lines (29 loc) • 1.14 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createEntity = void 0;
// FoalTS
const path_1 = require("path");
const file_system_1 = require("../../file-system");
const utils_1 = require("../../utils");
function createEntity({ name }) {
const fs = new file_system_1.FileSystem();
let root = '';
if (fs.exists('src/app/entities')) {
root = 'src/app/entities';
}
else if (fs.exists('entities')) {
root = 'entities';
}
const names = utils_1.getNames(path_1.basename(name));
const subdir = path_1.dirname(name);
const isMongoDBProject = fs.projectHasDependency('mongodb');
fs
.cd(root)
.ensureDir(subdir)
.cd(subdir)
.renderOnlyIf(!isMongoDBProject, 'entity/entity.ts', `${names.kebabName}.entity.ts`, names)
.renderOnlyIf(isMongoDBProject, 'entity/entity.mongodb.ts', `${names.kebabName}.entity.ts`, names)
.ensureFile('index.ts')
.addNamedExportIn('index.ts', names.upperFirstCamelName, `./${names.kebabName}.entity`);
}
exports.createEntity = createEntity;