UNPKG

@kubb/cli

Version:

Command-line interface for Kubb, enabling easy generation of TypeScript, React-Query, Zod, and other code from OpenAPI specifications.

53 lines (51 loc) 1.4 kB
const require_chunk = require('./chunk-CNbaEX1y.cjs'); let citty = require("citty"); let node_process = require("node:process"); node_process = require_chunk.__toESM(node_process); let jiti = require("jiti"); //#region src/commands/validate.ts const jiti$1 = (0, jiti.createJiti)(require("url").pathToFileURL(__filename).href, { sourceMaps: true }); const command = (0, citty.defineCommand)({ meta: { name: "validate", description: "Validate a Swagger/OpenAPI file" }, args: { input: { type: "string", description: "Path to Swagger/OpenAPI file", alias: "i" }, help: { type: "boolean", description: "Show help", alias: "h", default: false } }, async run(commandContext) { const { args } = commandContext; if (args.help) return (0, citty.showUsage)(command); if (args.input) { let mod; try { mod = await jiti$1.import("@kubb/oas", { default: true }); } catch (_e) { console.error(`Import of '@kubb/oas' is required to do validation`); node_process.default.exit(1); } const { parse } = mod; try { await (await parse(args.input)).validate(); console.log("✅ Validation success"); } catch (error) { console.error("❌ Validation failed"); console.log(error?.message); node_process.default.exit(1); } } } }); //#endregion exports.default = command; //# sourceMappingURL=validate-BgYhe_55.cjs.map