UNPKG

sx-cli-tool

Version:

Laravel va Vue frameworklaridagi monolith arxitektura loyihalarni boshqarish uchun mo'ljallangan CLI tool

88 lines (87 loc) 3.61 kB
#!/usr/bin/env node "use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const commander_1 = require("commander"); const inquirer_1 = __importDefault(require("inquirer")); const child_process_1 = require("child_process"); const program = new commander_1.Command(); const tailwind_1 = require("./tailwind"); const laravel_1 = require("./laravel"); // start dev server program .command("start server") .description("start dev server") .action(() => __awaiter(void 0, void 0, void 0, function* () { (0, child_process_1.execSync)("yarn dev", { stdio: "inherit", cwd: __dirname }); })); // setup tailwind program .command("tailwind:setup") .description("setup tailwind") .action(() => __awaiter(void 0, void 0, void 0, function* () { const { framework, packageManager } = yield inquirer_1.default.prompt([ { type: "list", name: "framework", message: "Tailwind CSS setup qilinishi uchun frameworkni tanlang:", choices: ["Vue 3", "React", "Laravel + Vue 3", "Laravel + React"], }, { type: "list", name: "packageManager", message: "Package managerni tanlang:", choices: ["npm", "yarn", "pnpm"], }, ]); const projectPath = process.cwd(); switch (framework) { case "Vue 3": (0, tailwind_1.tailwindVueSetup)(projectPath, packageManager); break; case "React": (0, tailwind_1.tailwindReactSetup)(projectPath, packageManager); break; case "Laravel + Vue 3": (0, tailwind_1.tailwindLaravelVueSetup)(projectPath, packageManager); break; case "Laravel + React": // tailwindLaravelReactSetup(projectPath, packageManager); break; } })); // setup vue 3 in laravel program .command("laravel:vue-setup") .description("setup vue 3 in laravel") .action(() => __awaiter(void 0, void 0, void 0, function* () { const projectPath = process.cwd(); (0, laravel_1.laravelVueSetup)(projectPath); // tailwindLaravelVueSetup(projectPath, "yarn"); })); // setup react in laravel // program // .command("react:setup") // .description("setup react in laravel") // .action(async () => { // const projectPath = process.cwd(); // tailwindLaravelReactSetup(projectPath, "yarn"); // }); // generate entity program.command("generate-entity <entityName>").description("generate entity").action((entityName) => __awaiter(void 0, void 0, void 0, function* () { // open in browser const url = `http://localhost:3000/configure-entity/${entityName}?projectPath=${process.cwd()}`; (0, child_process_1.execSync)(`start ${url}`); })); program.parse(process.argv);