UNPKG

@luban-cli/cli-plugin-service

Version:
70 lines 3.14 kB
"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 minimist_1 = __importDefault(require("minimist")); const chokidar_1 = __importDefault(require("chokidar")); const cli_shared_utils_1 = require("@luban-cli/cli-shared-utils"); const child_process_1 = require("child_process"); const Service_1 = require("./Service"); const produce_1 = require("./produce"); const forkServePath = require.resolve("./forkServe.js"); const service = new Service_1.Service(process.cwd()); const rawArgv = process.argv.slice(2); const args = minimist_1.default(rawArgv); const command = args._[0]; (() => __awaiter(void 0, void 0, void 0, function* () { try { switch (command) { case "produce": yield produce_1.produce(true); break; case "build": case "inspect": yield service.run(command, args, rawArgv); break; case "serve": const mode = args.mode || "development"; let serve = child_process_1.fork(forkServePath, process.argv); ["SIGINT", "SIGTERM"].forEach((signal) => { process.on(signal, () => { serve.kill(signal); process.exit(); }); }); const watcher = chokidar_1.default.watch([ `${process.cwd()}/.env`, `${process.cwd()}/.env.${mode}*`, `${process.cwd()}/src/index.tsx`, `${process.cwd()}/src/route.ts`, `${process.cwd()}/luban.config.ts`, ]); watcher.on("change", (filepath) => { cli_shared_utils_1.clearConsole(); cli_shared_utils_1.info(filepath + " was changed"); cli_shared_utils_1.info("Try to restart server..."); serve.kill(); serve = child_process_1.fork(forkServePath, process.argv); }); break; default: yield service.run("help", args, rawArgv); break; } } catch (err) { console.error(err); process.exit(1); } }))(); //# sourceMappingURL=index.js.map