@kubb/agent 5.0.0-beta.21 → 5.0.0-beta.23

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.
@@ -1,5 +1,5 @@
1
1
  {
2
- "date": "2026-05-20T14:24:47.210Z",
2
+ "date": "2026-05-21T09:14:27.635Z",
3
3
  "preset": "node-server",
4
4
  "framework": {
5
5
  "name": "nitro",
@@ -5511,12 +5511,13 @@ var URLPath = (_b = class {
5511
5511
  * @example
5512
5512
  * new URLPath('/pet/{petId}').toTemplateString() // '`/pet/${petId}`'
5513
5513
  */
5514
- toTemplateString({ prefix = "", replacer } = {}) {
5515
- return `\`${prefix}${this.path.split(/\{([^}]+)\}/).map((part, i) => {
5514
+ toTemplateString({ prefix, replacer } = {}) {
5515
+ const result = this.path.split(/\{([^}]+)\}/).map((part, i) => {
5516
5516
  if (i % 2 === 0) return part;
5517
5517
  const param = __privateMethod$1(this, _URLPath_instances, transformParam_fn).call(this, part);
5518
5518
  return `\${${replacer ? replacer(param) : param}}`;
5519
- }).join("")}\``;
5519
+ }).join("");
5520
+ return `\`${prefix != null ? prefix : ""}${result}\``;
5520
5521
  }
5521
5522
  /**
5522
5523
  * Extracts all `{param}` segments from the path and returns them as a key-value map.
@@ -5839,7 +5840,7 @@ var FileManager = (_c = class {
5839
5840
  const resolved = [];
5840
5841
  for (const file of batch) {
5841
5842
  const existing = __privateGet$1(this, _cache).get(file.path);
5842
- const merged = existing && mergeExisting ? createFile(mergeFile(existing, file)) : file;
5843
+ const merged = existing && mergeExisting ? createFile(mergeFile(existing, file)) : createFile(file);
5843
5844
  __privateGet$1(this, _cache).set(merged.path, merged);
5844
5845
  resolved.push(merged);
5845
5846
  (_a2 = __privateGet$1(this, _onUpsert)) == null ? void 0 : _a2.call(this, merged);
@@ -6661,15 +6662,25 @@ registerPlugin_fn = function(plugin) {
6661
6662
  ...generatorContext,
6662
6663
  options: plugin.options
6663
6664
  };
6665
+ const pluginOperations = state.optionsAreStatic ? collectedOperations : collectedOperations.filter((node) => {
6666
+ const transformed = plugin.transformer ? transform(node, plugin.transformer) : node;
6667
+ const { exclude, include, override } = plugin.options;
6668
+ return generatorContext.resolver.resolveOptions(transformed, {
6669
+ options: plugin.options,
6670
+ exclude,
6671
+ include,
6672
+ override
6673
+ }) !== null;
6674
+ });
6664
6675
  for (const gen of generators) {
6665
6676
  if (!gen.operations) continue;
6666
6677
  await applyHookResult({
6667
- result: await gen.operations(collectedOperations, ctx),
6678
+ result: await gen.operations(pluginOperations, ctx),
6668
6679
  driver,
6669
6680
  rendererFactory: resolveRendererFor(gen, state)
6670
6681
  });
6671
6682
  }
6672
- await this.hooks.emit("kubb:generate:operations", collectedOperations, ctx);
6683
+ await this.hooks.emit("kubb:generate:operations", pluginOperations, ctx);
6673
6684
  } catch (caughtError) {
6674
6685
  state.failed = true;
6675
6686
  state.error = caughtError;
@@ -6808,7 +6819,7 @@ async function clean(path) {
6808
6819
  force: true
6809
6820
  });
6810
6821
  }
6811
- var version$1 = "5.0.0-beta.21";
6822
+ var version$1 = "5.0.0-beta.23";
6812
6823
  function createStorage(build) {
6813
6824
  return (options) => build(options != null ? options : {});
6814
6825
  }
@@ -7077,7 +7088,7 @@ const memoryStorage = createStorage(() => {
7077
7088
  };
7078
7089
  });
7079
7090
 
7080
- var version = "5.0.0-beta.21";
7091
+ var version = "5.0.0-beta.23";
7081
7092
 
7082
7093
  function isCommandMessage(msg) {
7083
7094
  return msg.type === "command";
@@ -7424,6 +7435,20 @@ function setupEventsStream(ws, hooks) {
7424
7435
  timestamp: Date.now()
7425
7436
  });
7426
7437
  });
7438
+ hooks.on("kubb:build:start", ({ config, adapter }) => {
7439
+ sendDataMessage({
7440
+ type: "kubb:build:start",
7441
+ data: [{ config: { name: config.name }, adapter: { name: adapter.name } }],
7442
+ timestamp: Date.now()
7443
+ });
7444
+ });
7445
+ hooks.on("kubb:build:end", ({ files, outputDir }) => {
7446
+ sendDataMessage({
7447
+ type: "kubb:build:end",
7448
+ data: [{ files: files.map((file) => ({ path: file.path, name: file.name })), outputDir }],
7449
+ timestamp: Date.now()
7450
+ });
7451
+ });
7427
7452
  hooks.on("kubb:files:processing:start", ({ files }) => {
7428
7453
  sendDataMessage({
7429
7454
  type: "kubb:files:processing:start",
@@ -7513,6 +7538,33 @@ function setupEventsStream(ws, hooks) {
7513
7538
  timestamp: Date.now()
7514
7539
  });
7515
7540
  });
7541
+ hooks.on("kubb:generation:summary", ({ failedPlugins, status, hrStart, filesCreated }) => {
7542
+ const [seconds, nanoseconds] = process.hrtime(hrStart);
7543
+ const duration = Math.round(seconds * 1e3 + nanoseconds / 1e6);
7544
+ sendDataMessage({
7545
+ type: "kubb:generation:summary",
7546
+ data: [{ duration, fileCount: filesCreated, failedPlugins: failedPlugins.size, status }],
7547
+ timestamp: Date.now()
7548
+ });
7549
+ });
7550
+ hooks.on("kubb:lifecycle:start", () => {
7551
+ sendDataMessage({ type: "kubb:lifecycle:start", data: [], timestamp: Date.now() });
7552
+ });
7553
+ hooks.on("kubb:lifecycle:end", () => {
7554
+ sendDataMessage({ type: "kubb:lifecycle:end", data: [], timestamp: Date.now() });
7555
+ });
7556
+ hooks.on("kubb:format:start", () => {
7557
+ sendDataMessage({ type: "kubb:format:start", data: [], timestamp: Date.now() });
7558
+ });
7559
+ hooks.on("kubb:format:end", () => {
7560
+ sendDataMessage({ type: "kubb:format:end", data: [], timestamp: Date.now() });
7561
+ });
7562
+ hooks.on("kubb:lint:start", () => {
7563
+ sendDataMessage({ type: "kubb:lint:start", data: [], timestamp: Date.now() });
7564
+ });
7565
+ hooks.on("kubb:lint:end", () => {
7566
+ sendDataMessage({ type: "kubb:lint:end", data: [], timestamp: Date.now() });
7567
+ });
7516
7568
  }
7517
7569
 
7518
7570
  async function connectToStudio(options) {
@@ -1 +1 @@
1
- {"version":3,"file":"nitro.mjs","sources":["../../../../../../node_modules/.pnpm/destr@2.0.5/node_modules/destr/dist/index.mjs","../../../../../../node_modules/.pnpm/ufo@1.6.4/node_modules/ufo/dist/index.mjs","../../../../../../node_modules/.pnpm/radix3@1.1.2/node_modules/radix3/dist/index.mjs","../../../../../../node_modules/.pnpm/defu@6.1.7/node_modules/defu/dist/defu.mjs","../../../../../../node_modules/.pnpm/node-mock-http@1.0.4/node_modules/node-mock-http/dist/index.mjs","../../../../../../node_modules/.pnpm/h3@1.15.11/node_modules/h3/dist/index.mjs","../../../../../../node_modules/.pnpm/hookable@5.5.3/node_modules/hookable/dist/index.mjs","../../../../../../node_modules/.pnpm/node-fetch-native@1.6.7/node_modules/node-fetch-native/dist/native.mjs","../../../../../../node_modules/.pnpm/ofetch@1.5.1/node_modules/ofetch/dist/shared/ofetch.CWycOUEr.mjs","../../../../../../node_modules/.pnpm/ofetch@1.5.1/node_modules/ofetch/dist/node.mjs","../../../../../../node_modules/.pnpm/unstorage@1.17.5_db0@0.3.4_ioredis@5.10.1/node_modules/unstorage/dist/shared/unstorage.zVDD2mZo.mjs","../../../../../../node_modules/.pnpm/unstorage@1.17.5_db0@0.3.4_ioredis@5.10.1/node_modules/unstorage/dist/index.mjs","../../../../../../node_modules/.pnpm/unstorage@1.17.5_db0@0.3.4_ioredis@5.10.1/node_modules/unstorage/drivers/utils/index.mjs","../../../../../../node_modules/.pnpm/unstorage@1.17.5_db0@0.3.4_ioredis@5.10.1/node_modules/unstorage/drivers/utils/node-fs.mjs","../../../../../../node_modules/.pnpm/unstorage@1.17.5_db0@0.3.4_ioredis@5.10.1/node_modules/unstorage/drivers/fs.mjs","../../../../../../node_modules/.pnpm/unstorage@1.17.5_db0@0.3.4_ioredis@5.10.1/node_modules/unstorage/drivers/fs-lite.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/storage.mjs","../../../../../../node_modules/.pnpm/ohash@2.0.11/node_modules/ohash/dist/crypto/node/index.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/hash.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/cache.mjs","../../../../../../node_modules/.pnpm/klona@2.0.6/node_modules/klona/dist/index.mjs","../../../../../../node_modules/.pnpm/scule@1.3.0/node_modules/scule/dist/index.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/utils.env.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/config.mjs","../../../../../../node_modules/.pnpm/unctx@2.5.0/node_modules/unctx/dist/index.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/context.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/route-rules-utils.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/route-rules.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/utils.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/error/utils.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/error/prod.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/plugin.mjs","../../../../server/utils/logger.ts","../../../../server/plugins/fetch-logger.ts","../../../../../../internals/utils/dist/index.js","../../../../server/plugins/heartbeat.ts","../../../../server/utils/token.ts","../../../../server/utils/api.ts","../../../../../ast/dist/index.js","../../../../../core/dist/KubbDriver-Cq1isv2P.js","../../../../../core/dist/index.js","../../../../server/types/agent.ts","../../../../server/utils/agentCache.ts","../../../../server/utils/executeHooks.ts","../../../../server/utils/generate.ts","../../../../server/utils/getCosmiConfig.ts","../../../../server/utils/loadConfig.ts","../../../../server/utils/resolvePlugins.ts","../../../../server/utils/mergePlugins.ts","../../../../server/utils/setupHookListener.ts","../../../../server/constants.ts","../../../../server/utils/ws.ts","../../../../server/utils/connectStudio.ts","../../../../server/utils/runtimeConfig.ts","../../../../server/plugins/studio.ts","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/app.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/lib/http-graceful-shutdown.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/shutdown.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/presets/node/runtime/node-server.mjs"],"names":["createRouter","f","h","i","l","createError","mergeHeaders","s","nodeFetch","Headers","Headers$1","AbortController$1","normalizeKey","defineDriver","DRIVER_NAME","createStorage","fsPromises","PATH_TRAVERSE_RE","fsp","_inlineAppConfig","createRadixRouter","formatMs","resolve","_a","process","memoize","path","__publicField","__privateAdd","__privateGet","__privateMethod","batch","__privateSet","_b","_c","extname","r","e","n","o","files","duration","_d","readFile","writeFile","readdir","version","error","nitroApp","callNodeRequestHandler","fetchNodeRequestHandler","gracefulShutdown","HttpsServer","HttpServer"],"mappings":"","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,55,56,57,58]}
1
+ {"version":3,"file":"nitro.mjs","sources":["../../../../../../node_modules/.pnpm/destr@2.0.5/node_modules/destr/dist/index.mjs","../../../../../../node_modules/.pnpm/ufo@1.6.4/node_modules/ufo/dist/index.mjs","../../../../../../node_modules/.pnpm/radix3@1.1.2/node_modules/radix3/dist/index.mjs","../../../../../../node_modules/.pnpm/defu@6.1.7/node_modules/defu/dist/defu.mjs","../../../../../../node_modules/.pnpm/node-mock-http@1.0.4/node_modules/node-mock-http/dist/index.mjs","../../../../../../node_modules/.pnpm/h3@1.15.11/node_modules/h3/dist/index.mjs","../../../../../../node_modules/.pnpm/hookable@5.5.3/node_modules/hookable/dist/index.mjs","../../../../../../node_modules/.pnpm/node-fetch-native@1.6.7/node_modules/node-fetch-native/dist/native.mjs","../../../../../../node_modules/.pnpm/ofetch@1.5.1/node_modules/ofetch/dist/shared/ofetch.CWycOUEr.mjs","../../../../../../node_modules/.pnpm/ofetch@1.5.1/node_modules/ofetch/dist/node.mjs","../../../../../../node_modules/.pnpm/unstorage@1.17.5_db0@0.3.4_ioredis@5.10.1/node_modules/unstorage/dist/shared/unstorage.zVDD2mZo.mjs","../../../../../../node_modules/.pnpm/unstorage@1.17.5_db0@0.3.4_ioredis@5.10.1/node_modules/unstorage/dist/index.mjs","../../../../../../node_modules/.pnpm/unstorage@1.17.5_db0@0.3.4_ioredis@5.10.1/node_modules/unstorage/drivers/utils/index.mjs","../../../../../../node_modules/.pnpm/unstorage@1.17.5_db0@0.3.4_ioredis@5.10.1/node_modules/unstorage/drivers/utils/node-fs.mjs","../../../../../../node_modules/.pnpm/unstorage@1.17.5_db0@0.3.4_ioredis@5.10.1/node_modules/unstorage/drivers/fs.mjs","../../../../../../node_modules/.pnpm/unstorage@1.17.5_db0@0.3.4_ioredis@5.10.1/node_modules/unstorage/drivers/fs-lite.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/storage.mjs","../../../../../../node_modules/.pnpm/ohash@2.0.11/node_modules/ohash/dist/crypto/node/index.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/hash.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/cache.mjs","../../../../../../node_modules/.pnpm/klona@2.0.6/node_modules/klona/dist/index.mjs","../../../../../../node_modules/.pnpm/scule@1.3.0/node_modules/scule/dist/index.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/utils.env.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/config.mjs","../../../../../../node_modules/.pnpm/unctx@2.5.0/node_modules/unctx/dist/index.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/context.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/route-rules-utils.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/route-rules.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/utils.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/error/utils.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/error/prod.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/plugin.mjs","../../../../server/utils/logger.ts","../../../../server/plugins/fetch-logger.ts","../../../../../../internals/utils/dist/index.js","../../../../server/plugins/heartbeat.ts","../../../../server/utils/token.ts","../../../../server/utils/api.ts","../../../../../ast/dist/index.js","../../../../../core/dist/KubbDriver-BkwOamHp.js","../../../../../core/dist/index.js","../../../../server/types/agent.ts","../../../../server/utils/agentCache.ts","../../../../server/utils/executeHooks.ts","../../../../server/utils/generate.ts","../../../../server/utils/getCosmiConfig.ts","../../../../server/utils/loadConfig.ts","../../../../server/utils/resolvePlugins.ts","../../../../server/utils/mergePlugins.ts","../../../../server/utils/setupHookListener.ts","../../../../server/constants.ts","../../../../server/utils/ws.ts","../../../../server/utils/connectStudio.ts","../../../../server/utils/runtimeConfig.ts","../../../../server/plugins/studio.ts","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/app.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/lib/http-graceful-shutdown.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/runtime/internal/shutdown.mjs","../../../../../../node_modules/.pnpm/nitropack@2.13.4_rolldown@1.0.1/node_modules/nitropack/dist/presets/node/runtime/node-server.mjs"],"names":["createRouter","f","h","i","l","createError","mergeHeaders","s","nodeFetch","Headers","Headers$1","AbortController$1","normalizeKey","defineDriver","DRIVER_NAME","createStorage","fsPromises","PATH_TRAVERSE_RE","fsp","_inlineAppConfig","createRadixRouter","formatMs","resolve","_a","process","memoize","path","__publicField","__privateAdd","__privateGet","__privateMethod","batch","__privateSet","_b","_c","extname","r","e","n","o","files","duration","_d","readFile","writeFile","readdir","version","error","nitroApp","callNodeRequestHandler","fetchNodeRequestHandler","gracefulShutdown","HttpsServer","HttpServer"],"mappings":"","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,55,56,57,58]}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kubb/agent-prod",
3
- "version": "5.0.0-beta.21",
3
+ "version": "5.0.0-beta.23",
4
4
  "type": "module",
5
5
  "private": true,
6
6
  "dependencies": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kubb/agent",
3
- "version": "5.0.0-beta.21",
3
+ "version": "5.0.0-beta.23",
4
4
  "description": "HTTP agent server for Kubb. Exposes code generation via REST API and WebSocket with real-time Kubb Studio integration, machine binding, and Docker support.",
5
5
  "keywords": [
6
6
  "agent",
@@ -43,8 +43,8 @@
43
43
  "tinyexec": "^1.1.2",
44
44
  "unstorage": "^1.17.5",
45
45
  "ws": "^8.20.1",
46
- "@kubb/ast": "5.0.0-beta.21",
47
- "@kubb/core": "5.0.0-beta.21"
46
+ "@kubb/ast": "5.0.0-beta.23",
47
+ "@kubb/core": "5.0.0-beta.23"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@types/ws": "^8.18.1",
@@ -52,9 +52,9 @@
52
52
  "nitropack": "^2.13.4",
53
53
  "vite": "^8.0.13",
54
54
  "@internals/utils": "0.0.0",
55
- "@kubb/adapter-oas": "5.0.0-beta.21",
56
- "@kubb/parser-ts": "5.0.0-beta.21",
57
- "@kubb/renderer-jsx": "5.0.0-beta.21"
55
+ "@kubb/adapter-oas": "5.0.0-beta.23",
56
+ "@kubb/parser-ts": "5.0.0-beta.23",
57
+ "@kubb/renderer-jsx": "5.0.0-beta.23"
58
58
  },
59
59
  "engines": {
60
60
  "node": ">=22"