@kubb/cli 5.0.0-beta.89 → 5.0.0-beta.91

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 (63) hide show
  1. package/README.md +1 -1
  2. package/dist/{Telemetry-Cuzoes9Y.js → Telemetry-7z2tIqPm.js} +132 -138
  3. package/dist/Telemetry-7z2tIqPm.js.map +1 -0
  4. package/dist/{Telemetry-CwQYBgsg.cjs → Telemetry-xcWb-UWT.cjs} +149 -143
  5. package/dist/Telemetry-xcWb-UWT.cjs.map +1 -0
  6. package/dist/{errors-Dc_d7BfX.js → errors-CMvLO2NE.js} +2 -14
  7. package/dist/{errors-Dc_d7BfX.js.map → errors-CMvLO2NE.js.map} +1 -1
  8. package/dist/{errors-gxFK0vrp.cjs → errors-DNxBUo3k.cjs} +1 -19
  9. package/dist/{errors-gxFK0vrp.cjs.map → errors-DNxBUo3k.cjs.map} +1 -1
  10. package/dist/{generate-B_RPyXup.js → generate-C9fJvlhv.js} +2 -2
  11. package/dist/{generate-B_RPyXup.js.map → generate-C9fJvlhv.js.map} +1 -1
  12. package/dist/{generate-BqK0_4yf.cjs → generate-CIVRaeeA.cjs} +2 -2
  13. package/dist/{generate-BqK0_4yf.cjs.map → generate-CIVRaeeA.cjs.map} +1 -1
  14. package/dist/index.cjs +7 -7
  15. package/dist/index.cjs.map +1 -1
  16. package/dist/index.js +7 -7
  17. package/dist/index.js.map +1 -1
  18. package/dist/{init-DnmDbSWX.cjs → init-BBmle7Oc.cjs} +3 -3
  19. package/dist/{init-DnmDbSWX.cjs.map → init-BBmle7Oc.cjs.map} +1 -1
  20. package/dist/{init-CcP9gG-e.js → init-DXjubhO6.js} +3 -3
  21. package/dist/{init-CcP9gG-e.js.map → init-DXjubhO6.js.map} +1 -1
  22. package/dist/{mcp-D01SwyWA.js → mcp-DLKKD_8s.js} +3 -3
  23. package/dist/{mcp-D01SwyWA.js.map → mcp-DLKKD_8s.js.map} +1 -1
  24. package/dist/{mcp-jY8xa57u.cjs → mcp-Dzgpeor_.cjs} +3 -3
  25. package/dist/{mcp-jY8xa57u.cjs.map → mcp-Dzgpeor_.cjs.map} +1 -1
  26. package/dist/{package-C-vta72c.cjs → package-Bsc6NeTU.cjs} +2 -2
  27. package/dist/package-Bsc6NeTU.cjs.map +1 -0
  28. package/dist/package-CaBsNdoM.js +6 -0
  29. package/dist/package-CaBsNdoM.js.map +1 -0
  30. package/dist/{run-C2op_xLp.js → run-BBS4Sc38.js} +44 -69
  31. package/dist/run-BBS4Sc38.js.map +1 -0
  32. package/dist/{run-3qq_Q4Tg.cjs → run-BNOCBw2y.cjs} +12 -3
  33. package/dist/run-BNOCBw2y.cjs.map +1 -0
  34. package/dist/{run-DYzUPE7Z.cjs → run-BdtVrLKu.cjs} +5 -5
  35. package/dist/run-BdtVrLKu.cjs.map +1 -0
  36. package/dist/{run-BzEbTlMp.cjs → run-Bgn3IPJt.cjs} +43 -69
  37. package/dist/run-Bgn3IPJt.cjs.map +1 -0
  38. package/dist/{run-yMRylOST.js → run-CINOocLR.js} +12 -3
  39. package/dist/run-CINOocLR.js.map +1 -0
  40. package/dist/{run-BFhNcn8b.js → run-CaOjZRiQ.js} +5 -5
  41. package/dist/run-CaOjZRiQ.js.map +1 -0
  42. package/dist/{run-B9FN0sHW.cjs → run-D2vd34xp.cjs} +5 -5
  43. package/dist/run-D2vd34xp.cjs.map +1 -0
  44. package/dist/{run-D0Gs_UzJ.js → run-lgrTO14E.js} +5 -5
  45. package/dist/run-lgrTO14E.js.map +1 -0
  46. package/dist/{validate-3IUPl8r5.cjs → validate-DaxZu9c3.cjs} +3 -3
  47. package/dist/{validate-3IUPl8r5.cjs.map → validate-DaxZu9c3.cjs.map} +1 -1
  48. package/dist/{validate-DNX7m3G5.js → validate-ugxFStuH.js} +3 -3
  49. package/dist/{validate-DNX7m3G5.js.map → validate-ugxFStuH.js.map} +1 -1
  50. package/package.json +6 -6
  51. package/dist/Telemetry-Cuzoes9Y.js.map +0 -1
  52. package/dist/Telemetry-CwQYBgsg.cjs.map +0 -1
  53. package/dist/package-C-vta72c.cjs.map +0 -1
  54. package/dist/package-CZ9FY0UC.js +0 -6
  55. package/dist/package-CZ9FY0UC.js.map +0 -1
  56. package/dist/run-3qq_Q4Tg.cjs.map +0 -1
  57. package/dist/run-B9FN0sHW.cjs.map +0 -1
  58. package/dist/run-BFhNcn8b.js.map +0 -1
  59. package/dist/run-BzEbTlMp.cjs.map +0 -1
  60. package/dist/run-C2op_xLp.js.map +0 -1
  61. package/dist/run-D0Gs_UzJ.js.map +0 -1
  62. package/dist/run-DYzUPE7Z.cjs.map +0 -1
  63. package/dist/run-yMRylOST.js.map +0 -1
