@kubb/cli
Version: 
Command-line interface for Kubb, enabling easy generation of TypeScript, React-Query, Zod, and other code from OpenAPI specifications.
75 lines (72 loc) • 2.19 kB
JavaScript
const require_chunk = require('./chunk-DWy1uDak.cjs');
let citty = require("citty");
citty = require_chunk.__toESM(citty);
let consola = require("consola");
consola = require_chunk.__toESM(consola);
let gradient_string = require("gradient-string");
gradient_string = require_chunk.__toESM(gradient_string);
let latest_version = require("latest-version");
latest_version = require_chunk.__toESM(latest_version);
let semver = require("semver");
semver = require_chunk.__toESM(semver);
//#region package.json
var version = "4.1.1";
//#endregion
//#region src/index.ts
const main = (0, citty.defineCommand)({
	meta: {
		name: "kubb",
		version,
		description: "Kubb generation"
	},
	args: { version: {
		type: "boolean",
		alias: "v",
		description: "Show version number"
	} },
	async setup({ rawArgs, args }) {
		if (args.version) {
			console.log(version);
			process.exit(0);
		}
		try {
			consola.default.log((0, gradient_string.default)([
				"#F58517",
				"#F5A217",
				"#F55A17"
			])("Kubb CLI:"));
			const latestVersion = await (0, latest_version.default)("@kubb/cli");
			if ((0, semver.lt)(version, latestVersion)) consola.default.box({
				title: "Update available for `Kubb` ",
				message: `\`v${version}\` → \`v${latestVersion}\`
Run \`npm install -g @kubb/cli\` to update`,
				style: {
					padding: 2,
					borderColor: "yellow",
					borderStyle: "rounded"
				}
			});
		} catch (_e) {}
		if (![
			"generate",
			"validate",
			"mcp"
		].includes(rawArgs[0])) {
			console.log(rawArgs[0]);
			const generateCommand = await Promise.resolve().then(() => require("./generate-DKlT22M0.cjs")).then((r) => r.default);
			await (0, citty.runCommand)(generateCommand, { rawArgs });
			process.exit(0);
		}
	},
	subCommands: {
		generate: () => Promise.resolve().then(() => require("./generate-DKlT22M0.cjs")).then((r) => r.default),
		validate: () => Promise.resolve().then(() => require("./validate-DNbDDWp4.cjs")).then((r) => r.default),
		mcp: () => Promise.resolve().then(() => require("./mcp-CLmIdoaC.cjs")).then((r) => r.default)
	}
});
async function run(_argv) {
	await (0, citty.runMain)(main);
}
//#endregion
exports.run = run;
//# sourceMappingURL=index.cjs.map