21 lines
652 B
TypeScript
21 lines
652 B
TypeScript
import { Command } from "commander";
|
|
import { registerProgramCommands } from "./command-registry.js";
|
|
import { createProgramContext } from "./context.js";
|
|
import { configureProgramHelp } from "./help.js";
|
|
import { registerPreActionHooks } from "./preaction.js";
|
|
import { setProgramContext } from "./program-context.js";
|
|
|
|
export function buildProgram() {
|
|
const program = new Command();
|
|
const ctx = createProgramContext();
|
|
const argv = process.argv;
|
|
|
|
setProgramContext(program, ctx);
|
|
configureProgramHelp(program, ctx);
|
|
registerPreActionHooks(program, ctx.programVersion);
|
|
|
|
registerProgramCommands(program, ctx, argv);
|
|
|
|
return program;
|
|
}
|