@mongez/gnz
Version:
Generator Z, the next generation of scaffolding tools.
18 lines (17 loc) • 1.77 kB
JavaScript
;var fs=require('@mongez/fs'),chalk=require('chalk'),path=require('path'),namesFactory=require('../../../factories/names-factory.js');require('os'),require('eslint'),require('prettier');var throwIf=require('../../../utils/throw-if.js'),template=require('./template.js');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var chalk__default=/*#__PURE__*/_interopDefault(chalk);var path__default=/*#__PURE__*/_interopDefault(path);const generate = async (options) => {
const now = Date.now();
const { name, saveTo } = options;
options.className ||= namesFactory.namesFactory.restfulClassName(name);
options.exportName ||= namesFactory.namesFactory.restfulExportName(name);
options.repository ||= namesFactory.namesFactory.repositoryClassName(name);
options.repositoryPath ||= namesFactory.namesFactory.repositoryFilePath(name);
options.model ||= namesFactory.namesFactory.modelClassName(name);
options.modelPath ||= `./../models/${namesFactory.namesFactory.modelFolderPath(name)}`;
fs.ensureDirectory(saveTo);
options.fileName ||= namesFactory.namesFactory.restfulFilePath(name);
const Path = path__default.default.join(saveTo, `${options.fileName}.ts`);
throwIf.throwIf(fs.fileExists(Path), ` ${chalk__default.default.green(options.fileName)}.ts already exists in ${chalk__default.default.yellow(saveTo)}`);
const content = await template.gnWarlockRestful(options);
fs.putFile(Path, content);
console.log(` ${chalk__default.default.green(options.className)} has been generated successfully in ${chalk__default.default.cyan(saveTo + "/" + options.fileName)} ${chalk__default.default.gray(`(${Date.now() - now}ms)`)}`);
};exports.generate=generate;//# sourceMappingURL=generator.js.map