UNPKG

next-dev

Version:

Tentu, berikut adalah markdown yang telah diperbaiki:

161 lines (160 loc) 7.44 kB
#!/usr/bin/env ts-node "use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const yargs_1 = __importDefault(require("yargs")); const helpers_1 = require("yargs/helpers"); require("colors"); const fs_1 = __importDefault(require("fs")); const isNextRootDir_1 = __importDefault(require("./isNextRootDir")); const generateDevBox_1 = __importDefault(require("./generateDevBox")); const generateApi_1 = __importDefault(require("./generateApi")); const generatePage_1 = __importDefault(require("./generatePage")); const clearDevBox_1 = __importDefault(require("./clearDevBox")); const generateTree_1 = __importDefault(require("./generateTree")); const generateModel_1 = __importDefault(require("./generateModel")); const generateExport_1 = __importDefault(require("./generateExport")); const devTest_1 = __importDefault(require("./devTest")); const path_1 = __importDefault(require("path")); const generatePrismaGlobal_1 = require("./generatePrismaGlobal"); const generateState_1 = __importDefault(require("./generateState")); const dir = 'src/lib/'; const createApiDirectory = () => { const apiDir = path_1.default.join(process.cwd(), dir); if (!fs_1.default.existsSync(apiDir)) { fs_1.default.mkdirSync(apiDir, { recursive: true }); console.log(dir, "Created directory"); } return apiDir; }; createApiDirectory(); (async () => { (0, yargs_1.default)((0, helpers_1.hideBin)(process.argv)) .command("gen-box", "generate DevBox", (yargs) => yargs.option("log", { alias: "l", type: "boolean", default: false, description: "print log to console" }) .example("next-dev gen-box", "Generate DevBox"), async (argv) => { (0, isNextRootDir_1.default)(); // await checkNextDir(); try { await (0, generateDevBox_1.default)(argv); } catch (error) { console.error(`Error generating DevBox: ${error}`.red); } }) .command("clear-box", "clear DevBox", (yargs) => yargs.option("log", { alias: "l", type: "boolean", default: false, description: "print log to console" }) .example("next-dev clear-box", "Clear DevBox"), async (argv) => { (0, isNextRootDir_1.default)(); // await checkNextDir(); try { await (0, clearDevBox_1.default)(argv); } catch (error) { console.error(`Error clearing DevBox: ${error}`.red); } }) .command("gen-api", "generate API", (yargs) => yargs.option("log", { alias: "l", type: "boolean", default: false, description: "print log to console" }) .example("next-dev gen-api", "Generate API"), async (argv) => { (0, isNextRootDir_1.default)(); // await checkNextDir(); try { await (0, generateApi_1.default)(argv); } catch (error) { console.error(`Error generating API: ${error}`.red); } }) .command("gen-page", "generate Page", (yargs) => yargs.option("log", { alias: "l", type: "boolean", default: false, description: "print log to console" }) .example("next-dev gen-page", "Generate page"), async (argv) => { (0, isNextRootDir_1.default)(); // await checkNextDir(); try { await (0, generatePage_1.default)(argv); } catch (error) { console.error(`Error generating Page: ${error}`.red); } }) .command("gen-tree", "generate Tree", (yargs) => yargs.option("log", { alias: "l", type: "boolean", default: false, description: "print log to console" }) .option("name", { alias: "n", type: "string", description: "file name without extension" }) .example("next-dev gen-tree -n index", "Generate tree"), async (argv) => { await (0, generateTree_1.default)(argv); }) .command("gen-model", "generate Model", (yargs) => yargs .option("log", { alias: "l", type: "boolean", default: false, description: "log" }) .option("url", { alias: "u", type: "string", description: "imput url" }) .option("name", { alias: "n", type: "string", default: "Model", description: "interface name" }) .option("out", { alias: "o", type: "string", default: "src/model", description: "output directory" }) .option("file", { alias: "f", type: "string", description: "input file" }) .option("dir", { alias: "d", type: "string", description: "input directory" }) .example("next-dev gen-model -u http://localhost:3000/api/ -o ./src/model", "Generate model"), async (argv) => { await (0, generateModel_1.default)(argv); }) .command("gen-export", "generate Export", (yargs) => yargs .option("log", { alias: "l", type: "boolean", default: false, description: "log" }) .option("dir", { alias: "d", type: "string", description: "directory", demandOption: true }) .option("listFilter", { alias: "f", type: "array", description: "list filter", coerce: (arg) => arg.map(String) }) .option("const", { alias: "c", type: "boolean", default: false, description: "generate const export" }) .example("next-dev gen-export -d ./src/model", "Generate export model"), async (argv) => { await (0, generateExport_1.default)(argv); }) .command("dev-test", "dev-test", (yargs) => yargs .option("log", { alias: "l", type: "boolean", default: false, description: "Mengaktifkan logging hasil pengujian" }) .option("url", { alias: "u", type: "string", description: "URL yang akan diuji (contoh: http://localhost:3000)", demandOption: true }) .option("connections", { alias: "c", type: "number", default: 200, description: "Jumlah koneksi bersamaan yang digunakan selama pengujian" }) .option("pipelining", { alias: "p", type: "number", default: 10, description: "Jumlah permintaan HTTP yang dipipelin" }) .option("rate", { alias: "r", type: "number", default: 1000, description: "Laju permintaan per detik" }) .option("workers", { alias: "w", type: "number", default: 4, description: "Jumlah thread pekerja yang digunakan" }) .option("duration", { alias: "d", type: "number", default: 60, description: "Durasi pengujian dalam detik" }) .example("next-dev dev-test --url http://localhost:3000 --connections 200 --pipelining 10 --rate 1000 --workers 4 --duration 60", "Menjalankan pengujian pengembangan dengan 200 koneksi, 10 permintaan pipelined, 1000 permintaan per detik, 4 thread pekerja, dan durasi 60 detik"), async (argv) => { await (0, devTest_1.default)(argv); }) .command("gen-prisma", "generate prisma global", yargs => yargs, async (argv) => { // await checkNextDir(); await (0, generatePrismaGlobal_1.funPrismaGlobal)(argv); }) .command("gen-state", "generate state", yargs => yargs, async (argv) => { // await checkNextDir(); await (0, generateState_1.default)(argv); }) .recommendCommands() .demandCommand(1) .help() .parse(); })();