@mongez/gnz
Version:
Generator Z, the next generation of scaffolding tools.
18 lines (17 loc) • 1.65 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 componentName = namesFactory.namesFactory.qwikPageComponent(options.name);
const now = Date.now();
const content = await template.gnQwikPage({
...options,
name: componentName,
});
const { saveTo } = options;
const componentPath = namesFactory.namesFactory.qwikPagePath(options.name);
fs.ensureDirectory(saveTo + "/" + componentPath);
const componentFullPath = path__default.default.join(saveTo, componentPath, "index.tsx");
throwIf.throwIf(fs.fileExists(componentFullPath), `${chalk__default.default.green("index.tsx")} file already exists in ${chalk__default.default.yellow(saveTo + "/" + componentPath)}`);
fs.putFile(componentFullPath, content);
console.log(`Component ${chalk__default.default.green(componentName)} page has been generated successfully in ${chalk__default.default.cyan(path__default.default
.relative(process.cwd(), path__default.default.join(path__default.default.resolve(saveTo), componentPath))
.replaceAll("\\", "/"))} ${chalk__default.default.gray(`(${Date.now() - now}ms)`)}`);
};exports.generate=generate;//# sourceMappingURL=generator.js.map