@kubb/cli
Version:
Command-line interface for Kubb, enabling easy generation of TypeScript, React-Query, Zod, and other code from OpenAPI specifications.
57 lines (53 loc) • 1.64 kB
JavaScript
import { defineCommand, runCommand, runMain } from 'citty';
import consola from 'consola';
import gradientString from 'gradient-string';
import getLatestVersion from 'latest-version';
import { lt } from 'semver';
// src/index.ts
// package.json
var version = "3.16.1";
// src/index.ts
var name = "kubb";
var main = defineCommand({
meta: {
name,
version,
description: "Kubb generation"
},
async setup({ rawArgs }) {
try {
consola.log(gradientString(["#F58517", "#F5A217", "#F55A17"])("Kubb CLI:"));
const latestVersion = await getLatestVersion("@kubb/cli");
if (lt(version, latestVersion)) {
consola.box({
title: "Update available for `Kubb` ",
message: `\`v${version}\` \u2192 \`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 import('./generate-65TMSGIL.js').then((r) => r.default);
await runCommand(generateCommand, { rawArgs });
process.exit(0);
}
},
subCommands: {
generate: () => import('./generate-65TMSGIL.js').then((r) => r.default),
validate: () => import('./validate-ONN45RYY.js').then((r) => r.default),
mcp: () => import('./mcp-LTBICXYR.js').then((r) => r.default)
}
});
async function run(_argv) {
await runMain(main);
}
export { run };
//# sourceMappingURL=index.js.map
//# sourceMappingURL=index.js.map