@kubb/cli 5.0.0-alpha.38 → 5.0.0-alpha.39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/dist/{agent-DNZm3zOe.js → agent-C5JBC9Q9.js} +3 -3
  2. package/dist/{agent-DNZm3zOe.js.map → agent-C5JBC9Q9.js.map} +1 -1
  3. package/dist/{agent-CRQdwSar.cjs → agent-CWitLsL9.cjs} +47 -29
  4. package/dist/agent-CWitLsL9.cjs.map +1 -0
  5. package/dist/{agent-DqLV_BrR.cjs → agent-DLmDQD0F.cjs} +3 -3
  6. package/dist/{agent-DqLV_BrR.cjs.map → agent-DLmDQD0F.cjs.map} +1 -1
  7. package/dist/agent-poGbscec.js +105 -0
  8. package/dist/agent-poGbscec.js.map +1 -0
  9. package/dist/{generate-Cpvlmmdd.js → generate-D2Hks9WU.js} +2 -2
  10. package/dist/{generate-Cpvlmmdd.js.map → generate-D2Hks9WU.js.map} +1 -1
  11. package/dist/{generate-BrhbbkZi.cjs → generate-DFLmItdl.cjs} +3 -3
  12. package/dist/generate-DFLmItdl.cjs.map +1 -0
  13. package/dist/{generate-DYtIPCkP.js → generate-DKDEIomA.js} +3 -3
  14. package/dist/generate-DKDEIomA.js.map +1 -0
  15. package/dist/{generate-DL0JO-12.cjs → generate-igqqE8kf.cjs} +2 -2
  16. package/dist/{generate-DL0JO-12.cjs.map → generate-igqqE8kf.cjs.map} +1 -1
  17. package/dist/index.cjs +6 -6
  18. package/dist/index.js +6 -6
  19. package/dist/{init-CDTmO4nP.js → init-COdIsFXI.js} +2 -2
  20. package/dist/{init-CDTmO4nP.js.map → init-COdIsFXI.js.map} +1 -1
  21. package/dist/{init-B7Cxlo4Z.cjs → init-SDK46-nF.cjs} +2 -2
  22. package/dist/{init-B7Cxlo4Z.cjs.map → init-SDK46-nF.cjs.map} +1 -1
  23. package/dist/{mcp-BNtcPdx0.js → mcp-BWcUd86Y.js} +3 -3
  24. package/dist/{mcp-BNtcPdx0.js.map → mcp-BWcUd86Y.js.map} +1 -1
  25. package/dist/{mcp-CxuctqmK.js → mcp-B_FoDCTh.js} +9 -2
  26. package/dist/mcp-B_FoDCTh.js.map +1 -0
  27. package/dist/{mcp-9yURBP26.cjs → mcp-STc97s14.cjs} +9 -3
  28. package/dist/mcp-STc97s14.cjs.map +1 -0
  29. package/dist/{mcp-B-W6VZnj.cjs → mcp-aRv8LwaD.cjs} +3 -3
  30. package/dist/{mcp-B-W6VZnj.cjs.map → mcp-aRv8LwaD.cjs.map} +1 -1
  31. package/dist/package-B8NEPBIS.js +6 -0
  32. package/dist/package-B8NEPBIS.js.map +1 -0
  33. package/dist/{package-Di-_0gXB.cjs → package-Dd9j6cPm.cjs} +2 -2
  34. package/dist/package-Dd9j6cPm.cjs.map +1 -0
  35. package/dist/{validate-BzuJANpV.cjs → validate-B3kTGFEl.cjs} +3 -3
  36. package/dist/{validate-BzuJANpV.cjs.map → validate-B3kTGFEl.cjs.map} +1 -1
  37. package/dist/{validate-hNVTMue-.js → validate-COWutx4Y.js} +3 -3
  38. package/dist/{validate-hNVTMue-.js.map → validate-COWutx4Y.js.map} +1 -1
  39. package/dist/{validate-DIKeUU8K.cjs → validate-CqwT945Z.cjs} +3 -11
  40. package/dist/validate-CqwT945Z.cjs.map +1 -0
  41. package/dist/{validate-CIS8nJdd.js → validate-NZ0mduJ3.js} +3 -11
  42. package/dist/validate-NZ0mduJ3.js.map +1 -0
  43. package/package.json +5 -5
  44. package/src/runners/agent.ts +54 -29
  45. package/src/runners/validate.ts +3 -13
  46. package/src/utils/getSummary.ts +1 -1
  47. package/dist/agent-B_THuM3X.js +0 -87
  48. package/dist/agent-B_THuM3X.js.map +0 -1
  49. package/dist/agent-CRQdwSar.cjs.map +0 -1
  50. package/dist/generate-BrhbbkZi.cjs.map +0 -1
  51. package/dist/generate-DYtIPCkP.js.map +0 -1
  52. package/dist/jiti-Cd3S0xwr.cjs +0 -16
  53. package/dist/jiti-Cd3S0xwr.cjs.map +0 -1
  54. package/dist/jiti-e08mD2Ph.js +0 -11
  55. package/dist/jiti-e08mD2Ph.js.map +0 -1
  56. package/dist/mcp-9yURBP26.cjs.map +0 -1
  57. package/dist/mcp-CxuctqmK.js.map +0 -1
  58. package/dist/package-Di-_0gXB.cjs.map +0 -1
  59. package/dist/package-rp8ltIsX.js +0 -6
  60. package/dist/package-rp8ltIsX.js.map +0 -1
  61. package/dist/validate-CIS8nJdd.js.map +0 -1
  62. package/dist/validate-DIKeUU8K.cjs.map +0 -1
