@blitzjs/cli
Version:
Blitz.js CLI
53 lines (52 loc) • 2.5 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CodeGen = void 0;
const tslib_1 = require("tslib");
const command_1 = require("@oclif/command");
const logging_1 = require("next/dist/server/lib/logging");
const get_package_json_1 = require("../utils/get-package-json");
const prisma_1 = require("./prisma");
class CodeGen extends command_1.Command {
run() {
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
this.parse(CodeGen);
try {
let routeSpinner = logging_1.log.spinner(`Generating route manifest`).start();
const { loadConfigProduction } = yield Promise.resolve().then(() => (0, tslib_1.__importStar)(require("next/dist/server/config-shared")));
const { saveRouteManifest } = yield Promise.resolve().then(() => (0, tslib_1.__importStar)(require("next/dist/build/routes")));
const config = loadConfigProduction(process.cwd());
void saveRouteManifest(process.cwd(), config).then(() => routeSpinner.succeed());
const { dependencies, devDependencies, prisma } = yield (0, get_package_json_1.getPackageJson)();
const hasPrisma = Object.keys(Object.assign(Object.assign({}, dependencies), devDependencies)).some((name) => name === "prisma");
const hasPrismaSchema = !!(prisma === null || prisma === void 0 ? void 0 : prisma.schema);
if (hasPrisma && hasPrismaSchema) {
let prismaSpinner = logging_1.log.spinner(`Generating Prisma client`).start();
void (0, prisma_1.runPrisma)(["generate"], true).then((result) => {
if (result.success) {
prismaSpinner.succeed();
}
else {
prismaSpinner.fail();
console.log("\n" + result.stderr);
process.exit(1);
}
});
}
}
catch (err) {
console.error(err);
process.exit(1);
}
});
}
}
exports.CodeGen = CodeGen;
CodeGen.description = "Generates Routes Manifest";
CodeGen.aliases = ["cg"];
CodeGen.flags = {
help: command_1.flags.help({ char: "h" }),
env: command_1.flags.string({
char: "e",
description: "Set app environment name",
}),
};