@kubb/cli 5.0.0-beta.6 → 5.0.0-beta.7

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 (117) hide show
  1. package/README.md +177 -26
  2. package/dist/{agent-BJEvbSiP.js → agent-DN7o8nlE.js} +7 -7
  3. package/dist/agent-DN7o8nlE.js.map +1 -0
  4. package/dist/{agent-CXNO6dgj.cjs → agent-Fm9_8BBH.cjs} +5 -5
  5. package/dist/agent-Fm9_8BBH.cjs.map +1 -0
  6. package/dist/{chunk--u3MIqq1.js → chunk-BvFE5Tac.js} +1 -0
  7. package/dist/{constants-BPJBMT_6.js → constants-B2JTeRBb.js} +1 -4
  8. package/dist/{constants-BPJBMT_6.js.map → constants-B2JTeRBb.js.map} +1 -1
  9. package/dist/{constants-Rcaqzyd-.cjs → constants-BINTA5VZ.cjs} +1 -4
  10. package/dist/{constants-Rcaqzyd-.cjs.map → constants-BINTA5VZ.cjs.map} +1 -1
  11. package/dist/{define-Ctii4bel.js → define-m_fp-Aqm.js} +2 -2
  12. package/dist/{define-Ctii4bel.js.map → define-m_fp-Aqm.js.map} +1 -1
  13. package/dist/{errors-CjPmyZHy.js → errors-CINO1EIv.js} +2 -2
  14. package/dist/{errors-CjPmyZHy.js.map → errors-CINO1EIv.js.map} +1 -1
  15. package/dist/{generate-BmulGxIM.js → generate-BY-juRdH.js} +5 -5
  16. package/dist/{generate-BmulGxIM.js.map → generate-BY-juRdH.js.map} +1 -1
  17. package/dist/{generate-BB2Q7I9s.cjs → generate-Bod9YCbF.cjs} +3 -3
  18. package/dist/{generate-BB2Q7I9s.cjs.map → generate-Bod9YCbF.cjs.map} +1 -1
  19. package/dist/index.cjs +9 -9
  20. package/dist/index.cjs.map +1 -1
  21. package/dist/index.d.ts +1 -1
  22. package/dist/index.js +11 -11
  23. package/dist/index.js.map +1 -1
  24. package/dist/{init-Dpg8e1HN.cjs → init-BIkZU6mB.cjs} +4 -4
  25. package/dist/{init-Dpg8e1HN.cjs.map → init-BIkZU6mB.cjs.map} +1 -1
  26. package/dist/{init-BTp9if7K.js → init-Cs3Fp6nN.js} +6 -6
  27. package/dist/{init-BTp9if7K.js.map → init-Cs3Fp6nN.js.map} +1 -1
  28. package/dist/{mcp-C9RoU-Dg.js → mcp-BSNulBcC.js} +6 -6
  29. package/dist/{mcp-C9RoU-Dg.js.map → mcp-BSNulBcC.js.map} +1 -1
  30. package/dist/{mcp-wpl6sYYR.cjs → mcp-DcSrFhhP.cjs} +4 -4
  31. package/dist/{mcp-wpl6sYYR.cjs.map → mcp-DcSrFhhP.cjs.map} +1 -1
  32. package/dist/package-D5wmvFl4.js +6 -0
  33. package/dist/package-D5wmvFl4.js.map +1 -0
  34. package/dist/{package-iheSdfas.cjs → package-DrUndPET.cjs} +2 -2
  35. package/dist/package-DrUndPET.cjs.map +1 -0
  36. package/dist/{generate-DAsdUw3z.js → run-BAJubgdA.js} +298 -315
  37. package/dist/run-BAJubgdA.js.map +1 -0
  38. package/dist/{agent-VXKxLCho.js → run-BzpYYOQs.js} +46 -43
  39. package/dist/run-BzpYYOQs.js.map +1 -0
  40. package/dist/{validate-k9s_hFah.js → run-CCZ24VKk.js} +25 -20
  41. package/dist/run-CCZ24VKk.js.map +1 -0
  42. package/dist/{init-DCqcEq86.js → run-CF97BWVa.js} +77 -68
  43. package/dist/run-CF97BWVa.js.map +1 -0
  44. package/dist/{validate-BU4fPTMc.cjs → run-CQbj3ley.cjs} +23 -18
  45. package/dist/run-CQbj3ley.cjs.map +1 -0
  46. package/dist/{generate-B_p5dl68.cjs → run-CqKd6JNc.cjs} +295 -312
  47. package/dist/run-CqKd6JNc.cjs.map +1 -0
  48. package/dist/{mcp-DNUw8nqb.js → run-D0hmRpHy.js} +23 -23
  49. package/dist/run-D0hmRpHy.js.map +1 -0
  50. package/dist/{agent-D9CKYh4K.cjs → run-DwdAwnLG.cjs} +44 -41
  51. package/dist/run-DwdAwnLG.cjs.map +1 -0
  52. package/dist/{mcp-D1llTaRM.cjs → run-Lr0Ctnu0.cjs} +21 -21
  53. package/dist/run-Lr0Ctnu0.cjs.map +1 -0
  54. package/dist/{init-CJ80lKSP.cjs → run-YsoCk5we.cjs} +75 -66
  55. package/dist/run-YsoCk5we.cjs.map +1 -0
  56. package/dist/{shell-DLzN4fRo.js → shell-CN6DNqeC.js} +2 -2
  57. package/dist/{shell-DLzN4fRo.js.map → shell-CN6DNqeC.js.map} +1 -1
  58. package/dist/{telemetry-BLX0NzRk.cjs → telemetry-B2iWkY5e.cjs} +5 -7
  59. package/dist/telemetry-B2iWkY5e.cjs.map +1 -0
  60. package/dist/{telemetry-juq4QBf7.js → telemetry-BkektVz6.js} +6 -8
  61. package/dist/telemetry-BkektVz6.js.map +1 -0
  62. package/dist/{validate-DIDBROB2.cjs → validate-Bfpf_UIh.cjs} +4 -4
  63. package/dist/{validate-DIDBROB2.cjs.map → validate-Bfpf_UIh.cjs.map} +1 -1
  64. package/dist/{validate-BfJoCxrC.js → validate-lbUkWQ5o.js} +6 -6
  65. package/dist/{validate-BfJoCxrC.js.map → validate-lbUkWQ5o.js.map} +1 -1
  66. package/package.json +7 -12
  67. package/src/commands/agent/start.ts +2 -2
  68. package/src/commands/generate.ts +2 -2
  69. package/src/commands/init.ts +2 -2
  70. package/src/commands/mcp.ts +2 -2
  71. package/src/commands/validate.ts +2 -2
  72. package/src/constants.ts +0 -4
  73. package/src/index.ts +5 -3
  74. package/src/loggers/clackLogger.ts +45 -43
  75. package/src/loggers/fileSystemLogger.ts +11 -1
  76. package/src/loggers/githubActionsLogger.ts +13 -25
  77. package/src/loggers/plainLogger.ts +12 -23
  78. package/src/loggers/types.ts +6 -0
  79. package/src/loggers/utils.ts +155 -9
  80. package/src/runners/agent/run.ts +113 -0
  81. package/src/runners/agent/utils.ts +98 -0
  82. package/src/runners/generate/run.ts +276 -0
  83. package/src/runners/generate/utils.ts +209 -0
  84. package/src/runners/{init.ts → init/run.ts} +70 -66
  85. package/src/{utils/packageManager.ts → runners/init/utils.ts} +10 -0
  86. package/src/runners/mcp/run.ts +55 -0
  87. package/src/runners/{validate.ts → validate/run.ts} +25 -20
  88. package/src/{utils/telemetry.ts → telemetry.ts} +12 -5
  89. package/dist/agent-BJEvbSiP.js.map +0 -1
  90. package/dist/agent-CXNO6dgj.cjs.map +0 -1
  91. package/dist/agent-D9CKYh4K.cjs.map +0 -1
  92. package/dist/agent-VXKxLCho.js.map +0 -1
  93. package/dist/generate-B_p5dl68.cjs.map +0 -1
  94. package/dist/generate-DAsdUw3z.js.map +0 -1
  95. package/dist/init-CJ80lKSP.cjs.map +0 -1
  96. package/dist/init-DCqcEq86.js.map +0 -1
  97. package/dist/mcp-D1llTaRM.cjs.map +0 -1
  98. package/dist/mcp-DNUw8nqb.js.map +0 -1
  99. package/dist/package-iheSdfas.cjs.map +0 -1
  100. package/dist/package-vLafMWCe.js +0 -6
  101. package/dist/package-vLafMWCe.js.map +0 -1
  102. package/dist/telemetry-BLX0NzRk.cjs.map +0 -1
  103. package/dist/telemetry-juq4QBf7.js.map +0 -1
  104. package/dist/validate-BU4fPTMc.cjs.map +0 -1
  105. package/dist/validate-k9s_hFah.js.map +0 -1
  106. package/src/runners/agent.ts +0 -155
  107. package/src/runners/generate.ts +0 -333
  108. package/src/runners/mcp.ts +0 -56
  109. package/src/types.ts +0 -11
  110. package/src/utils/Writables.ts +0 -17
  111. package/src/utils/executeHooks.ts +0 -45
  112. package/src/utils/flags.ts +0 -9
  113. package/src/utils/getConfig.ts +0 -10
  114. package/src/utils/getCosmiConfig.ts +0 -75
  115. package/src/utils/getSummary.ts +0 -68
  116. package/src/utils/runHook.ts +0 -91
  117. package/src/utils/watcher.ts +0 -19