@@ -50,7 +50,7 @@ const command = require("./define-Bdn8j5VM.cjs").defineCommand({
50
50
  },
51
51
  async run({ values, positionals }) {
52
52
  const logLevel = values.debug ? "debug" : values.verbose ? "verbose" : values.silent ? "silent" : values.logLevel;
53
- const { runGenerateCommand } = await Promise.resolve().then(() => require("./generate-BrhbbkZi.cjs"));
53
+ const { runGenerateCommand } = await Promise.resolve().then(() => require("./generate-DFLmItdl.cjs"));
54
54
  await runGenerateCommand({
55
55
  input: positionals[0],
56
56
  configPath: values.config,
@@ -62,4 +62,4 @@ const command = require("./define-Bdn8j5VM.cjs").defineCommand({
62
62
  //#endregion
63
63
  exports.command = command;
64
64
 
65
- //# sourceMappingURL=generate-DL0JO-12.cjs.map
65
+ //# sourceMappingURL=generate-igqqE8kf.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"generate-DL0JO-12.cjs","names":["defineCommand"],"sources":["../src/commands/generate.ts"],"sourcesContent":["import { defineCommand } from '@internals/utils'\n\nexport const command = defineCommand({\n name: 'generate',\n description: \"[input] Generate files based on a 'kubb.config.ts' file\",\n arguments: ['[input]'],\n options: {\n config: { type: 'string', description: 'Path to the Kubb config', short: 'c' },\n logLevel: {\n type: 'string',\n description: 'Info, silent, verbose or debug',\n short: 'l',\n default: 'info',\n hint: 'silent|info|verbose|debug',\n enum: ['silent', 'info', 'verbose', 'debug'],\n },\n watch: { type: 'boolean', description: 'Watch mode based on the input file', short: 'w', default: false },\n debug: { type: 'boolean', description: 'Override logLevel to debug', short: 'd', default: false },\n verbose: { type: 'boolean', description: 'Override logLevel to verbose', short: 'v', default: false },\n silent: { type: 'boolean', description: 'Override logLevel to silent', short: 's', default: false },\n },\n async run({ values, positionals }) {\n const logLevel = values.debug ? 'debug' : values.verbose ? 'verbose' : values.silent ? 'silent' : values.logLevel\n const { runGenerateCommand } = await import('../runners/generate.ts')\n\n await runGenerateCommand({ input: positionals[0], configPath: values.config, logLevel, watch: values.watch })\n },\n})\n"],"mappings":";;AAEA,MAAa,2CAAUA,cAAc;CACnC,MAAM;CACN,aAAa;CACb,WAAW,CAAC,UAAU;CACtB,SAAS;EACP,QAAQ;GAAE,MAAM;GAAU,aAAa;GAA2B,OAAO;GAAK;EAC9E,UAAU;GACR,MAAM;GACN,aAAa;GACb,OAAO;GACP,SAAS;GACT,MAAM;GACN,MAAM;IAAC;IAAU;IAAQ;IAAW;IAAQ;GAC7C;EACD,OAAO;GAAE,MAAM;GAAW,aAAa;GAAsC,OAAO;GAAK,SAAS;GAAO;EACzG,OAAO;GAAE,MAAM;GAAW,aAAa;GAA8B,OAAO;GAAK,SAAS;GAAO;EACjG,SAAS;GAAE,MAAM;GAAW,aAAa;GAAgC,OAAO;GAAK,SAAS;GAAO;EACrG,QAAQ;GAAE,MAAM;GAAW,aAAa;GAA+B,OAAO;GAAK,SAAS;GAAO;EACpG;CACD,MAAM,IAAI,EAAE,QAAQ,eAAe;EACjC,MAAM,WAAW,OAAO,QAAQ,UAAU,OAAO,UAAU,YAAY,OAAO,SAAS,WAAW,OAAO;EACzG,MAAM,EAAE,uBAAuB,MAAA,QAAA,SAAA,CAAA,WAAA,QAAM,0BAAA,CAAA;AAErC,QAAM,mBAAmB;GAAE,OAAO,YAAY;GAAI,YAAY,OAAO;GAAQ;GAAU,OAAO,OAAO;GAAO,CAAC;;CAEhH,CAAC"}
1
+ {"version":3,"file":"generate-igqqE8kf.cjs","names":["defineCommand"],"sources":["../src/commands/generate.ts"],"sourcesContent":["import { defineCommand } from '@internals/utils'\n\nexport const command = defineCommand({\n name: 'generate',\n description: \"[input] Generate files based on a 'kubb.config.ts' file\",\n arguments: ['[input]'],\n options: {\n config: { type: 'string', description: 'Path to the Kubb config', short: 'c' },\n logLevel: {\n type: 'string',\n description: 'Info, silent, verbose or debug',\n short: 'l',\n default: 'info',\n hint: 'silent|info|verbose|debug',\n enum: ['silent', 'info', 'verbose', 'debug'],\n },\n watch: { type: 'boolean', description: 'Watch mode based on the input file', short: 'w', default: false },\n debug: { type: 'boolean', description: 'Override logLevel to debug', short: 'd', default: false },\n verbose: { type: 'boolean', description: 'Override logLevel to verbose', short: 'v', default: false },\n silent: { type: 'boolean', description: 'Override logLevel to silent', short: 's', default: false },\n },\n async run({ values, positionals }) {\n const logLevel = values.debug ? 'debug' : values.verbose ? 'verbose' : values.silent ? 'silent' : values.logLevel\n const { runGenerateCommand } = await import('../runners/generate.ts')\n\n await runGenerateCommand({ input: positionals[0], configPath: values.config, logLevel, watch: values.watch })\n },\n})\n"],"mappings":";;AAEA,MAAa,2CAAUA,cAAc;CACnC,MAAM;CACN,aAAa;CACb,WAAW,CAAC,UAAU;CACtB,SAAS;EACP,QAAQ;GAAE,MAAM;GAAU,aAAa;GAA2B,OAAO;GAAK;EAC9E,UAAU;GACR,MAAM;GACN,aAAa;GACb,OAAO;GACP,SAAS;GACT,MAAM;GACN,MAAM;IAAC;IAAU;IAAQ;IAAW;IAAQ;GAC7C;EACD,OAAO;GAAE,MAAM;GAAW,aAAa;GAAsC,OAAO;GAAK,SAAS;GAAO;EACzG,OAAO;GAAE,MAAM;GAAW,aAAa;GAA8B,OAAO;GAAK,SAAS;GAAO;EACjG,SAAS;GAAE,MAAM;GAAW,aAAa;GAAgC,OAAO;GAAK,SAAS;GAAO;EACrG,QAAQ;GAAE,MAAM;GAAW,aAAa;GAA+B,OAAO;GAAK,SAAS;GAAO;EACpG;CACD,MAAM,IAAI,EAAE,QAAQ,eAAe;EACjC,MAAM,WAAW,OAAO,QAAQ,UAAU,OAAO,UAAU,YAAY,OAAO,SAAS,WAAW,OAAO;EACzG,MAAM,EAAE,uBAAuB,MAAA,QAAA,SAAA,CAAA,WAAA,QAAM,0BAAA,CAAA;AAErC,QAAM,mBAAmB;GAAE,OAAO,YAAY;GAAI,YAAY,OAAO;GAAQ;GAAU,OAAO,OAAO;GAAO,CAAC;;CAEhH,CAAC"}
package/dist/index.cjs CHANGED
@@ -2,7 +2,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("./chunk-ByKO4r7w.cjs");
3
3
  const require_define = require("./define-Bdn8j5VM.cjs");
4
4
  const require_telemetry = require("./telemetry-D_Bi2E3I.cjs");
5
- const require_package = require("./package-Di-_0gXB.cjs");
5
+ const require_package = require("./package-Dd9j6cPm.cjs");
6
6
  const require_constants = require("./constants-D0XHAHeZ.cjs");
7
7
  let node_util = require("node:util");
8
8
  //#region ../../internals/utils/src/cli/schema.ts
@@ -246,11 +246,11 @@ function shouldShowTelemetryNotice(argv) {
246
246
  }
247
247
  async function run(argv = process.argv) {
248
248
  if (shouldShowTelemetryNotice(argv)) console.log(`${(0, node_util.styleText)("yellow", "Notice:")} Kubb collects anonymous telemetry data to help improve the tool. No personal data or file contents are collected. \nTo disable, set ${(0, node_util.styleText)("cyan", "KUBB_DISABLE_TELEMETRY=1")}.\n`);
249
- const { command: generateCommand } = await Promise.resolve().then(() => require("./generate-DL0JO-12.cjs"));
250
- const { command: validateCommand } = await Promise.resolve().then(() => require("./validate-BzuJANpV.cjs"));
251
- const { command: mcpCommand } = await Promise.resolve().then(() => require("./mcp-B-W6VZnj.cjs"));
252
- const { command: agentCommand } = await Promise.resolve().then(() => require("./agent-DqLV_BrR.cjs"));
253
- const { command: initCommand } = await Promise.resolve().then(() => require("./init-B7Cxlo4Z.cjs"));
249
+ const { command: generateCommand } = await Promise.resolve().then(() => require("./generate-igqqE8kf.cjs"));
250
+ const { command: validateCommand } = await Promise.resolve().then(() => require("./validate-B3kTGFEl.cjs"));
251
+ const { command: mcpCommand } = await Promise.resolve().then(() => require("./mcp-aRv8LwaD.cjs"));
252
+ const { command: agentCommand } = await Promise.resolve().then(() => require("./agent-DLmDQD0F.cjs"));
253
+ const { command: initCommand } = await Promise.resolve().then(() => require("./init-SDK46-nF.cjs"));
254
254
  await cli.run([
255
255
  generateCommand,
256
256
  validateCommand,
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import "./chunk--u3MIqq1.js";
2
2
  import { t as defineCLIAdapter } from "./define-Ctii4bel.js";
3
3
  import { n as isTelemetryDisabled } from "./telemetry-CBISr5w4.js";
4
- import { t as version } from "./package-rp8ltIsX.js";
4
+ import { t as version } from "./package-B8NEPBIS.js";
5
5
  import { r as QUITE_FLAGS } from "./constants-DJM9zCXm.js";
6
6
  import { parseArgs, styleText } from "node:util";
7
7
  //#region ../../internals/utils/src/cli/schema.ts
@@ -245,11 +245,11 @@ function shouldShowTelemetryNotice(argv) {
245
245
  }
246
246
  async function run(argv = process.argv) {
247
247
  if (shouldShowTelemetryNotice(argv)) console.log(`${styleText("yellow", "Notice:")} Kubb collects anonymous telemetry data to help improve the tool. No personal data or file contents are collected. \nTo disable, set ${styleText("cyan", "KUBB_DISABLE_TELEMETRY=1")}.\n`);
248
- const { command: generateCommand } = await import("./generate-Cpvlmmdd.js");
249
- const { command: validateCommand } = await import("./validate-hNVTMue-.js");
250
- const { command: mcpCommand } = await import("./mcp-BNtcPdx0.js");
251
- const { command: agentCommand } = await import("./agent-DNZm3zOe.js");
252
- const { command: initCommand } = await import("./init-CDTmO4nP.js");
248
+ const { command: generateCommand } = await import("./generate-D2Hks9WU.js");
249
+ const { command: validateCommand } = await import("./validate-COWutx4Y.js");
250
+ const { command: mcpCommand } = await import("./mcp-BWcUd86Y.js");
251
+ const { command: agentCommand } = await import("./agent-C5JBC9Q9.js");
252
+ const { command: initCommand } = await import("./init-COdIsFXI.js");
253
253
  await cli.run([
254
254
  generateCommand,
255
255
  validateCommand,
@@ -1,6 +1,6 @@
1
1
  import "./chunk--u3MIqq1.js";
2
2
  import { n as defineCommand } from "./define-Ctii4bel.js";
3
- import { t as version } from "./package-rp8ltIsX.js";
3
+ import { t as version } from "./package-B8NEPBIS.js";
4
4
  //#region src/commands/init.ts
5
5
  const command = defineCommand({
6
6
  name: "init",
@@ -22,4 +22,4 @@ const command = defineCommand({
22
22
  //#endregion
23
23
  export { command };
24
24
 
25
- //# sourceMappingURL=init-CDTmO4nP.js.map
25
+ //# sourceMappingURL=init-COdIsFXI.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"init-CDTmO4nP.js","names":[],"sources":["../src/commands/init.ts"],"sourcesContent":["import { defineCommand } from '@internals/utils'\nimport { version } from '../../package.json'\n\nexport const command = defineCommand({\n name: 'init',\n description: 'Initialize a new Kubb project with interactive setup',\n options: {\n yes: { type: 'boolean', description: 'Skip prompts and use default options', short: 'y', default: false },\n },\n async run({ values }) {\n const { runInit } = await import('../runners/init.ts')\n\n await runInit({ yes: values.yes, version })\n },\n})\n"],"mappings":";;;;AAGA,MAAa,UAAU,cAAc;CACnC,MAAM;CACN,aAAa;CACb,SAAS,EACP,KAAK;EAAE,MAAM;EAAW,aAAa;EAAwC,OAAO;EAAK,SAAS;EAAO,EAC1G;CACD,MAAM,IAAI,EAAE,UAAU;EACpB,MAAM,EAAE,YAAY,MAAM,OAAO;AAEjC,QAAM,QAAQ;GAAE,KAAK,OAAO;GAAK;GAAS,CAAC;;CAE9C,CAAC"}
1
+ {"version":3,"file":"init-COdIsFXI.js","names":[],"sources":["../src/commands/init.ts"],"sourcesContent":["import { defineCommand } from '@internals/utils'\nimport { version } from '../../package.json'\n\nexport const command = defineCommand({\n name: 'init',\n description: 'Initialize a new Kubb project with interactive setup',\n options: {\n yes: { type: 'boolean', description: 'Skip prompts and use default options', short: 'y', default: false },\n },\n async run({ values }) {\n const { runInit } = await import('../runners/init.ts')\n\n await runInit({ yes: values.yes, version })\n },\n})\n"],"mappings":";;;;AAGA,MAAa,UAAU,cAAc;CACnC,MAAM;CACN,aAAa;CACb,SAAS,EACP,KAAK;EAAE,MAAM;EAAW,aAAa;EAAwC,OAAO;EAAK,SAAS;EAAO,EAC1G;CACD,MAAM,IAAI,EAAE,UAAU;EACpB,MAAM,EAAE,YAAY,MAAM,OAAO;AAEjC,QAAM,QAAQ;GAAE,KAAK,OAAO;GAAK;GAAS,CAAC;;CAE9C,CAAC"}
@@ -1,6 +1,6 @@
1
1
  require("./chunk-ByKO4r7w.cjs");
2
2
  const require_define = require("./define-Bdn8j5VM.cjs");
3
- const require_package = require("./package-Di-_0gXB.cjs");
3
+ const require_package = require("./package-Dd9j6cPm.cjs");
4
4
  //#region src/commands/init.ts
5
5
  const command = require_define.defineCommand({
6
6
  name: "init",
@@ -22,4 +22,4 @@ const command = require_define.defineCommand({
22
22
  //#endregion
23
23
  exports.command = command;
24
24
 
25
- //# sourceMappingURL=init-B7Cxlo4Z.cjs.map
25
+ //# sourceMappingURL=init-SDK46-nF.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"init-B7Cxlo4Z.cjs","names":["defineCommand"],"sources":["../src/commands/init.ts"],"sourcesContent":["import { defineCommand } from '@internals/utils'\nimport { version } from '../../package.json'\n\nexport const command = defineCommand({\n name: 'init',\n description: 'Initialize a new Kubb project with interactive setup',\n options: {\n yes: { type: 'boolean', description: 'Skip prompts and use default options', short: 'y', default: false },\n },\n async run({ values }) {\n const { runInit } = await import('../runners/init.ts')\n\n await runInit({ yes: values.yes, version })\n },\n})\n"],"mappings":";;;;AAGA,MAAa,UAAUA,eAAAA,cAAc;CACnC,MAAM;CACN,aAAa;CACb,SAAS,EACP,KAAK;EAAE,MAAM;EAAW,aAAa;EAAwC,OAAO;EAAK,SAAS;EAAO,EAC1G;CACD,MAAM,IAAI,EAAE,UAAU;EACpB,MAAM,EAAE,YAAY,MAAA,QAAA,SAAA,CAAA,WAAA,QAAM,sBAAA,CAAA;AAE1B,QAAM,QAAQ;GAAE,KAAK,OAAO;GAAK,SAAA,gBAAA;GAAS,CAAC;;CAE9C,CAAC"}
1
+ {"version":3,"file":"init-SDK46-nF.cjs","names":["defineCommand"],"sources":["../src/commands/init.ts"],"sourcesContent":["import { defineCommand } from '@internals/utils'\nimport { version } from '../../package.json'\n\nexport const command = defineCommand({\n name: 'init',\n description: 'Initialize a new Kubb project with interactive setup',\n options: {\n yes: { type: 'boolean', description: 'Skip prompts and use default options', short: 'y', default: false },\n },\n async run({ values }) {\n const { runInit } = await import('../runners/init.ts')\n\n await runInit({ yes: values.yes, version })\n },\n})\n"],"mappings":";;;;AAGA,MAAa,UAAUA,eAAAA,cAAc;CACnC,MAAM;CACN,aAAa;CACb,SAAS,EACP,KAAK;EAAE,MAAM;EAAW,aAAa;EAAwC,OAAO;EAAK,SAAS;EAAO,EAC1G;CACD,MAAM,IAAI,EAAE,UAAU;EACpB,MAAM,EAAE,YAAY,MAAA,QAAA,SAAA,CAAA,WAAA,QAAM,sBAAA,CAAA;AAE1B,QAAM,QAAQ;GAAE,KAAK,OAAO;GAAK,SAAA,gBAAA;GAAS,CAAC;;CAE9C,CAAC"}
@@ -1,16 +1,16 @@
1
1
  import "./chunk--u3MIqq1.js";
2
2
  import { n as defineCommand } from "./define-Ctii4bel.js";
3
- import { t as version } from "./package-rp8ltIsX.js";
3
+ import { t as version } from "./package-B8NEPBIS.js";
4
4
  //#region src/commands/mcp.ts
5
5
  const command = defineCommand({
6
6
  name: "mcp",
7
7
  description: "Start the server to enable the MCP client to interact with the LLM.",
8
8
  async run() {
9
- const { runMcp } = await import("./mcp-CxuctqmK.js");
9
+ const { runMcp } = await import("./mcp-B_FoDCTh.js");
10
10
  await runMcp({ version });
11
11
  }
12
12
  });
13
13
  //#endregion
14
14
  export { command };
15
15
 
16
- //# sourceMappingURL=mcp-BNtcPdx0.js.map
16
+ //# sourceMappingURL=mcp-BWcUd86Y.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-BNtcPdx0.js","names":[],"sources":["../src/commands/mcp.ts"],"sourcesContent":["import { defineCommand } from '@internals/utils'\nimport { version } from '../../package.json'\n\nexport const command = defineCommand({\n name: 'mcp',\n description: 'Start the server to enable the MCP client to interact with the LLM.',\n async run() {\n const { runMcp } = await import('../runners/mcp.ts')\n\n await runMcp({ version })\n },\n})\n"],"mappings":";;;;AAGA,MAAa,UAAU,cAAc;CACnC,MAAM;CACN,aAAa;CACb,MAAM,MAAM;EACV,MAAM,EAAE,WAAW,MAAM,OAAO;AAEhC,QAAM,OAAO,EAAE,SAAS,CAAC;;CAE5B,CAAC"}
1
+ {"version":3,"file":"mcp-BWcUd86Y.js","names":[],"sources":["../src/commands/mcp.ts"],"sourcesContent":["import { defineCommand } from '@internals/utils'\nimport { version } from '../../package.json'\n\nexport const command = defineCommand({\n name: 'mcp',\n description: 'Start the server to enable the MCP client to interact with the LLM.',\n async run() {\n const { runMcp } = await import('../runners/mcp.ts')\n\n await runMcp({ version })\n },\n})\n"],"mappings":";;;;AAGA,MAAa,UAAU,cAAc;CACnC,MAAM;CACN,aAAa;CACb,MAAM,MAAM;EACV,MAAM,EAAE,WAAW,MAAM,OAAO;AAEhC,QAAM,OAAO,EAAE,SAAS,CAAC;;CAE5B,CAAC"}
@@ -1,9 +1,16 @@
1
1
  import "./chunk--u3MIqq1.js";
2
2
  import { t as getErrorMessage } from "./errors-CjPmyZHy.js";
3
3
  import { r as sendTelemetry, t as buildTelemetryEvent } from "./telemetry-CBISr5w4.js";
4
- import { t as jiti } from "./jiti-e08mD2Ph.js";
5
4
  import { styleText } from "node:util";
6
5
  import process from "node:process";
6
+ import { createJiti } from "jiti";
7
+ //#region src/utils/jiti.ts
8
+ /**
9
+ * Shared jiti instance for dynamic ESM/TS imports across CLI commands.
10
+ * Created once at module scope to avoid the overhead of repeated instantiation.
11
+ */
12
+ const jiti = createJiti(import.meta.url, { sourceMaps: true });
13
+ //#endregion
7
14
  //#region src/runners/mcp.ts
8
15
  async function runMcp({ version }) {
9
16
  let mod;
@@ -38,4 +45,4 @@ async function runMcp({ version }) {
38
45
  //#endregion
39
46
  export { runMcp };
40
47
 
41
- //# sourceMappingURL=mcp-CxuctqmK.js.map
48
+ //# sourceMappingURL=mcp-B_FoDCTh.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-B_FoDCTh.js","names":[],"sources":["../src/utils/jiti.ts","../src/runners/mcp.ts"],"sourcesContent":["import { createJiti } from 'jiti'\n\n/**\n * Shared jiti instance for dynamic ESM/TS imports across CLI commands.\n * Created once at module scope to avoid the overhead of repeated instantiation.\n */\nexport const jiti = createJiti(import.meta.url, {\n sourceMaps: true,\n})\n","import process from 'node:process'\nimport { styleText } from 'node:util'\nimport { getErrorMessage } from '@internals/utils'\nimport type * as McpModule from '@kubb/mcp'\nimport { jiti } from '../utils/jiti.ts'\nimport { buildTelemetryEvent, sendTelemetry } from '../utils/telemetry.ts'\n\ntype McpOptions = {\n version: string\n}\n\nexport async function runMcp({ version }: McpOptions): Promise<void> {\n let mod: typeof McpModule\n try {\n mod = (await jiti.import('@kubb/mcp', { default: true })) as typeof McpModule\n } catch (_e) {\n console.error(`Import of '@kubb/mcp' is required to start the MCP server`)\n process.exit(1)\n }\n\n const { run } = mod\n const hrStart = process.hrtime()\n try {\n console.log('⏳ Starting MCP server...')\n console.warn(styleText('yellow', 'This feature is still under development — use with caution'))\n run()\n await sendTelemetry(buildTelemetryEvent({ command: 'mcp', kubbVersion: version, hrStart, status: 'success' }))\n } catch (error) {\n await sendTelemetry(buildTelemetryEvent({ command: 'mcp', kubbVersion: version, hrStart, status: 'failed' }))\n console.error(getErrorMessage(error))\n }\n}\n"],"mappings":";;;;;;;;;;;AAMA,MAAa,OAAO,WAAW,OAAO,KAAK,KAAK,EAC9C,YAAY,MACb,CAAC;;;ACGF,eAAsB,OAAO,EAAE,WAAsC;CACnE,IAAI;AACJ,KAAI;AACF,QAAO,MAAM,KAAK,OAAO,aAAa,EAAE,SAAS,MAAM,CAAC;UACjD,IAAI;AACX,UAAQ,MAAM,4DAA4D;AAC1E,UAAQ,KAAK,EAAE;;CAGjB,MAAM,EAAE,QAAQ;CAChB,MAAM,UAAU,QAAQ,QAAQ;AAChC,KAAI;AACF,UAAQ,IAAI,2BAA2B;AACvC,UAAQ,KAAK,UAAU,UAAU,6DAA6D,CAAC;AAC/F,OAAK;AACL,QAAM,cAAc,oBAAoB;GAAE,SAAS;GAAO,aAAa;GAAS;GAAS,QAAQ;GAAW,CAAC,CAAC;UACvG,OAAO;AACd,QAAM,cAAc,oBAAoB;GAAE,SAAS;GAAO,aAAa;GAAS;GAAS,QAAQ;GAAU,CAAC,CAAC;AAC7G,UAAQ,MAAM,gBAAgB,MAAM,CAAC"}
@@ -1,15 +1,21 @@
1
1
  const require_chunk = require("./chunk-ByKO4r7w.cjs");
2
2
  const require_errors = require("./errors-CLCjoSg0.cjs");
3
3
  const require_telemetry = require("./telemetry-D_Bi2E3I.cjs");
4
- const require_jiti = require("./jiti-Cd3S0xwr.cjs");
5
4
  let node_util = require("node:util");
6
5
  let node_process = require("node:process");
7
6
  node_process = require_chunk.__toESM(node_process, 1);
7
+ //#region src/utils/jiti.ts
8
+ /**
9
+ * Shared jiti instance for dynamic ESM/TS imports across CLI commands.
10
+ * Created once at module scope to avoid the overhead of repeated instantiation.
11
+ */
12
+ const jiti$1 = (0, require("jiti").createJiti)(require("url").pathToFileURL(__filename).href, { sourceMaps: true });
13
+ //#endregion
8
14
  //#region src/runners/mcp.ts
9
15
  async function runMcp({ version }) {
10
16
  let mod;
11
17
  try {
12
- mod = await require_jiti.jiti.import("@kubb/mcp", { default: true });
18
+ mod = await jiti$1.import("@kubb/mcp", { default: true });
13
19
  } catch (_e) {
14
20
  console.error(`Import of '@kubb/mcp' is required to start the MCP server`);
15
21
  node_process.default.exit(1);
@@ -39,4 +45,4 @@ async function runMcp({ version }) {
39
45
  //#endregion
40
46
  exports.runMcp = runMcp;
41
47
 
42
- //# sourceMappingURL=mcp-9yURBP26.cjs.map
48
+ //# sourceMappingURL=mcp-STc97s14.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-STc97s14.cjs","names":["jiti","jiti","process","sendTelemetry","buildTelemetryEvent","getErrorMessage"],"sources":["../src/utils/jiti.ts","../src/runners/mcp.ts"],"sourcesContent":["import { createJiti } from 'jiti'\n\n/**\n * Shared jiti instance for dynamic ESM/TS imports across CLI commands.\n * Created once at module scope to avoid the overhead of repeated instantiation.\n */\nexport const jiti = createJiti(import.meta.url, {\n sourceMaps: true,\n})\n","import process from 'node:process'\nimport { styleText } from 'node:util'\nimport { getErrorMessage } from '@internals/utils'\nimport type * as McpModule from '@kubb/mcp'\nimport { jiti } from '../utils/jiti.ts'\nimport { buildTelemetryEvent, sendTelemetry } from '../utils/telemetry.ts'\n\ntype McpOptions = {\n version: string\n}\n\nexport async function runMcp({ version }: McpOptions): Promise<void> {\n let mod: typeof McpModule\n try {\n mod = (await jiti.import('@kubb/mcp', { default: true })) as typeof McpModule\n } catch (_e) {\n console.error(`Import of '@kubb/mcp' is required to start the MCP server`)\n process.exit(1)\n }\n\n const { run } = mod\n const hrStart = process.hrtime()\n try {\n console.log('⏳ Starting MCP server...')\n console.warn(styleText('yellow', 'This feature is still under development — use with caution'))\n run()\n await sendTelemetry(buildTelemetryEvent({ command: 'mcp', kubbVersion: version, hrStart, status: 'success' }))\n } catch (error) {\n await sendTelemetry(buildTelemetryEvent({ command: 'mcp', kubbVersion: version, hrStart, status: 'failed' }))\n console.error(getErrorMessage(error))\n }\n}\n"],"mappings":";;;;;;;;;;;AAMA,MAAaA,UAAAA,mBAAAA,YAAAA,QAAAA,MAAAA,CAAAA,cAAAA,WAAAA,CAAAA,MAAmC,EAC9C,YAAY,MACb,CAAC;;;ACGF,eAAsB,OAAO,EAAE,WAAsC;CACnE,IAAI;AACJ,KAAI;AACF,QAAO,MAAMC,OAAK,OAAO,aAAa,EAAE,SAAS,MAAM,CAAC;UACjD,IAAI;AACX,UAAQ,MAAM,4DAA4D;AAC1E,eAAA,QAAQ,KAAK,EAAE;;CAGjB,MAAM,EAAE,QAAQ;CAChB,MAAM,UAAUC,aAAAA,QAAQ,QAAQ;AAChC,KAAI;AACF,UAAQ,IAAI,2BAA2B;AACvC,UAAQ,MAAA,GAAA,UAAA,WAAe,UAAU,6DAA6D,CAAC;AAC/F,OAAK;AACL,QAAMC,kBAAAA,cAAcC,kBAAAA,oBAAoB;GAAE,SAAS;GAAO,aAAa;GAAS;GAAS,QAAQ;GAAW,CAAC,CAAC;UACvG,OAAO;AACd,QAAMD,kBAAAA,cAAcC,kBAAAA,oBAAoB;GAAE,SAAS;GAAO,aAAa;GAAS;GAAS,QAAQ;GAAU,CAAC,CAAC;AAC7G,UAAQ,MAAMC,eAAAA,gBAAgB,MAAM,CAAC"}
@@ -1,16 +1,16 @@
1
1
  require("./chunk-ByKO4r7w.cjs");
2
2
  const require_define = require("./define-Bdn8j5VM.cjs");
3
- const require_package = require("./package-Di-_0gXB.cjs");
3
+ const require_package = require("./package-Dd9j6cPm.cjs");
4
4
  //#region src/commands/mcp.ts
5
5
  const command = require_define.defineCommand({
6
6
  name: "mcp",
7
7
  description: "Start the server to enable the MCP client to interact with the LLM.",
8
8
  async run() {
9
- const { runMcp } = await Promise.resolve().then(() => require("./mcp-9yURBP26.cjs"));
9
+ const { runMcp } = await Promise.resolve().then(() => require("./mcp-STc97s14.cjs"));
10
10
  await runMcp({ version: require_package.version });
11
11
  }
12
12
  });
13
13
  //#endregion
14
14
  exports.command = command;
15
15
 
16
- //# sourceMappingURL=mcp-B-W6VZnj.cjs.map
16
+ //# sourceMappingURL=mcp-aRv8LwaD.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-B-W6VZnj.cjs","names":["defineCommand"],"sources":["../src/commands/mcp.ts"],"sourcesContent":["import { defineCommand } from '@internals/utils'\nimport { version } from '../../package.json'\n\nexport const command = defineCommand({\n name: 'mcp',\n description: 'Start the server to enable the MCP client to interact with the LLM.',\n async run() {\n const { runMcp } = await import('../runners/mcp.ts')\n\n await runMcp({ version })\n },\n})\n"],"mappings":";;;;AAGA,MAAa,UAAUA,eAAAA,cAAc;CACnC,MAAM;CACN,aAAa;CACb,MAAM,MAAM;EACV,MAAM,EAAE,WAAW,MAAA,QAAA,SAAA,CAAA,WAAA,QAAM,qBAAA,CAAA;AAEzB,QAAM,OAAO,EAAE,SAAA,gBAAA,SAAS,CAAC;;CAE5B,CAAC"}
1
+ {"version":3,"file":"mcp-aRv8LwaD.cjs","names":["defineCommand"],"sources":["../src/commands/mcp.ts"],"sourcesContent":["import { defineCommand } from '@internals/utils'\nimport { version } from '../../package.json'\n\nexport const command = defineCommand({\n name: 'mcp',\n description: 'Start the server to enable the MCP client to interact with the LLM.',\n async run() {\n const { runMcp } = await import('../runners/mcp.ts')\n\n await runMcp({ version })\n },\n})\n"],"mappings":";;;;AAGA,MAAa,UAAUA,eAAAA,cAAc;CACnC,MAAM;CACN,aAAa;CACb,MAAM,MAAM;EACV,MAAM,EAAE,WAAW,MAAA,QAAA,SAAA,CAAA,WAAA,QAAM,qBAAA,CAAA;AAEzB,QAAM,OAAO,EAAE,SAAA,gBAAA,SAAS,CAAC;;CAE5B,CAAC"}
@@ -0,0 +1,6 @@
1
+ //#region package.json
2
+ var version = "5.0.0-alpha.39";
3
+ //#endregion
4
+ export { version as t };
5
+
6
+ //# sourceMappingURL=package-B8NEPBIS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-B8NEPBIS.js","names":[],"sources":["../package.json"],"sourcesContent":[""],"mappings":""}
@@ -1,5 +1,5 @@
1
1
  //#region package.json
2
- var version = "5.0.0-alpha.38";
2
+ var version = "5.0.0-alpha.39";
3
3
  //#endregion
4
4
  Object.defineProperty(exports, "version", {
5
5
  enumerable: true,
@@ -8,4 +8,4 @@ Object.defineProperty(exports, "version", {
8
8
  }
9
9
  });
10
10
 
11
- //# sourceMappingURL=package-Di-_0gXB.cjs.map
11
+ //# sourceMappingURL=package-Dd9j6cPm.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-Dd9j6cPm.cjs","names":[],"sources":["../package.json"],"sourcesContent":[""],"mappings":""}
@@ -1,6 +1,6 @@
1
1
  require("./chunk-ByKO4r7w.cjs");
2
2
  const require_define = require("./define-Bdn8j5VM.cjs");
3
- const require_package = require("./package-Di-_0gXB.cjs");
3
+ const require_package = require("./package-Dd9j6cPm.cjs");
4
4
  //#region src/commands/validate.ts
5
5
  const command = require_define.defineCommand({
6
6
  name: "validate",
@@ -12,7 +12,7 @@ const command = require_define.defineCommand({
12
12
  required: true
13
13
  } },
14
14
  async run({ values }) {
15
- const { runValidate } = await Promise.resolve().then(() => require("./validate-DIKeUU8K.cjs"));
15
+ const { runValidate } = await Promise.resolve().then(() => require("./validate-CqwT945Z.cjs"));
16
16
  await runValidate({
17
17
  input: values.input,
18
18
  version: require_package.version
@@ -22,4 +22,4 @@ const command = require_define.defineCommand({
22
22
  //#endregion
23
23
  exports.command = command;
24
24
 
25
- //# sourceMappingURL=validate-BzuJANpV.cjs.map
25
+ //# sourceMappingURL=validate-B3kTGFEl.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate-BzuJANpV.cjs","names":["defineCommand"],"sources":["../src/commands/validate.ts"],"sourcesContent":["import { defineCommand } from '@internals/utils'\nimport { version } from '../../package.json'\n\nexport const command = defineCommand({\n name: 'validate',\n description: 'Validate a Swagger/OpenAPI file',\n options: {\n input: { type: 'string', description: 'Path to Swagger/OpenAPI file', short: 'i', required: true },\n },\n async run({ values }) {\n const { runValidate } = await import('../runners/validate.ts')\n\n await runValidate({ input: values.input, version })\n },\n})\n"],"mappings":";;;;AAGA,MAAa,UAAUA,eAAAA,cAAc;CACnC,MAAM;CACN,aAAa;CACb,SAAS,EACP,OAAO;EAAE,MAAM;EAAU,aAAa;EAAgC,OAAO;EAAK,UAAU;EAAM,EACnG;CACD,MAAM,IAAI,EAAE,UAAU;EACpB,MAAM,EAAE,gBAAgB,MAAA,QAAA,SAAA,CAAA,WAAA,QAAM,0BAAA,CAAA;AAE9B,QAAM,YAAY;GAAE,OAAO,OAAO;GAAO,SAAA,gBAAA;GAAS,CAAC;;CAEtD,CAAC"}
1
+ {"version":3,"file":"validate-B3kTGFEl.cjs","names":["defineCommand"],"sources":["../src/commands/validate.ts"],"sourcesContent":["import { defineCommand } from '@internals/utils'\nimport { version } from '../../package.json'\n\nexport const command = defineCommand({\n name: 'validate',\n description: 'Validate a Swagger/OpenAPI file',\n options: {\n input: { type: 'string', description: 'Path to Swagger/OpenAPI file', short: 'i', required: true },\n },\n async run({ values }) {\n const { runValidate } = await import('../runners/validate.ts')\n\n await runValidate({ input: values.input, version })\n },\n})\n"],"mappings":";;;;AAGA,MAAa,UAAUA,eAAAA,cAAc;CACnC,MAAM;CACN,aAAa;CACb,SAAS,EACP,OAAO;EAAE,MAAM;EAAU,aAAa;EAAgC,OAAO;EAAK,UAAU;EAAM,EACnG;CACD,MAAM,IAAI,EAAE,UAAU;EACpB,MAAM,EAAE,gBAAgB,MAAA,QAAA,SAAA,CAAA,WAAA,QAAM,0BAAA,CAAA;AAE9B,QAAM,YAAY;GAAE,OAAO,OAAO;GAAO,SAAA,gBAAA;GAAS,CAAC;;CAEtD,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import "./chunk--u3MIqq1.js";
2
2
  import { n as defineCommand } from "./define-Ctii4bel.js";
3
- import { t as version } from "./package-rp8ltIsX.js";
3
+ import { t as version } from "./package-B8NEPBIS.js";
4
4
  //#region src/commands/validate.ts
5
5
  const command = defineCommand({
6
6
  name: "validate",
@@ -12,7 +12,7 @@ const command = defineCommand({
12
12
  required: true
13
13
  } },
14
14
  async run({ values }) {
15
- const { runValidate } = await import("./validate-CIS8nJdd.js");
15
+ const { runValidate } = await import("./validate-NZ0mduJ3.js");
16
16
  await runValidate({
17
17
  input: values.input,
18
18
  version
@@ -22,4 +22,4 @@ const command = defineCommand({
22
22
  //#endregion
23
23
  export { command };
24
24
 
25
- //# sourceMappingURL=validate-hNVTMue-.js.map
25
+ //# sourceMappingURL=validate-COWutx4Y.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate-hNVTMue-.js","names":[],"sources":["../src/commands/validate.ts"],"sourcesContent":["import { defineCommand } from '@internals/utils'\nimport { version } from '../../package.json'\n\nexport const command = defineCommand({\n name: 'validate',\n description: 'Validate a Swagger/OpenAPI file',\n options: {\n input: { type: 'string', description: 'Path to Swagger/OpenAPI file', short: 'i', required: true },\n },\n async run({ values }) {\n const { runValidate } = await import('../runners/validate.ts')\n\n await runValidate({ input: values.input, version })\n },\n})\n"],"mappings":";;;;AAGA,MAAa,UAAU,cAAc;CACnC,MAAM;CACN,aAAa;CACb,SAAS,EACP,OAAO;EAAE,MAAM;EAAU,aAAa;EAAgC,OAAO;EAAK,UAAU;EAAM,EACnG;CACD,MAAM,IAAI,EAAE,UAAU;EACpB,MAAM,EAAE,gBAAgB,MAAM,OAAO;AAErC,QAAM,YAAY;GAAE,OAAO,OAAO;GAAO;GAAS,CAAC;;CAEtD,CAAC"}
1
+ {"version":3,"file":"validate-COWutx4Y.js","names":[],"sources":["../src/commands/validate.ts"],"sourcesContent":["import { defineCommand } from '@internals/utils'\nimport { version } from '../../package.json'\n\nexport const command = defineCommand({\n name: 'validate',\n description: 'Validate a Swagger/OpenAPI file',\n options: {\n input: { type: 'string', description: 'Path to Swagger/OpenAPI file', short: 'i', required: true },\n },\n async run({ values }) {\n const { runValidate } = await import('../runners/validate.ts')\n\n await runValidate({ input: values.input, version })\n },\n})\n"],"mappings":";;;;AAGA,MAAa,UAAU,cAAc;CACnC,MAAM;CACN,aAAa;CACb,SAAS,EACP,OAAO;EAAE,MAAM;EAAU,aAAa;EAAgC,OAAO;EAAK,UAAU;EAAM,EACnG;CACD,MAAM,IAAI,EAAE,UAAU;EACpB,MAAM,EAAE,gBAAgB,MAAM,OAAO;AAErC,QAAM,YAAY;GAAE,OAAO,OAAO;GAAO;GAAS,CAAC;;CAEtD,CAAC"}
@@ -1,22 +1,14 @@
1
1
  const require_chunk = require("./chunk-ByKO4r7w.cjs");
2
2
  const require_errors = require("./errors-CLCjoSg0.cjs");
3
3
  const require_telemetry = require("./telemetry-D_Bi2E3I.cjs");
4
- const require_jiti = require("./jiti-Cd3S0xwr.cjs");
5
4
  let node_process = require("node:process");
6
5
  node_process = require_chunk.__toESM(node_process, 1);
6
+ let _kubb_adapter_oas = require("@kubb/adapter-oas");
7
7
  //#region src/runners/validate.ts
8
8
  async function runValidate({ input, version }) {
9
- let mod;
10
- try {
11
- mod = await require_jiti.jiti.import("@kubb/oas", { default: true });
12
- } catch (_e) {
13
- console.error(`Import of '@kubb/oas' is required to do validation`);
14
- node_process.default.exit(1);
15
- }
16
- const { parse } = mod;
17
9
  const hrStart = node_process.default.hrtime();
18
10
  try {
19
- await (await parse(input)).validate();
11
+ await (0, _kubb_adapter_oas.validateDocument)(await (0, _kubb_adapter_oas.parseDocument)(input), { throwOnError: true });
20
12
  await require_telemetry.sendTelemetry(require_telemetry.buildTelemetryEvent({
21
13
  command: "validate",
22
14
  kubbVersion: version,
@@ -39,4 +31,4 @@ async function runValidate({ input, version }) {
39
31
  //#endregion
40
32
  exports.runValidate = runValidate;
41
33
 
42
- //# sourceMappingURL=validate-DIKeUU8K.cjs.map
34
+ //# sourceMappingURL=validate-CqwT945Z.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-CqwT945Z.cjs","names":["process","sendTelemetry","buildTelemetryEvent","getErrorMessage"],"sources":["../src/runners/validate.ts"],"sourcesContent":["import process from 'node:process'\nimport { getErrorMessage } from '@internals/utils'\nimport { parseDocument, validateDocument } from '@kubb/adapter-oas'\nimport { buildTelemetryEvent, sendTelemetry } from '../utils/telemetry.ts'\n\ntype ValidateOptions = {\n input: string\n version: string\n}\n\nexport async function runValidate({ input, version }: ValidateOptions): Promise<void> {\n const hrStart = process.hrtime()\n try {\n const document = await parseDocument(input)\n await validateDocument(document, { throwOnError: true })\n\n await sendTelemetry(buildTelemetryEvent({ command: 'validate', kubbVersion: version, hrStart, status: 'success' }))\n console.log('✅ Validation success')\n } catch (error) {\n await sendTelemetry(buildTelemetryEvent({ command: 'validate', kubbVersion: version, hrStart, status: 'failed' }))\n console.error('❌ Validation failed')\n console.error(getErrorMessage(error))\n process.exit(1)\n }\n}\n"],"mappings":";;;;;;;AAUA,eAAsB,YAAY,EAAE,OAAO,WAA2C;CACpF,MAAM,UAAUA,aAAAA,QAAQ,QAAQ;AAChC,KAAI;AAEF,SAAA,GAAA,kBAAA,kBADiB,OAAA,GAAA,kBAAA,eAAoB,MAAM,EACV,EAAE,cAAc,MAAM,CAAC;AAExD,QAAMC,kBAAAA,cAAcC,kBAAAA,oBAAoB;GAAE,SAAS;GAAY,aAAa;GAAS;GAAS,QAAQ;GAAW,CAAC,CAAC;AACnH,UAAQ,IAAI,uBAAuB;UAC5B,OAAO;AACd,QAAMD,kBAAAA,cAAcC,kBAAAA,oBAAoB;GAAE,SAAS;GAAY,aAAa;GAAS;GAAS,QAAQ;GAAU,CAAC,CAAC;AAClH,UAAQ,MAAM,sBAAsB;AACpC,UAAQ,MAAMC,eAAAA,gBAAgB,MAAM,CAAC;AACrC,eAAA,QAAQ,KAAK,EAAE"}
@@ -1,21 +1,13 @@
1
1
  import "./chunk--u3MIqq1.js";
2
2
  import { t as getErrorMessage } from "./errors-CjPmyZHy.js";
3
3
  import { r as sendTelemetry, t as buildTelemetryEvent } from "./telemetry-CBISr5w4.js";
4
- import { t as jiti } from "./jiti-e08mD2Ph.js";
5
4
  import process from "node:process";
5
+ import { parseDocument, validateDocument } from "@kubb/adapter-oas";
6
6
  //#region src/runners/validate.ts
7
7
  async function runValidate({ input, version }) {
8
- let mod;
9
- try {
10
- mod = await jiti.import("@kubb/oas", { default: true });
11
- } catch (_e) {
12
- console.error(`Import of '@kubb/oas' is required to do validation`);
13
- process.exit(1);
14
- }
15
- const { parse } = mod;
16
8
  const hrStart = process.hrtime();
17
9
  try {
18
- await (await parse(input)).validate();
10
+ await validateDocument(await parseDocument(input), { throwOnError: true });
19
11
  await sendTelemetry(buildTelemetryEvent({
20
12
  command: "validate",
21
13
  kubbVersion: version,
@@ -38,4 +30,4 @@ async function runValidate({ input, version }) {
38
30
  //#endregion
39
31
  export { runValidate };
40
32
 
41
- //# sourceMappingURL=validate-CIS8nJdd.js.map
33
+ //# sourceMappingURL=validate-NZ0mduJ3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-NZ0mduJ3.js","names":[],"sources":["../src/runners/validate.ts"],"sourcesContent":["import process from 'node:process'\nimport { getErrorMessage } from '@internals/utils'\nimport { parseDocument, validateDocument } from '@kubb/adapter-oas'\nimport { buildTelemetryEvent, sendTelemetry } from '../utils/telemetry.ts'\n\ntype ValidateOptions = {\n input: string\n version: string\n}\n\nexport async function runValidate({ input, version }: ValidateOptions): Promise<void> {\n const hrStart = process.hrtime()\n try {\n const document = await parseDocument(input)\n await validateDocument(document, { throwOnError: true })\n\n await sendTelemetry(buildTelemetryEvent({ command: 'validate', kubbVersion: version, hrStart, status: 'success' }))\n console.log('✅ Validation success')\n } catch (error) {\n await sendTelemetry(buildTelemetryEvent({ command: 'validate', kubbVersion: version, hrStart, status: 'failed' }))\n console.error('❌ Validation failed')\n console.error(getErrorMessage(error))\n process.exit(1)\n }\n}\n"],"mappings":";;;;;;AAUA,eAAsB,YAAY,EAAE,OAAO,WAA2C;CACpF,MAAM,UAAU,QAAQ,QAAQ;AAChC,KAAI;AAEF,QAAM,iBADW,MAAM,cAAc,MAAM,EACV,EAAE,cAAc,MAAM,CAAC;AAExD,QAAM,cAAc,oBAAoB;GAAE,SAAS;GAAY,aAAa;GAAS;GAAS,QAAQ;GAAW,CAAC,CAAC;AACnH,UAAQ,IAAI,uBAAuB;UAC5B,OAAO;AACd,QAAM,cAAc,oBAAoB;GAAE,SAAS;GAAY,aAAa;GAAS;GAAS,QAAQ;GAAU,CAAC,CAAC;AAClH,UAAQ,MAAM,sBAAsB;AACpC,UAAQ,MAAM,gBAAgB,MAAM,CAAC;AACrC,UAAQ,KAAK,EAAE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kubb/cli",
3
- "version": "5.0.0-alpha.38",
3
+ "version": "5.0.0-alpha.39",
4
4
  "description": "Command-line interface for Kubb, enabling easy generation of TypeScript, React-Query, Zod, and other code from OpenAPI specifications.",
5
5
  "keywords": [
6
6
  "cli",
@@ -58,13 +58,13 @@
58
58
  "cosmiconfig": "^9.0.1",
59
59
  "jiti": "2.5.1",
60
60
  "tinyexec": "^1.1.1",
61
- "@kubb/core": "5.0.0-alpha.38"
61
+ "@kubb/adapter-oas": "5.0.0-alpha.39",
62
+ "@kubb/core": "5.0.0-alpha.39"
62
63
  },
63
64
  "devDependencies": {
64
65
  "@internals/utils": "0.0.0",
65
- "@kubb/agent": "5.0.0-alpha.38",
66
- "@kubb/mcp": "5.0.0-alpha.38",
67
- "@kubb/oas": "5.0.0-alpha.38"
66
+ "@kubb/agent": "5.0.0-alpha.39",
67
+ "@kubb/mcp": "5.0.0-alpha.39"
68
68
  },
69
69
  "engines": {
70
70
  "node": ">=22"
@@ -17,6 +17,47 @@ type AgentStartOptions = {
17
17
  version: string
18
18
  }
19
19
 
20
+ type ResolvedAgentStartEnvironment = {
21
+ port: string
22
+ host: string
23
+ allowWrite: boolean
24
+ allowAll: boolean
25
+ agentConfigPath: string
26
+ env: NodeJS.ProcessEnv
27
+ }
28
+
29
+ /**
30
+ * Resolves the environment passed to the detached agent process using CLI values first, then environment values, then CLI defaults.
31
+ */
32
+ function resolveAgentStartEnvironment({ port, host, configPath, allowWrite, allowAll }: Omit<AgentStartOptions, 'version'>): ResolvedAgentStartEnvironment {
33
+ const resolvedPort = port ?? process.env.PORT ?? agentDefaults.port
34
+ const resolvedHost = host !== agentDefaults.host ? host : (process.env.HOST ?? agentDefaults.host)
35
+ const resolvedAllowAll = allowAll || process.env.KUBB_AGENT_ALLOW_ALL === 'true'
36
+ const resolvedAllowWrite = resolvedAllowAll || allowWrite || process.env.KUBB_AGENT_ALLOW_WRITE === 'true'
37
+ const agentRoot = process.env.KUBB_AGENT_ROOT ?? process.cwd()
38
+ const agentConfigPath = path.resolve(process.cwd(), configPath || process.env.KUBB_AGENT_CONFIG || agentDefaults.configFile)
39
+
40
+ return {
41
+ port: resolvedPort,
42
+ host: resolvedHost,
43
+ allowWrite: resolvedAllowWrite,
44
+ allowAll: resolvedAllowAll,
45
+ agentConfigPath,
46
+ env: {
47
+ ...process.env,
48
+ PORT: resolvedPort,
49
+ HOST: resolvedHost,
50
+ KUBB_AGENT_ROOT: agentRoot,
51
+ KUBB_AGENT_CONFIG: agentConfigPath,
52
+ KUBB_AGENT_ALLOW_WRITE: String(resolvedAllowWrite),
53
+ KUBB_AGENT_ALLOW_ALL: String(resolvedAllowAll),
54
+ KUBB_AGENT_TOKEN: process.env.KUBB_AGENT_TOKEN,
55
+ KUBB_AGENT_RETRY_TIMEOUT: process.env.KUBB_AGENT_RETRY_TIMEOUT ?? agentDefaults.retryTimeout,
56
+ KUBB_STUDIO_URL: process.env.KUBB_STUDIO_URL ?? agentDefaults.studioUrl,
57
+ },
58
+ }
59
+ }
60
+
20
61
  function isPortAvailable(port: number, host: string): Promise<boolean> {
21
62
  return new Promise((resolve) => {
22
63
  const server = net.createServer()
@@ -46,47 +87,31 @@ export async function runAgentStart({ port, host, configPath, allowWrite, allowA
46
87
  const agentDir = path.dirname(agentPkgPath)
47
88
  const serverPath = path.join(agentDir, agentDefaults.serverEntryPath)
48
89
 
49
- // CLI params take priority over process.env; process.env fills in what the CLI didn't specify;
50
- // agentDefaults are the last resort. Build env as: defaults ← process.env ← CLI.
51
- const PORT = port !== undefined ? port : (process.env.PORT ?? agentDefaults.port)
52
- const HOST = host !== agentDefaults.host ? host : (process.env.HOST ?? agentDefaults.host)
53
- const KUBB_AGENT_ROOT = process.env.KUBB_AGENT_ROOT ?? process.cwd()
54
- const KUBB_AGENT_CONFIG = path.resolve(process.cwd(), configPath || process.env.KUBB_AGENT_CONFIG || agentDefaults.configFile)
55
- const KUBB_AGENT_ALLOW_WRITE = allowAll || allowWrite ? 'true' : (process.env.KUBB_AGENT_ALLOW_WRITE ?? 'false')
56
- const KUBB_AGENT_ALLOW_ALL = allowAll ? 'true' : (process.env.KUBB_AGENT_ALLOW_ALL ?? 'false')
57
- const KUBB_AGENT_TOKEN = process.env.KUBB_AGENT_TOKEN
58
- const KUBB_AGENT_RETRY_TIMEOUT = process.env.KUBB_AGENT_RETRY_TIMEOUT ?? agentDefaults.retryTimeout
59
- const KUBB_STUDIO_URL = process.env.KUBB_STUDIO_URL ?? agentDefaults.studioUrl
90
+ const resolvedEnv = resolveAgentStartEnvironment({ port, host, configPath, allowWrite, allowAll })
91
+ const numericPort = Number(resolvedEnv.port)
60
92
 
61
- const env = {
62
- ...process.env,
63
- PORT,
64
- HOST,
65
- KUBB_AGENT_ROOT,
66
- KUBB_AGENT_CONFIG,
67
- KUBB_AGENT_ALLOW_WRITE,
68
- KUBB_AGENT_ALLOW_ALL,
69
- KUBB_AGENT_TOKEN,
70
- KUBB_AGENT_RETRY_TIMEOUT,
71
- KUBB_STUDIO_URL,
93
+ if (!Number.isInteger(numericPort) || numericPort <= 0) {
94
+ throw new Error(`Invalid port "${resolvedEnv.port}". Provide a positive integer with --port or PORT.`)
72
95
  }
73
96
 
74
97
  clack.log.step(styleText('cyan', 'Starting agent server...'))
75
- clack.log.info(styleText('dim', `Config: ${KUBB_AGENT_CONFIG}`))
76
- clack.log.info(styleText('dim', `Host: ${HOST}`))
77
- clack.log.info(styleText('dim', `Port: ${PORT}`))
78
- if (!KUBB_AGENT_ALLOW_WRITE && !KUBB_AGENT_ALLOW_ALL) {
98
+ clack.log.info(styleText('dim', `Config: ${resolvedEnv.agentConfigPath}`))
99
+ clack.log.info(styleText('dim', `Host: ${resolvedEnv.host}`))
100
+ clack.log.info(styleText('dim', `Port: ${resolvedEnv.port}`))
101
+ if (!resolvedEnv.allowWrite && !resolvedEnv.allowAll) {
79
102
  clack.log.warn(styleText('yellow', 'Filesystem writes disabled. Use --allow-write or --allow-all to enable.'))
80
103
  }
81
104
 
82
- if (!(await isPortAvailable(Number(PORT), HOST))) {
83
- clack.log.error(styleText('red', `Port ${PORT} is already in use. Stop the existing process or choose a different port with --port.`))
105
+ if (!(await isPortAvailable(numericPort, resolvedEnv.host))) {
106
+ clack.log.error(
107
+ styleText('red', `Port ${resolvedEnv.port} is already in use. Stop the existing process or choose a different port with --port.`),
108
+ )
84
109
  process.exit(1)
85
110
  }
86
111
 
87
112
  // Spawns the server as a detached background process so the CLI can exit independently.
88
113
  await spawnAsync('node', [serverPath], {
89
- env,
114
+ env: resolvedEnv.env,
90
115
  cwd: process.cwd(),
91
116
  })
92
117
 
@@ -1,7 +1,6 @@
1
1
  import process from 'node:process'
2
2
  import { getErrorMessage } from '@internals/utils'
3
- import type * as OasModule from '@kubb/oas'
4
- import { jiti } from '../utils/jiti.ts'
3
+ import { parseDocument, validateDocument } from '@kubb/adapter-oas'
5
4
  import { buildTelemetryEvent, sendTelemetry } from '../utils/telemetry.ts'
6
5
 
7
6
  type ValidateOptions = {
@@ -10,19 +9,10 @@ type ValidateOptions = {
10
9
  }
11
10
 
12
11
  export async function runValidate({ input, version }: ValidateOptions): Promise<void> {
13
- let mod: typeof OasModule
14
- try {
15
- mod = (await jiti.import('@kubb/oas', { default: true })) as typeof OasModule
16
- } catch (_e) {
17
- console.error(`Import of '@kubb/oas' is required to do validation`)
18
- process.exit(1)
19
- }
20
-
21
- const { parse } = mod
22
12
  const hrStart = process.hrtime()
23
13
  try {
24
- const oas = await parse(input)
25
- await oas.validate()
14
+ const document = await parseDocument(input)
15
+ await validateDocument(document, { throwOnError: true })
26
16
 
27
17
  await sendTelemetry(buildTelemetryEvent({ command: 'validate', kubbVersion: version, hrStart, status: 'success' }))
28
18
  console.log('✅ Validation success')
@@ -27,7 +27,7 @@ export function getSummary({ failedPlugins, filesCreated, status, hrStart, confi
27
27
  pluginsFailed: status === 'failed' ? [...failedPlugins].map(({ plugin }) => randomCliColor(plugin.name)).join(', ') : undefined,
28
28
  filesCreated,
29
29
  time: styleText('green', duration),
30
- output: path.isAbsolute(config.root) ? path.resolve(config.root, config.output.path) : config.root,
30
+ output: path.resolve(config.root, config.output.path),
31
31
  } as const
32
32
 
33
33
  const labels = {