package/README.md CHANGED
@@ -104,7 +104,7 @@ npx kubb generate
104
104
 
105
105
  | Flag | Short | Type | Default | Description |
106
106
  | -------------------- | ----- | ------- | ------- | --------------------------------------------------------------------------------------------------- |
107
- | `[input]` | | string | | OpenAPI file path overrides `input.path` in the config |
107
+ | `[input]` | | string | | OpenAPI file path or URL that overrides `input` in the config |
108
108
  | `--config <path>` | `-c` | string | | Path to the Kubb config file |
109
109
  | `--logLevel <level>` | `-l` | string | `info` | Log level: `silent`, `info`, or `verbose` |
110
110
  | `--watch` | `-w` | boolean | `false` | Re-generate whenever the input file changes |
@@ -137,152 +137,146 @@ const QUIET_FLAGS = /* @__PURE__ */ new Set([
137
137
  //#endregion
138
138
  //#region src/Telemetry.ts
139
139
  /**
140
- * Anonymous OTLP usage telemetry for a Kubb run. The API is static, so call it as `Telemetry.build(...)`
141
- * and `Telemetry.send(...)`. No file paths, OpenAPI specs, or secrets are sent, and sending fails
142
- * silently so a failed request never breaks the run.
140
+ * Returns `true` when telemetry is disabled via `DO_NOT_TRACK` or `KUBB_DISABLE_TELEMETRY`.
143
141
  */
144
- var Telemetry = class Telemetry {
145
- /**
146
- * Returns `true` when telemetry is disabled via `DO_NOT_TRACK` or `KUBB_DISABLE_TELEMETRY`.
147
- */
148
- static get isDisabled() {
149
- return process$1.env["DO_NOT_TRACK"] === "1" || process$1.env["DO_NOT_TRACK"] === "true" || process$1.env["KUBB_DISABLE_TELEMETRY"] === "1" || process$1.env["KUBB_DISABLE_TELEMETRY"] === "true";
150
- }
151
- /**
152
- * Build an anonymous telemetry payload from a completed generation run.
153
- */
154
- static build(options) {
155
- const [seconds, nanoseconds] = process$1.hrtime(options.hrStart);
156
- const duration = Math.round(seconds * 1e3 + nanoseconds / 1e6);
157
- return {
158
- command: options.command,
159
- kubbVersion: options.kubbVersion,
160
- nodeVersion: process$1.versions.node.split(".")[0],
161
- runtime: runtime.name,
162
- runtimeVersion: runtime.version.split(".")[0],
163
- platform: os.platform(),
164
- ci: isCIEnvironment(),
165
- plugins: options.plugins ?? [],
166
- duration,
167
- filesCreated: options.filesCreated ?? 0,
168
- status: options.status
169
- };
170
- }
171
- /**
172
- * Convert a {@link TelemetryEvent} into an OTLP-compatible JSON trace payload.
173
- *
174
- * @see https://opentelemetry.io/docs/languages/sdk-configuration/otlp-exporter/
175
- */
176
- static buildOtlpPayload(event) {
177
- const traceId = randomBytes(16).toString("hex");
178
- const spanId = randomBytes(8).toString("hex");
179
- const endTimeNs = BigInt(Date.now()) * 1000000n;
180
- const startTimeNs = endTimeNs - BigInt(event.duration) * 1000000n;
181
- const attributes = [
142
+ function isDisabled() {
143
+ return process$1.env["DO_NOT_TRACK"] === "1" || process$1.env["DO_NOT_TRACK"] === "true" || process$1.env["KUBB_DISABLE_TELEMETRY"] === "1" || process$1.env["KUBB_DISABLE_TELEMETRY"] === "true";
144
+ }
145
+ /**
146
+ * Build an anonymous telemetry payload from a completed generation run.
147
+ */
148
+ function buildTelemetryEvent(options) {
149
+ const [seconds, nanoseconds] = process$1.hrtime(options.hrStart);
150
+ const duration = Math.round(seconds * 1e3 + nanoseconds / 1e6);
151
+ return {
152
+ command: options.command,
153
+ kubbVersion: options.kubbVersion,
154
+ nodeVersion: process$1.versions.node.split(".")[0],
155
+ runtime: runtime.name,
156
+ runtimeVersion: runtime.version.split(".")[0],
157
+ platform: os.platform(),
158
+ ci: isCIEnvironment(),
159
+ plugins: options.plugins ?? [],
160
+ duration,
161
+ filesCreated: options.filesCreated ?? 0,
162
+ status: options.status
163
+ };
164
+ }
165
+ /**
166
+ * Convert a {@link TelemetryEvent} into an OTLP-compatible JSON trace payload.
167
+ *
168
+ * @see https://opentelemetry.io/docs/languages/sdk-configuration/otlp-exporter/
169
+ */
170
+ function buildOtlpPayload(event) {
171
+ const traceId = randomBytes(16).toString("hex");
172
+ const spanId = randomBytes(8).toString("hex");
173
+ const endTimeNs = BigInt(Date.now()) * 1000000n;
174
+ const startTimeNs = endTimeNs - BigInt(event.duration) * 1000000n;
175
+ const attributes = [
176
+ {
177
+ key: "kubb.command",
178
+ value: { stringValue: event.command }
179
+ },
180
+ {
181
+ key: "kubb.version",
182
+ value: { stringValue: event.kubbVersion }
183
+ },
184
+ {
185
+ key: "kubb.node_version",
186
+ value: { stringValue: event.nodeVersion }
187
+ },
188
+ {
189
+ key: "kubb.runtime",
190
+ value: { stringValue: event.runtime }
191
+ },
192
+ {
193
+ key: "kubb.runtime_version",
194
+ value: { stringValue: event.runtimeVersion }
195
+ },
196
+ {
197
+ key: "kubb.platform",
198
+ value: { stringValue: event.platform }
199
+ },
200
+ {
201
+ key: "kubb.ci",
202
+ value: { boolValue: event.ci }
203
+ },
204
+ {
205
+ key: "kubb.files_created",
206
+ value: { intValue: event.filesCreated }
207
+ },
208
+ {
209
+ key: "kubb.status",
210
+ value: { stringValue: event.status }
211
+ },
212
+ {
213
+ key: "kubb.plugins",
214
+ value: { arrayValue: { values: event.plugins.map((p) => ({ kvlistValue: { values: [{
215
+ key: "name",
216
+ value: { stringValue: p.name }
217
+ }, {
218
+ key: "options",
219
+ value: { stringValue: JSON.stringify({
220
+ ...p.options,
221
+ usedEnumNames: void 0
222
+ }) }
223
+ }] } })) } }
224
+ }
225
+ ];
226
+ return { resourceSpans: [{
227
+ resource: { attributes: [
182
228
  {
183
- key: "kubb.command",
184
- value: { stringValue: event.command }
229
+ key: "service.name",
230
+ value: { stringValue: "kubb-core" }
185
231
  },
186
232
  {
187
- key: "kubb.version",
233
+ key: "service.version",
188
234
  value: { stringValue: event.kubbVersion }
189
235
  },
190
236
  {
191
- key: "kubb.node_version",
192
- value: { stringValue: event.nodeVersion }
193
- },
194
- {
195
- key: "kubb.runtime",
196
- value: { stringValue: event.runtime }
197
- },
198
- {
199
- key: "kubb.runtime_version",
200
- value: { stringValue: event.runtimeVersion }
201
- },
202
- {
203
- key: "kubb.platform",
204
- value: { stringValue: event.platform }
205
- },
206
- {
207
- key: "kubb.ci",
208
- value: { boolValue: event.ci }
209
- },
210
- {
211
- key: "kubb.files_created",
212
- value: { intValue: event.filesCreated }
213
- },
214
- {
215
- key: "kubb.status",
216
- value: { stringValue: event.status }
217
- },
218
- {
219
- key: "kubb.plugins",
220
- value: { arrayValue: { values: event.plugins.map((p) => ({ kvlistValue: { values: [{
221
- key: "name",
222
- value: { stringValue: p.name }
223
- }, {
224
- key: "options",
225
- value: { stringValue: JSON.stringify({
226
- ...p.options,
227
- usedEnumNames: void 0
228
- }) }
229
- }] } })) } }
237
+ key: "telemetry.sdk.language",
238
+ value: { stringValue: "nodejs" }
230
239
  }
231
- ];
232
- return { resourceSpans: [{
233
- resource: { attributes: [
234
- {
235
- key: "service.name",
236
- value: { stringValue: "kubb-core" }
237
- },
238
- {
239
- key: "service.version",
240
- value: { stringValue: event.kubbVersion }
241
- },
242
- {
243
- key: "telemetry.sdk.language",
244
- value: { stringValue: "nodejs" }
245
- }
246
- ] },
247
- scopeSpans: [{
248
- scope: {
249
- name: "kubb-core",
250
- version: event.kubbVersion
251
- },
252
- spans: [{
253
- traceId,
254
- spanId,
255
- name: event.command,
256
- kind: 1,
257
- startTimeUnixNano: String(startTimeNs),
258
- endTimeUnixNano: String(endTimeNs),
259
- attributes,
260
- status: { code: event.status === "success" ? 1 : 2 }
261
- }]
240
+ ] },
241
+ scopeSpans: [{
242
+ scope: {
243
+ name: "kubb-core",
244
+ version: event.kubbVersion
245
+ },
246
+ spans: [{
247
+ traceId,
248
+ spanId,
249
+ name: event.command,
250
+ kind: 1,
251
+ startTimeUnixNano: String(startTimeNs),
252
+ endTimeUnixNano: String(endTimeNs),
253
+ attributes,
254
+ status: { code: event.status === "success" ? 1 : 2 }
262
255
  }]
263
- }] };
264
- }
265
- /**
266
- * Send an anonymous telemetry event to the Kubb OTLP endpoint. Respects `DO_NOT_TRACK` and
267
- * `KUBB_DISABLE_TELEMETRY`, and fails silently so telemetry never interrupts a run.
268
- */
269
- static async send(event) {
270
- if (Telemetry.isDisabled) return;
271
- try {
272
- await fetch(`${OTLP_ENDPOINT}/v1/traces`, {
273
- method: "POST",
274
- headers: {
275
- "Content-Type": "application/json",
276
- "Kubb-Telemetry-Version": "1",
277
- "Kubb-Telemetry-Source": "kubb-core"
278
- },
279
- body: JSON.stringify(Telemetry.buildOtlpPayload(event)),
280
- signal: AbortSignal.timeout(5e3)
281
- });
282
- } catch (_e) {}
283
- }
284
- };
256
+ }]
257
+ }] };
258
+ }
259
+ /**
260
+ * Send an anonymous telemetry event to the Kubb OTLP endpoint. Respects `DO_NOT_TRACK` and
261
+ * `KUBB_DISABLE_TELEMETRY`, and fails silently so telemetry never interrupts a run. No file
262
+ * paths, OpenAPI specs, or secrets are sent.
263
+ */
264
+ async function sendTelemetry(event) {
265
+ if (isDisabled()) return;
266
+ try {
267
+ await fetch(`${OTLP_ENDPOINT}/v1/traces`, {
268
+ method: "POST",
269
+ headers: {
270
+ "Content-Type": "application/json",
271
+ "Kubb-Telemetry-Version": "1",
272
+ "Kubb-Telemetry-Source": "kubb-core"
273
+ },
274
+ body: JSON.stringify(buildOtlpPayload(event)),
275
+ signal: AbortSignal.timeout(5e3)
276
+ });
277
+ } catch (_e) {}
278
+ }
285
279
  //#endregion
286
- export { WATCHER_IGNORED_PATHS as a, UPDATE_CHECK_TIMEOUT_MS as i, KUBB_NPM_PACKAGE_URL as n, canUseTTY as o, QUIET_FLAGS as r, Telemetry as t };
280
+ export { QUIET_FLAGS as a, canUseTTY as c, KUBB_NPM_PACKAGE_URL as i, isDisabled as n, UPDATE_CHECK_TIMEOUT_MS as o, sendTelemetry as r, WATCHER_IGNORED_PATHS as s, buildTelemetryEvent as t };
287
281
 
288
- //# sourceMappingURL=Telemetry-Cuzoes9Y.js.map
282
+ //# sourceMappingURL=Telemetry-7z2tIqPm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Telemetry-7z2tIqPm.js","names":["process"],"sources":["../../../internals/utils/src/env.ts","../../../internals/utils/src/runtime.ts","../src/constants.ts","../src/Telemetry.ts"],"sourcesContent":["/**\n * Returns `true` when the process is running in a CI environment.\n * Covers GitHub Actions, GitLab CI, CircleCI, Travis CI, Jenkins, Bitbucket,\n * TeamCity, Buildkite, and Azure Pipelines.\n *\n * @example\n * ```ts\n * if (isCIEnvironment()) {\n * logger.level = 'error'\n * }\n * ```\n */\nexport function isCIEnvironment(): boolean {\n return !!(\n process.env.CI ||\n process.env.GITHUB_ACTIONS ||\n process.env.GITLAB_CI ||\n process.env.BITBUCKET_BUILD_NUMBER ||\n process.env.JENKINS_URL ||\n process.env.CIRCLECI ||\n process.env.TRAVIS ||\n process.env.TEAMCITY_VERSION ||\n process.env.BUILDKITE ||\n process.env.TF_BUILD\n )\n}\n\n/**\n * Returns `true` when the process has an interactive TTY with a valid terminal\n * width and is not running in CI.\n *\n * Some IDE-embedded terminals report `isTTY = true` but set `columns` to `0`,\n * which breaks clack's box-drawing helpers (they call `String.prototype.repeat`\n * with a negative count and throw a `RangeError`). We therefore require a\n * positive column count before declaring the TTY usable.\n *\n * @example\n * ```ts\n * if (canUseTTY()) {\n * renderProgressBar()\n * }\n * ```\n */\nexport function canUseTTY(): boolean {\n return process.stdout.isTTY && (process.stdout.columns ?? 0) > 0 && !isCIEnvironment()\n}\n","/**\n * Name of the JavaScript runtime executing the current process.\n */\ntype RuntimeName = 'bun' | 'deno' | 'node'\n\n/**\n * Detects the JavaScript runtime executing the current process and exposes its name and version.\n *\n * Prefer the shared {@link runtime} instance over constructing your own.\n */\nclass Runtime {\n /**\n * `true` when the current process is running under Bun.\n *\n * Detection keys off the global `Bun` object rather than `process.versions`,\n * because Bun polyfills `process.versions.node` for Node compatibility and would\n * otherwise look like Node.\n *\n * @example\n * ```ts\n * if (runtime.isBun) {\n * await Bun.write(path, data)\n * }\n * ```\n */\n get isBun(): boolean {\n return typeof Bun !== 'undefined'\n }\n\n /**\n * `true` when the current process is running under Deno.\n */\n get isDeno(): boolean {\n return typeof (globalThis as { Deno?: unknown }).Deno !== 'undefined'\n }\n\n /**\n * `true` when the current process is running under Node.\n *\n * Bun and Deno are excluded first so a polyfilled `process` does not register as Node.\n */\n get isNode(): boolean {\n return !this.isBun && !this.isDeno && typeof process !== 'undefined' && process.versions?.node != null\n }\n\n /**\n * Name of the runtime executing the current process.\n *\n * @example\n * ```ts\n * runtime.name // 'bun' when run with `bun kubb`, 'node' otherwise\n * ```\n */\n get name(): RuntimeName {\n if (this.isBun) return 'bun'\n if (this.isDeno) return 'deno'\n\n return 'node'\n }\n\n /**\n * Version of the active runtime, or an empty string when it cannot be read.\n *\n * @example\n * ```ts\n * runtime.version // '1.3.11' under Bun, '22.22.2' under Node\n * ```\n */\n get version(): string {\n if (this.isBun) return process.versions.bun ?? ''\n if (this.isDeno) return (globalThis as { Deno?: { version?: { deno?: string } } }).Deno?.version?.deno ?? ''\n\n return process.versions?.node ?? ''\n }\n}\n\n/**\n * Shared {@link Runtime} instance describing the JavaScript runtime executing the current process.\n */\nexport const runtime = new Runtime()\n","/**\n * NPM registry endpoint used to check for @kubb/cli updates.\n */\nexport const KUBB_NPM_PACKAGE_URL = 'https://registry.npmjs.org/@kubb/cli/latest' as const\n\n/**\n * OpenTelemetry ingestion endpoint for anonymous usage telemetry.\n */\nexport const OTLP_ENDPOINT = 'https://otlp.kubb.dev' as const\n\n/**\n * Glob pattern for paths the file watcher ignores.\n */\nexport const WATCHER_IGNORED_PATHS = '**/{.git,node_modules}/**' as const\n\n/**\n * Quiet window in milliseconds that collapses a burst of watcher events (an editor save emits\n * several) into a single rebuild.\n */\nexport const WATCHER_DEBOUNCE_MS = 100\n\n/**\n * Upper bound in milliseconds for the npm update check, so a slow registry never stalls a run.\n */\nexport const UPDATE_CHECK_TIMEOUT_MS = 3_000\n\n/**\n * Flags that short-circuit execution (help and version). The telemetry notice is suppressed for these.\n */\nexport const QUIET_FLAGS = new Set<string>(['--help', '-h', '--version', '-v'])\n","import { randomBytes } from 'node:crypto'\nimport os from 'node:os'\nimport process from 'node:process'\nimport { isCIEnvironment, runtime } from '@internals/utils'\nimport { OTLP_ENDPOINT } from './constants.ts'\n\ntype OtlpKeyValue = {\n key: string\n value:\n | { stringValue: string }\n | { boolValue: boolean }\n | { intValue: number }\n | { arrayValue: { values: Array<{ kvlistValue: { values: Array<OtlpKeyValue> } }> } }\n | { kvlistValue: { values: Array<OtlpKeyValue> } }\n}\n\ntype OtlpSpan = {\n traceId: string\n spanId: string\n name: string\n kind: 1\n startTimeUnixNano: string\n endTimeUnixNano: string\n attributes: Array<OtlpKeyValue>\n status: { code: 1 | 2 }\n}\n\ntype OtlpExportTraceServiceRequest = {\n resourceSpans: Array<{\n resource: { attributes: Array<OtlpKeyValue> }\n scopeSpans: Array<{\n scope: { name: string; version: string }\n spans: Array<OtlpSpan>\n }>\n }>\n}\n\n/**\n * Anonymous plugin name and options snapshot sent with each telemetry event.\n */\nexport type TelemetryPlugin = {\n /**\n * Plugin name as registered in the Kubb config, e.g. `'@kubb/plugin-ts'`.\n */\n name: string\n /**\n * Anonymized snapshot of the plugin options. Values are included but cannot be traced back to a user.\n */\n options: Record<string, unknown>\n}\n\n/**\n * Anonymous snapshot of a single Kubb run, built by {@link buildTelemetryEvent} and sent by {@link sendTelemetry}.\n */\nexport type TelemetryEvent = {\n command: string\n kubbVersion: string\n /**\n * Major version of Node that executed the run, e.g. `'22'`.\n */\n nodeVersion: string\n /**\n * Name of the JavaScript runtime that executed the run, `'bun'`, `'deno'`, or `'node'`.\n */\n runtime: string\n /**\n * Major version of the active runtime, e.g. `'1'` under Bun or `'22'` under Node.\n */\n runtimeVersion: string\n platform: string\n ci: boolean\n plugins: Array<TelemetryPlugin>\n duration: number\n filesCreated: number\n status: 'success' | 'failed'\n}\n\n/**\n * Returns `true` when telemetry is disabled via `DO_NOT_TRACK` or `KUBB_DISABLE_TELEMETRY`.\n */\nexport function isDisabled(): boolean {\n return (\n process.env['DO_NOT_TRACK'] === '1' ||\n process.env['DO_NOT_TRACK'] === 'true' ||\n process.env['KUBB_DISABLE_TELEMETRY'] === '1' ||\n process.env['KUBB_DISABLE_TELEMETRY'] === 'true'\n )\n}\n\n/**\n * Build an anonymous telemetry payload from a completed generation run.\n */\nexport function buildTelemetryEvent(options: {\n command: 'generate' | 'mcp' | 'validate' | 'agent'\n kubbVersion: string\n plugins?: Array<TelemetryPlugin>\n hrStart: [number, number]\n filesCreated?: number\n status: 'success' | 'failed'\n}): TelemetryEvent {\n const [seconds, nanoseconds] = process.hrtime(options.hrStart)\n const duration = Math.round(seconds * 1000 + nanoseconds / 1e6)\n\n return {\n command: options.command,\n kubbVersion: options.kubbVersion,\n nodeVersion: process.versions.node.split('.')[0] as string,\n runtime: runtime.name,\n runtimeVersion: runtime.version.split('.')[0] as string,\n platform: os.platform(),\n ci: isCIEnvironment(),\n plugins: options.plugins ?? [],\n duration,\n filesCreated: options.filesCreated ?? 0,\n status: options.status,\n }\n}\n\n/**\n * Convert a {@link TelemetryEvent} into an OTLP-compatible JSON trace payload.\n *\n * @see https://opentelemetry.io/docs/languages/sdk-configuration/otlp-exporter/\n */\nexport function buildOtlpPayload(event: TelemetryEvent): OtlpExportTraceServiceRequest {\n const traceId = randomBytes(16).toString('hex')\n const spanId = randomBytes(8).toString('hex')\n const endTimeNs = BigInt(Date.now()) * 1_000_000n\n const startTimeNs = endTimeNs - BigInt(event.duration) * 1_000_000n\n\n const attributes: Array<OtlpKeyValue> = [\n { key: 'kubb.command', value: { stringValue: event.command } },\n { key: 'kubb.version', value: { stringValue: event.kubbVersion } },\n { key: 'kubb.node_version', value: { stringValue: event.nodeVersion } },\n { key: 'kubb.runtime', value: { stringValue: event.runtime } },\n { key: 'kubb.runtime_version', value: { stringValue: event.runtimeVersion } },\n { key: 'kubb.platform', value: { stringValue: event.platform } },\n { key: 'kubb.ci', value: { boolValue: event.ci } },\n { key: 'kubb.files_created', value: { intValue: event.filesCreated } },\n { key: 'kubb.status', value: { stringValue: event.status } },\n {\n key: 'kubb.plugins',\n value: {\n arrayValue: {\n values: event.plugins.map((p) => ({\n kvlistValue: {\n values: [\n { key: 'name', value: { stringValue: p.name } },\n {\n key: 'options',\n value: {\n stringValue: JSON.stringify({\n ...p.options,\n usedEnumNames: undefined,\n }),\n },\n },\n ],\n },\n })),\n },\n },\n },\n ]\n\n return {\n resourceSpans: [\n {\n resource: {\n attributes: [\n { key: 'service.name', value: { stringValue: 'kubb-core' } },\n {\n key: 'service.version',\n value: { stringValue: event.kubbVersion },\n },\n { key: 'telemetry.sdk.language', value: { stringValue: 'nodejs' } },\n ],\n },\n scopeSpans: [\n {\n scope: { name: 'kubb-core', version: event.kubbVersion },\n spans: [\n {\n traceId,\n spanId,\n name: event.command,\n kind: 1,\n startTimeUnixNano: String(startTimeNs),\n endTimeUnixNano: String(endTimeNs),\n attributes,\n status: {\n code: event.status === 'success' ? 1 : 2,\n },\n },\n ],\n },\n ],\n },\n ],\n }\n}\n\n/**\n * Send an anonymous telemetry event to the Kubb OTLP endpoint. Respects `DO_NOT_TRACK` and\n * `KUBB_DISABLE_TELEMETRY`, and fails silently so telemetry never interrupts a run. No file\n * paths, OpenAPI specs, or secrets are sent.\n */\nexport async function sendTelemetry(event: TelemetryEvent): Promise<void> {\n if (isDisabled()) {\n return\n }\n\n try {\n await fetch(`${OTLP_ENDPOINT}/v1/traces`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'Kubb-Telemetry-Version': '1',\n 'Kubb-Telemetry-Source': 'kubb-core',\n },\n body: JSON.stringify(buildOtlpPayload(event)),\n signal: AbortSignal.timeout(5_000),\n })\n } catch (_e) {\n // Fail silently, telemetry must never break the run\n }\n}\n"],"mappings":"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"}
@@ -139,151 +139,145 @@ const QUIET_FLAGS = /* @__PURE__ */ new Set([
139
139
  //#endregion
140
140
  //#region src/Telemetry.ts
141
141
  /**
142
- * Anonymous OTLP usage telemetry for a Kubb run. The API is static, so call it as `Telemetry.build(...)`
143
- * and `Telemetry.send(...)`. No file paths, OpenAPI specs, or secrets are sent, and sending fails
144
- * silently so a failed request never breaks the run.
142
+ * Returns `true` when telemetry is disabled via `DO_NOT_TRACK` or `KUBB_DISABLE_TELEMETRY`.
145
143
  */
146
- var Telemetry = class Telemetry {
147
- /**
148
- * Returns `true` when telemetry is disabled via `DO_NOT_TRACK` or `KUBB_DISABLE_TELEMETRY`.
149
- */
150
- static get isDisabled() {
151
- return node_process.default.env["DO_NOT_TRACK"] === "1" || node_process.default.env["DO_NOT_TRACK"] === "true" || node_process.default.env["KUBB_DISABLE_TELEMETRY"] === "1" || node_process.default.env["KUBB_DISABLE_TELEMETRY"] === "true";
152
- }
153
- /**
154
- * Build an anonymous telemetry payload from a completed generation run.
155
- */
156
- static build(options) {
157
- const [seconds, nanoseconds] = node_process.default.hrtime(options.hrStart);
158
- const duration = Math.round(seconds * 1e3 + nanoseconds / 1e6);
159
- return {
160
- command: options.command,
161
- kubbVersion: options.kubbVersion,
162
- nodeVersion: node_process.default.versions.node.split(".")[0],
163
- runtime: runtime.name,
164
- runtimeVersion: runtime.version.split(".")[0],
165
- platform: node_os.default.platform(),
166
- ci: isCIEnvironment(),
167
- plugins: options.plugins ?? [],
168
- duration,
169
- filesCreated: options.filesCreated ?? 0,
170
- status: options.status
171
- };
172
- }
173
- /**
174
- * Convert a {@link TelemetryEvent} into an OTLP-compatible JSON trace payload.
175
- *
176
- * @see https://opentelemetry.io/docs/languages/sdk-configuration/otlp-exporter/
177
- */
178
- static buildOtlpPayload(event) {
179
- const traceId = (0, node_crypto.randomBytes)(16).toString("hex");
180
- const spanId = (0, node_crypto.randomBytes)(8).toString("hex");
181
- const endTimeNs = BigInt(Date.now()) * 1000000n;
182
- const startTimeNs = endTimeNs - BigInt(event.duration) * 1000000n;
183
- const attributes = [
144
+ function isDisabled() {
145
+ return node_process.default.env["DO_NOT_TRACK"] === "1" || node_process.default.env["DO_NOT_TRACK"] === "true" || node_process.default.env["KUBB_DISABLE_TELEMETRY"] === "1" || node_process.default.env["KUBB_DISABLE_TELEMETRY"] === "true";
146
+ }
147
+ /**
148
+ * Build an anonymous telemetry payload from a completed generation run.
149
+ */
150
+ function buildTelemetryEvent(options) {
151
+ const [seconds, nanoseconds] = node_process.default.hrtime(options.hrStart);
152
+ const duration = Math.round(seconds * 1e3 + nanoseconds / 1e6);
153
+ return {
154
+ command: options.command,
155
+ kubbVersion: options.kubbVersion,
156
+ nodeVersion: node_process.default.versions.node.split(".")[0],
157
+ runtime: runtime.name,
158
+ runtimeVersion: runtime.version.split(".")[0],
159
+ platform: node_os.default.platform(),
160
+ ci: isCIEnvironment(),
161
+ plugins: options.plugins ?? [],
162
+ duration,
163
+ filesCreated: options.filesCreated ?? 0,
164
+ status: options.status
165
+ };
166
+ }
167
+ /**
168
+ * Convert a {@link TelemetryEvent} into an OTLP-compatible JSON trace payload.
169
+ *
170
+ * @see https://opentelemetry.io/docs/languages/sdk-configuration/otlp-exporter/
171
+ */
172
+ function buildOtlpPayload(event) {
173
+ const traceId = (0, node_crypto.randomBytes)(16).toString("hex");
174
+ const spanId = (0, node_crypto.randomBytes)(8).toString("hex");
175
+ const endTimeNs = BigInt(Date.now()) * 1000000n;
176
+ const startTimeNs = endTimeNs - BigInt(event.duration) * 1000000n;
177
+ const attributes = [
178
+ {
179
+ key: "kubb.command",
180
+ value: { stringValue: event.command }
181
+ },
182
+ {
183
+ key: "kubb.version",
184
+ value: { stringValue: event.kubbVersion }
185
+ },
186
+ {
187
+ key: "kubb.node_version",
188
+ value: { stringValue: event.nodeVersion }
189
+ },
190
+ {
191
+ key: "kubb.runtime",
192
+ value: { stringValue: event.runtime }
193
+ },
194
+ {
195
+ key: "kubb.runtime_version",
196
+ value: { stringValue: event.runtimeVersion }
197
+ },
198
+ {
199
+ key: "kubb.platform",
200
+ value: { stringValue: event.platform }
201
+ },
202
+ {
203
+ key: "kubb.ci",
204
+ value: { boolValue: event.ci }
205
+ },
206
+ {
207
+ key: "kubb.files_created",
208
+ value: { intValue: event.filesCreated }
209
+ },
210
+ {
211
+ key: "kubb.status",
212
+ value: { stringValue: event.status }
213
+ },
214
+ {
215
+ key: "kubb.plugins",
216
+ value: { arrayValue: { values: event.plugins.map((p) => ({ kvlistValue: { values: [{
217
+ key: "name",
218
+ value: { stringValue: p.name }
219
+ }, {
220
+ key: "options",
221
+ value: { stringValue: JSON.stringify({
222
+ ...p.options,
223
+ usedEnumNames: void 0
224
+ }) }
225
+ }] } })) } }
226
+ }
227
+ ];
228
+ return { resourceSpans: [{
229
+ resource: { attributes: [
184
230
  {
185
- key: "kubb.command",
186
- value: { stringValue: event.command }
231
+ key: "service.name",
232
+ value: { stringValue: "kubb-core" }
187
233
  },
188
234
  {
189
- key: "kubb.version",
235
+ key: "service.version",
190
236
  value: { stringValue: event.kubbVersion }
191
237
  },
192
238
  {
193
- key: "kubb.node_version",
194
- value: { stringValue: event.nodeVersion }
195
- },
196
- {
197
- key: "kubb.runtime",
198
- value: { stringValue: event.runtime }
199
- },
200
- {
201
- key: "kubb.runtime_version",
202
- value: { stringValue: event.runtimeVersion }
203
- },
204
- {
205
- key: "kubb.platform",
206
- value: { stringValue: event.platform }
207
- },
208
- {
209
- key: "kubb.ci",
210
- value: { boolValue: event.ci }
211
- },
212
- {
213
- key: "kubb.files_created",
214
- value: { intValue: event.filesCreated }
215
- },
216
- {
217
- key: "kubb.status",
218
- value: { stringValue: event.status }
219
- },
220
- {
221
- key: "kubb.plugins",
222
- value: { arrayValue: { values: event.plugins.map((p) => ({ kvlistValue: { values: [{
223
- key: "name",
224
- value: { stringValue: p.name }
225
- }, {
226
- key: "options",
227
- value: { stringValue: JSON.stringify({
228
- ...p.options,
229
- usedEnumNames: void 0
230
- }) }
231
- }] } })) } }
239
+ key: "telemetry.sdk.language",
240
+ value: { stringValue: "nodejs" }
232
241
  }
233
- ];
234
- return { resourceSpans: [{
235
- resource: { attributes: [
236
- {
237
- key: "service.name",
238
- value: { stringValue: "kubb-core" }
239
- },
240
- {
241
- key: "service.version",
242
- value: { stringValue: event.kubbVersion }
243
- },
244
- {
245
- key: "telemetry.sdk.language",
246
- value: { stringValue: "nodejs" }
247
- }
248
- ] },
249
- scopeSpans: [{
250
- scope: {
251
- name: "kubb-core",
252
- version: event.kubbVersion
253
- },
254
- spans: [{
255
- traceId,
256
- spanId,
257
- name: event.command,
258
- kind: 1,
259
- startTimeUnixNano: String(startTimeNs),
260
- endTimeUnixNano: String(endTimeNs),
261
- attributes,
262
- status: { code: event.status === "success" ? 1 : 2 }
263
- }]
242
+ ] },
243
+ scopeSpans: [{
244
+ scope: {
245
+ name: "kubb-core",
246
+ version: event.kubbVersion
247
+ },
248
+ spans: [{
249
+ traceId,
250
+ spanId,
251
+ name: event.command,
252
+ kind: 1,
253
+ startTimeUnixNano: String(startTimeNs),
254
+ endTimeUnixNano: String(endTimeNs),
255
+ attributes,
256
+ status: { code: event.status === "success" ? 1 : 2 }
264
257
  }]
265
- }] };
266
- }
267
- /**
268
- * Send an anonymous telemetry event to the Kubb OTLP endpoint. Respects `DO_NOT_TRACK` and
269
- * `KUBB_DISABLE_TELEMETRY`, and fails silently so telemetry never interrupts a run.
270
- */
271
- static async send(event) {
272
- if (Telemetry.isDisabled) return;
273
- try {
274
- await fetch(`${OTLP_ENDPOINT}/v1/traces`, {
275
- method: "POST",
276
- headers: {
277
- "Content-Type": "application/json",
278
- "Kubb-Telemetry-Version": "1",
279
- "Kubb-Telemetry-Source": "kubb-core"
280
- },
281
- body: JSON.stringify(Telemetry.buildOtlpPayload(event)),
282
- signal: AbortSignal.timeout(5e3)
283
- });
284
- } catch (_e) {}
285
- }
286
- };
258
+ }]
259
+ }] };
260
+ }
261
+ /**
262
+ * Send an anonymous telemetry event to the Kubb OTLP endpoint. Respects `DO_NOT_TRACK` and
263
+ * `KUBB_DISABLE_TELEMETRY`, and fails silently so telemetry never interrupts a run. No file
264
+ * paths, OpenAPI specs, or secrets are sent.
265
+ */
266
+ async function sendTelemetry(event) {
267
+ if (isDisabled()) return;
268
+ try {
269
+ await fetch(`${OTLP_ENDPOINT}/v1/traces`, {
270
+ method: "POST",
271
+ headers: {
272
+ "Content-Type": "application/json",
273
+ "Kubb-Telemetry-Version": "1",
274
+ "Kubb-Telemetry-Source": "kubb-core"
275
+ },
276
+ body: JSON.stringify(buildOtlpPayload(event)),
277
+ signal: AbortSignal.timeout(5e3)
278
+ });
279
+ } catch (_e) {}
280
+ }
287
281
  //#endregion
288
282
  Object.defineProperty(exports, "KUBB_NPM_PACKAGE_URL", {
289
283
  enumerable: true,
@@ -297,12 +291,6 @@ Object.defineProperty(exports, "QUIET_FLAGS", {
297
291
  return QUIET_FLAGS;
298
292
  }
299
293
  });
300
- Object.defineProperty(exports, "Telemetry", {
301
- enumerable: true,
302
- get: function() {
303
- return Telemetry;
304
- }
305
- });
306
294
  Object.defineProperty(exports, "UPDATE_CHECK_TIMEOUT_MS", {
307
295
  enumerable: true,
308
296
  get: function() {
@@ -315,11 +303,29 @@ Object.defineProperty(exports, "WATCHER_IGNORED_PATHS", {
315
303
  return WATCHER_IGNORED_PATHS;
316
304
  }
317
305
  });
306
+ Object.defineProperty(exports, "buildTelemetryEvent", {
307
+ enumerable: true,
308
+ get: function() {
309
+ return buildTelemetryEvent;
310
+ }
311
+ });
318
312
  Object.defineProperty(exports, "canUseTTY", {
319
313
  enumerable: true,
320
314
  get: function() {
321
315
  return canUseTTY;
322
316
  }
323
317
  });
318
+ Object.defineProperty(exports, "isDisabled", {
319
+ enumerable: true,
320
+ get: function() {
321
+ return isDisabled;
322
+ }
323
+ });
324
+ Object.defineProperty(exports, "sendTelemetry", {
325
+ enumerable: true,
326
+ get: function() {
327
+ return sendTelemetry;
328
+ }
329
+ });
324
330
 
325
- //# sourceMappingURL=Telemetry-CwQYBgsg.cjs.map
331
+ //# sourceMappingURL=Telemetry-xcWb-UWT.cjs.map