@@ -1,91 +0,0 @@
1
- import type { AsyncEventEmitter } from '@internals/utils'
2
- import { toError } from '@internals/utils'
3
- import type { KubbHooks } from '@kubb/core'
4
- import { NonZeroExitError, x } from 'tinyexec'
5
-
6
- type HookOutputSink = {
7
- /** Called for each streamed stdout line while the hook runs (optional). */
8
- onLine?: (line: string) => void
9
- /** Called on stderr after failure (optional). */
10
- onStderr?: (text: string) => void
11
- /** Called on stdout after failure (optional). */
12
- onStdout?: (text: string) => void
13
- }
14
-
15
- type RunHookOptions = {
16
- id: string
17
- command: string
18
- args?: readonly string[]
19
- commandWithArgs: string
20
- context: AsyncEventEmitter<KubbHooks>
21
- /** When true the process output is streamed line-by-line via onLine. */
22
- stream?: boolean
23
- sink?: HookOutputSink
24
- }
25
-
26
- /**
27
- * Executes a hook command, emits debug and completion events, and forwards output to an optional sink.
28
- */
29
- export async function runHook({ id, command, args, commandWithArgs, context, stream = false, sink }: RunHookOptions): Promise<void> {
30
- try {
31
- const proc = x(command, [...(args ?? [])], {
32
- nodeOptions: { detached: process.platform !== 'win32' },
33
- throwOnError: true,
34
- })
35
-
36
- if (stream && sink?.onLine) {
37
- for await (const line of proc) {
38
- sink.onLine(line)
39
- }
40
- }
41
-
42
- const result = await proc
43
-
44
- await context.emit('kubb:debug', {
45
- date: new Date(),
46
- logs: [result.stdout.trimEnd()],
47
- })
48
-
49
- await context.emit('kubb:hook:end', {
50
- command,
51
- args,
52
- id,
53
- success: true,
54
- error: null,
55
- })
56
- } catch (err) {
57
- if (!(err instanceof NonZeroExitError)) {
58
- await context.emit('kubb:hook:end', {
59
- command,
60
- args,
61
- id,
62
- success: false,
63
- error: toError(err),
64
- })
65
- await context.emit('kubb:error', { error: toError(err) })
66
- return
67
- }
68
-
69
- const stderr = err.output?.stderr ?? ''
70
- const stdout = err.output?.stdout ?? ''
71
-
72
- await context.emit('kubb:debug', {
73
- date: new Date(),
74
- logs: [stdout, stderr].filter(Boolean),
75
- })
76
-
77
- if (stderr) sink?.onStderr?.(stderr)
78
- if (stdout) sink?.onStdout?.(stdout)
79
-
80
- const errorMessage = new Error(`Hook execute failed: ${commandWithArgs}`)
81
-
82
- await context.emit('kubb:hook:end', {
83
- command,
84
- args,
85
- id,
86
- success: false,
87
- error: errorMessage,
88
- })
89
- await context.emit('kubb:error', { error: errorMessage })
90
- }
91
- }
@@ -1,19 +0,0 @@
1
- import { styleText } from 'node:util'
2
- import { WATCHER_IGNORED_PATHS } from '../constants.ts'
3
-
4
- export async function startWatcher(path: string[], cb: (path: string[]) => Promise<void>): Promise<void> {
5
- const { watch } = await import('chokidar')
6
- const watcher = watch(path, {
7
- ignorePermissionErrors: true,
8
- ignored: WATCHER_IGNORED_PATHS,
9
- })
10
- watcher.on('all', async (type, file) => {
11
- console.log(styleText('yellow', styleText('bold', `Change detected: ${type} ${file}`)))
12
-
13
- try {
14
- await cb(path)
15
- } catch (_e) {
16
- console.log(styleText('red', 'Watcher failed'))
17
- }
18
- })
19
- }