@kubb/cli 3.0.0-alpha.4 → 3.0.0-alpha.5

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
  // src/generate.ts
2
- import { createLogger } from "@kubb/core/logger";
2
+ import { createLogger, LogMapper as LogMapper2 } from "@kubb/core/logger";
3
3
  import c4 from "tinyrainbow";
4
4
  import { safeBuild } from "@kubb/core";
5
5
 
@@ -11,6 +11,7 @@ import c2 from "tinyrainbow";
11
11
  // src/utils/Writables.ts
12
12
  import { Writable } from "stream";
13
13
  import c from "tinyrainbow";
14
+ import * as process2 from "process";
14
15
  var ConsolaWritable = class extends Writable {
15
16
  constructor(consola, command, opts) {
16
17
  super(opts);
@@ -18,41 +19,37 @@ var ConsolaWritable = class extends Writable {
18
19
  this.consola = consola;
19
20
  }
20
21
  _write(chunk, _encoding, callback) {
21
- if (this.command) {
22
- this.consola.log(`${c.bold(c.blue(this.command))}: ${chunk?.toString()}`);
23
- } else {
24
- this.consola.log(`${c.bold(c.blue(this.command))}: ${chunk?.toString()}`);
25
- }
22
+ process2.stdout.write(c.dim(chunk?.toString()));
26
23
  callback();
27
24
  }
28
25
  };
29
26
 
30
27
  // src/utils/executeHooks.ts
31
28
  import { LogMapper } from "@kubb/core/logger";
29
+ import PQueue from "p-queue";
32
30
  async function executeHooks({ hooks, logger }) {
33
31
  const commands = Array.isArray(hooks.done) ? hooks.done : [hooks.done].filter(Boolean);
34
- const executors = commands.map(async (command) => {
32
+ const queue = new PQueue({ concurrency: 1 });
33
+ const promises = commands.map(async (command) => {
35
34
  const consolaWritable = new ConsolaWritable(logger.consola, command);
36
- const abortController = new AbortController();
37
35
  const [cmd, ..._args] = [...parseArgsStringToArgv(command)];
38
36
  if (!cmd) {
39
37
  return null;
40
38
  }
41
- logger.emit("start", `Executing hook ${logger.logLevel !== LogMapper.silent ? c2.dim(command) : ""}`);
42
- const subProcess = await execa(cmd, _args, {
43
- detached: true,
44
- cancelSignal: abortController.signal,
45
- stdout: logger.logLevel === LogMapper.silent ? void 0 : ["pipe", consolaWritable]
39
+ await queue.add(async () => {
40
+ logger.emit("start", `Executing hook ${logger.logLevel !== LogMapper.silent ? c2.dim(command) : ""}`);
41
+ const subProcess = await execa(cmd, _args, {
42
+ detached: true,
43
+ stdout: logger.logLevel === LogMapper.silent ? void 0 : ["pipe", consolaWritable],
44
+ stripFinalNewline: true
45
+ });
46
+ logger.emit("success", `Executing hook ${logger.logLevel !== LogMapper.silent ? c2.dim(command) : ""}`);
47
+ if (subProcess) {
48
+ logger.emit("debug", [subProcess.stdout]);
49
+ }
46
50
  });
47
- logger.emit("success", `Executing hook ${logger.logLevel !== LogMapper.silent ? c2.dim(command) : ""}`);
48
- if (subProcess) {
49
- logger.emit("info", `Executing hooks
50
- ${subProcess.stdout}`);
51
- }
52
- consolaWritable.destroy();
53
- return { subProcess, abort: abortController.abort.bind(abortController) };
54
- }).filter(Boolean);
55
- await Promise.all(executors);
51
+ });
52
+ await Promise.all(promises);
56
53
  logger.emit("success", "Executing hooks");
57
54
  }
58
55
 
@@ -107,11 +104,6 @@ function getSummary({ pluginManager, status, hrStart, config, logger }) {
107
104
  time: `${c3.yellow(`${elapsedSeconds}s`)} - finished at ${c3.yellow((/* @__PURE__ */ new Date()).toLocaleString("en-GB", { timeZone: "UTC" }))}`,
108
105
  output: path.isAbsolute(config.root) ? path.resolve(config.root, config.output.path) : config.root
109
106
  };
110
- logger.emit("debug", ["\nGenerated files:\n"]);
111
- logger.emit(
112
- "debug",
113
- files.map((file) => `${randomCliColour(JSON.stringify(file.meta?.pluginKey))} ${file.path}`)
114
- );
115
107
  logs.push(
116
108
  [
117
109
  [`${c3.bold("Plugins:")} ${meta.plugins}`, true],
@@ -146,20 +138,39 @@ async function writeLog(data) {
146
138
  }
147
139
 
148
140
  // src/generate.ts
149
- import { LogMapper as LogMapper2 } from "@kubb/core/logger";
150
- import { MultiBar, Presets } from "cli-progress";
141
+ import { SingleBar, Presets } from "cli-progress";
142
+ import "@kubb/fs";
143
+ import { relative } from "path";
151
144
  async function generate({ input, config, args }) {
152
145
  const logLevel = LogMapper2[args.logLevel] || 3;
153
146
  const logger = createLogger({
154
147
  logLevel,
155
148
  name: config.name
156
149
  });
150
+ const progress = new SingleBar(
151
+ {
152
+ format: logLevel === LogMapper2.info ? "{percentage}% {bar} {value}/{total} files | ETA: {eta}s | {filename}" : "{percentage}% {bar} ETA: {eta}s",
153
+ barsize: 40,
154
+ fps: 5,
155
+ clearOnComplete: true
156
+ },
157
+ Presets.shades_grey
158
+ );
159
+ logger.on("progress", ({ count, size, file }) => {
160
+ if (count === 0) {
161
+ progress.start(size, 0);
162
+ } else if (count === size) {
163
+ progress.stop();
164
+ } else {
165
+ progress.update(count, { filename: relative(config.root, file.path) || "" });
166
+ }
167
+ });
157
168
  logger.on("debug", async (messages) => {
158
169
  await writeLog(messages.join("\n"));
159
170
  });
160
171
  const { root = process.cwd(), ...userConfig } = config;
161
172
  const inputPath = input ?? ("path" in userConfig.input ? userConfig.input.path : void 0);
162
- logger.emit("start", `\u{1F680} Building ${logLevel !== LogMapper2.silent ? c4.dim(inputPath) : ""}`);
173
+ logger.emit("start", `Building ${logLevel !== LogMapper2.silent ? c4.dim(inputPath) : ""}`);
163
174
  const definedConfig = {
164
175
  root,
165
176
  ...userConfig,
@@ -185,7 +196,7 @@ async function generate({ input, config, args }) {
185
196
  logger
186
197
  });
187
198
  if (error && logger.consola) {
188
- logger.consola.error(`\u{1F680} Build failed ${logLevel !== LogMapper2.silent ? c4.dim(inputPath) : ""}`);
199
+ logger.consola.error(`Build failed ${logLevel !== LogMapper2.silent ? c4.dim(inputPath) : ""}`);
189
200
  logger.consola.box({
190
201
  title: `${config.name || ""}`,
191
202
  message: summary.join(""),
@@ -207,7 +218,7 @@ async function generate({ input, config, args }) {
207
218
  if (config.hooks) {
208
219
  await executeHooks({ hooks: config.hooks, logger });
209
220
  }
210
- logger.consola?.success(`\u{1F680} Build completed ${logLevel !== LogMapper2.silent ? c4.dim(inputPath) : ""}`);
221
+ logger.consola?.log(`\u26A1\uFE0FBuild completed ${logLevel !== LogMapper2.silent ? c4.dim(inputPath) : ""}`);
211
222
  logger.consola?.box({
212
223
  title: `${config.name || ""}`,
213
224
  message: summary.join(""),
@@ -222,4 +233,4 @@ async function generate({ input, config, args }) {
222
233
  export {
223
234
  generate
224
235
  };
225
- //# sourceMappingURL=chunk-Y35VLSP2.js.map
236
+ //# sourceMappingURL=chunk-WJ72QPXS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/generate.ts","../src/utils/executeHooks.ts","../src/utils/Writables.ts","../src/utils/getErrorCauses.ts","../src/utils/getSummary.ts","../src/utils/parseHrtimeToSeconds.ts","../src/utils/writeLog.ts"],"sourcesContent":["import { createLogger, LogMapper } from '@kubb/core/logger'\n\nimport c from 'tinyrainbow'\n\nimport { type Config, safeBuild } from '@kubb/core'\nimport type { Args } from './commands/generate.ts'\nimport { executeHooks } from './utils/executeHooks.ts'\nimport { getErrorCauses } from './utils/getErrorCauses.ts'\nimport { getSummary } from './utils/getSummary.ts'\nimport { writeLog } from './utils/writeLog.ts'\nimport type * as KubbFile from '@kubb/fs/types'\n\nimport { SingleBar, Presets } from 'cli-progress'\nimport { getRelativePath } from '@kubb/fs'\nimport { relative } from 'node:path'\n\ntype GenerateProps = {\n input?: string\n config: Config\n args: Args\n}\n\nexport async function generate({ input, config, args }: GenerateProps): Promise<void> {\n const logLevel = LogMapper[args.logLevel as keyof typeof LogMapper] || 3\n const logger = createLogger({\n logLevel,\n name: config.name,\n })\n\n const progress = new SingleBar(\n {\n format: logLevel === LogMapper.info ? '{percentage}% {bar} {value}/{total} files | ETA: {eta}s | {filename}' : '{percentage}% {bar} ETA: {eta}s',\n barsize: 40,\n fps: 5,\n clearOnComplete: true,\n },\n Presets.shades_grey,\n )\n\n logger.on('progress', ({ count, size, file }) => {\n if (count === 0) {\n progress.start(size, 0)\n } else if (count === size) {\n progress.stop()\n } else {\n progress.update(count, { filename: relative(config.root, file.path) || '' })\n }\n })\n\n logger.on('debug', async (messages: string[]) => {\n await writeLog(messages.join('\\n'))\n })\n\n const { root = process.cwd(), ...userConfig } = config\n const inputPath = input ?? ('path' in userConfig.input ? userConfig.input.path : undefined)\n\n logger.emit('start', `Building ${logLevel !== LogMapper.silent ? c.dim(inputPath) : ''}`)\n\n const definedConfig: Config = {\n root,\n ...userConfig,\n input: inputPath\n ? {\n ...userConfig.input,\n path: inputPath,\n }\n : userConfig.input,\n output: {\n write: true,\n ...userConfig.output,\n },\n }\n const hrStart = process.hrtime()\n const { pluginManager, error } = await safeBuild({\n config: definedConfig,\n logger,\n })\n\n const summary = getSummary({\n pluginManager,\n config: definedConfig,\n status: error ? 'failed' : 'success',\n hrStart,\n logger,\n })\n\n if (error && logger.consola) {\n logger.consola.error(`Build failed ${logLevel !== LogMapper.silent ? c.dim(inputPath) : ''}`)\n\n logger.consola.box({\n title: `${config.name || ''}`,\n message: summary.join(''),\n style: {\n padding: 2,\n borderColor: 'red',\n borderStyle: 'rounded',\n },\n })\n\n const errors = getErrorCauses([error])\n if (logger.consola && errors.length && logLevel === LogMapper.debug) {\n errors.forEach((err) => {\n logger.consola?.error(err)\n })\n }\n\n logger.consola?.error(error)\n\n process.exit(0)\n }\n\n if (config.hooks) {\n await executeHooks({ hooks: config.hooks, logger })\n }\n\n logger.consola?.log(`⚡️Build completed ${logLevel !== LogMapper.silent ? c.dim(inputPath) : ''}`)\n\n logger.consola?.box({\n title: `${config.name || ''}`,\n message: summary.join(''),\n style: {\n padding: 2,\n borderColor: 'green',\n borderStyle: 'rounded',\n },\n })\n}\n","import type { Logger } from '@kubb/core/logger'\nimport { execa } from 'execa'\nimport { parseArgsStringToArgv } from 'string-argv'\nimport c from 'tinyrainbow'\n\nimport { ConsolaWritable } from './Writables.ts'\n\nimport type { Config } from '@kubb/core'\nimport { LogMapper } from '@kubb/core/logger'\nimport PQueue from 'p-queue'\n\ntype ExecutingHooksProps = {\n hooks: NonNullable<Config['hooks']>\n logger: Logger\n}\n\nexport async function executeHooks({ hooks, logger }: ExecutingHooksProps): Promise<void> {\n const commands = Array.isArray(hooks.done) ? hooks.done : [hooks.done].filter(Boolean)\n const queue = new PQueue({ concurrency: 1 })\n\n const promises = commands.map(async (command) => {\n const consolaWritable = new ConsolaWritable(logger.consola!, command)\n const [cmd, ..._args] = [...parseArgsStringToArgv(command)]\n\n if (!cmd) {\n return null\n }\n\n await queue.add(async () => {\n logger.emit('start', `Executing hook ${logger.logLevel !== LogMapper.silent ? c.dim(command) : ''}`)\n\n const subProcess = await execa(cmd, _args, {\n detached: true,\n stdout: logger.logLevel === LogMapper.silent ? undefined : ['pipe', consolaWritable],\n stripFinalNewline: true,\n })\n\n logger.emit('success', `Executing hook ${logger.logLevel !== LogMapper.silent ? c.dim(command) : ''}`)\n\n if (subProcess) {\n logger.emit('debug', [subProcess.stdout])\n }\n })\n })\n\n await Promise.all(promises)\n\n logger.emit('success', 'Executing hooks')\n}\n","import { Writable } from 'node:stream'\n\nimport c from 'tinyrainbow'\n\nimport type { WritableOptions } from 'node:stream'\nimport type { ConsolaInstance } from 'consola'\nimport * as process from 'node:process'\n\nexport class ConsolaWritable extends Writable {\n consola: ConsolaInstance\n command: string\n constructor(consola: ConsolaInstance, command: string, opts?: WritableOptions) {\n super(opts)\n\n this.command = command\n this.consola = consola\n }\n _write(chunk: any, _encoding: BufferEncoding, callback: (error?: Error | null) => void): void {\n process.stdout.write(c.dim(chunk?.toString()))\n\n callback()\n }\n}\n","export function getErrorCauses(errors: Error[]): Error[] {\n return errors\n .reduce((prev, error) => {\n const causedError = error?.cause as Error\n if (causedError) {\n prev = [...prev, ...getErrorCauses([causedError])]\n return prev\n }\n prev = [...prev, error]\n\n return prev\n }, [] as Error[])\n .filter(Boolean)\n}\n","import path from 'node:path'\n\nimport { randomCliColour } from '@kubb/core/logger'\n\nimport c from 'tinyrainbow'\n\nimport { parseHrtimeToSeconds } from './parseHrtimeToSeconds.ts'\n\nimport type { Config, PluginManager } from '@kubb/core'\nimport type { Logger } from '@kubb/core/logger'\n\ntype SummaryProps = {\n pluginManager: PluginManager\n status: 'success' | 'failed'\n hrStart: [number, number]\n config: Config\n logger: Logger\n}\n\nexport function getSummary({ pluginManager, status, hrStart, config, logger }: SummaryProps): string[] {\n const logs: string[] = []\n const elapsedSeconds = parseHrtimeToSeconds(process.hrtime(hrStart))\n\n const buildStartPlugins = pluginManager.executed\n .filter((item) => item.hookName === 'buildStart' && item.plugin.name !== 'core')\n .map((item) => item.plugin.name)\n\n const buildEndPlugins = pluginManager.executed.filter((item) => item.hookName === 'buildEnd' && item.plugin.name !== 'core').map((item) => item.plugin.name)\n\n const failedPlugins = config.plugins?.filter((plugin) => !buildEndPlugins.includes(plugin.name))?.map((plugin) => plugin.name)\n const pluginsCount = config.plugins?.length || 0\n const files = pluginManager.fileManager.files.sort((a, b) => {\n if (!a.meta?.pluginKey?.[0] || !b.meta?.pluginKey?.[0]) {\n return 0\n }\n if (a.meta?.pluginKey?.[0]?.length < b.meta?.pluginKey?.[0]?.length) {\n return 1\n }\n if (a.meta?.pluginKey?.[0]?.length > b.meta?.pluginKey?.[0]?.length) {\n return -1\n }\n return 0\n })\n\n const meta = {\n plugins:\n status === 'success'\n ? `${c.green(`${buildStartPlugins.length} successful`)}, ${pluginsCount} total`\n : `${c.red(`${failedPlugins?.length ?? 1} failed`)}, ${pluginsCount} total`,\n pluginsFailed: status === 'failed' ? failedPlugins?.map((name) => randomCliColour(name))?.join(', ') : undefined,\n filesCreated: files.length,\n time: `${c.yellow(`${elapsedSeconds}s`)} - finished at ${c.yellow(new Date().toLocaleString('en-GB', { timeZone: 'UTC' }))}`,\n output: path.isAbsolute(config.root) ? path.resolve(config.root, config.output.path) : config.root,\n } as const\n\n logs.push(\n [\n [`${c.bold('Plugins:')} ${meta.plugins}`, true],\n [`${c.dim('Failed:')} ${meta.pluginsFailed || 'none'}`, !!meta.pluginsFailed],\n [`${c.bold('Generated:')} ${meta.filesCreated} files`, true],\n [`${c.bold('Time:')} ${meta.time}`, true],\n [`${c.bold('Output:')} ${meta.output}`, true],\n ]\n .map((item) => {\n if (item.at(1)) {\n return item.at(0)\n }\n return undefined\n })\n .filter(Boolean)\n .join('\\n'),\n )\n\n return logs\n}\n","export function parseHrtimeToSeconds(hrtime: [number, number]): string {\n const seconds = (hrtime[0] + hrtime[1] / 1e9).toFixed(3)\n return seconds\n}\n","import { resolve } from 'node:path'\nimport { read, write } from '@kubb/fs'\n\nexport async function writeLog(data: string): Promise<string | undefined> {\n if (data.trim() === '') {\n return undefined\n }\n const path = resolve(process.cwd(), 'kubb-log.log')\n let previousLogs = ''\n\n try {\n previousLogs = await read(resolve(path))\n } catch (_err) {\n /* empty */\n }\n\n return write(path, [previousLogs, data.trim()].filter(Boolean).join('\\n\\n\\n'), { sanity: false })\n}\n"],"mappings":"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","names":["LogMapper","c","c","process","c","c","c","path","LogMapper","c"]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  generate
3
- } from "./chunk-Y35VLSP2.js";
3
+ } from "./chunk-WJ72QPXS.js";
4
4
 
5
5
  // src/commands/generate.ts
6
6
  import { defineCommand, showUsage } from "citty";
@@ -193,9 +193,9 @@ var command = defineCommand({
193
193
  const logger = createLogger2({
194
194
  logLevel
195
195
  });
196
- logger.emit("start", "\u{1F50D} Loading config");
196
+ logger.emit("start", "Loading config");
197
197
  const result = await getCosmiConfig("kubb", args2.config);
198
- logger.emit("success", `\u{1F50D} Config loaded(${c2.dim(path.relative(process.cwd(), result.filepath))})`);
198
+ logger.emit("success", `Config loaded(${c2.dim(path.relative(process.cwd(), result.filepath))})`);
199
199
  const config = await getConfig(result, args2);
200
200
  if (args2.watch) {
201
201
  if (Array.isArray(config)) {
@@ -220,4 +220,4 @@ var generate_default = command;
220
220
  export {
221
221
  generate_default as default
222
222
  };
223
- //# sourceMappingURL=generate-FHYQHKKR.js.map
223
+ //# sourceMappingURL=generate-LZOUPH5K.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/generate.ts","../src/utils/getConfig.ts","../src/utils/getPlugins.ts","../src/utils/getCosmiConfig.ts","../src/utils/watcher.ts"],"sourcesContent":["import { defineCommand, showUsage } from 'citty'\nimport type { ArgsDef, ParsedArgs } from 'citty'\nimport { execa } from 'execa'\nimport c from 'tinyrainbow'\n\nimport { getConfig } from '../utils/getConfig.ts'\nimport { getCosmiConfig } from '../utils/getCosmiConfig.ts'\nimport { startWatcher } from '../utils/watcher.ts'\n\nimport { PromiseManager, isInputPath } from '@kubb/core'\nimport { generate } from '../generate.ts'\nimport path from 'node:path'\nimport { createLogger, LogMapper } from '@kubb/core/logger'\n\nconst args = {\n config: {\n type: 'string',\n description: 'Path to the Kubb config',\n alias: 'c',\n },\n logLevel: {\n type: 'string',\n description: 'Info, silent or debug',\n alias: 'l',\n default: 'info',\n valueHint: 'silent|info|debug',\n },\n watch: {\n type: 'boolean',\n description: 'Watch mode based on the input file',\n alias: 'w',\n default: false,\n },\n bun: {\n type: 'boolean',\n description: 'Run Kubb with Bun',\n alias: 'b',\n default: false,\n },\n debug: {\n type: 'boolean',\n description: 'Override logLevel to debug',\n alias: 'd',\n default: false,\n },\n help: {\n type: 'boolean',\n description: 'Show help',\n alias: 'h',\n default: false,\n },\n} as const satisfies ArgsDef\n\nexport type Args = ParsedArgs<typeof args>\n\nconst command = defineCommand({\n meta: {\n name: 'generate',\n description: \"[input] Generate files based on a 'kubb.config.ts' file\",\n },\n args,\n async run({ args }) {\n const input = args._[0]\n\n if (args.help) {\n showUsage(command)\n return\n }\n\n if (args.debug) {\n args.logLevel = 'debug'\n }\n\n if (args.bun) {\n const command = process.argv.splice(2).filter((item) => item !== '--bun')\n\n await execa('bkubb', command, { stdout: process.stdout, stderr: process.stderr })\n return\n }\n\n const logLevel = LogMapper[args.logLevel as keyof typeof LogMapper] || 3\n const logger = createLogger({\n logLevel,\n })\n\n logger.emit('start', 'Loading config')\n\n const result = await getCosmiConfig('kubb', args.config)\n logger.emit('success', `Config loaded(${c.dim(path.relative(process.cwd(), result.filepath))})`)\n\n const config = await getConfig(result, args)\n\n if (args.watch) {\n if (Array.isArray(config)) {\n throw new Error('Cannot use watcher with multiple Configs(array)')\n }\n\n if (isInputPath(config)) {\n return startWatcher([input || config.input.path], async (paths) => {\n await generate({ config, args })\n logger.emit('start', c.yellow(c.bold(`Watching for changes in ${paths.join(' and ')}`)))\n })\n }\n }\n\n if (Array.isArray(config)) {\n const promiseManager = new PromiseManager()\n const promises = config.map((item) => () => generate({ input, config: item, args }))\n\n return promiseManager.run('seq', promises)\n }\n\n await generate({ input, config, args })\n },\n})\n\nexport default command\n","import { isPromise } from '@kubb/core/utils'\n\nimport { getPlugins } from './getPlugins.ts'\n\nimport type { Config, UserConfig } from '@kubb/core'\nimport type { Args } from '../commands/generate.ts'\nimport type { CosmiconfigResult } from './getCosmiConfig.ts'\n\n/**\n * Converting UserConfig to Config without a change in the object beside the JSON convert.\n */\nexport async function getConfig(result: CosmiconfigResult, args: Args): Promise<Array<Config> | Config> {\n const config = result?.config\n let kubbUserConfig = Promise.resolve(config) as Promise<UserConfig | Array<UserConfig>>\n\n // for ts or js files\n if (typeof config === 'function') {\n const possiblePromise = config(args)\n if (isPromise(possiblePromise)) {\n kubbUserConfig = possiblePromise\n }\n kubbUserConfig = Promise.resolve(possiblePromise)\n }\n\n let JSONConfig = await kubbUserConfig\n\n if (Array.isArray(JSONConfig)) {\n const promises = JSONConfig.map(async (item) => {\n return {\n ...item,\n plugins: item.plugins ? await getPlugins(item.plugins) : undefined,\n }\n }) as unknown as Array<Promise<Config>>\n\n return Promise.all(promises)\n }\n\n JSONConfig = {\n ...JSONConfig,\n plugins: JSONConfig.plugins ? await getPlugins(JSONConfig.plugins) : undefined,\n }\n\n return JSONConfig as Config\n}\n","import type { UserConfig } from '@kubb/core'\n\nfunction isJSONPlugins(plugins: UserConfig['plugins']) {\n return !!(plugins as any)?.some((plugin: any) => {\n return Array.isArray(plugin) && typeof plugin?.at(0) === 'string'\n })\n}\n\nfunction isObjectPlugins(plugins: UserConfig['plugins']): plugins is any {\n return plugins instanceof Object && !Array.isArray(plugins)\n}\n\nexport function getPlugins(plugins: UserConfig['plugins']): Promise<UserConfig['plugins']> {\n if (isObjectPlugins(plugins)) {\n throw new Error('Object plugins are not supported anymore, best to use http://kubb.dev/getting-started/configure#json')\n }\n\n if (isJSONPlugins(plugins)) {\n throw new Error('JSON plugins are not supported anymore, best to use http://kubb.dev/getting-started/configure#json')\n }\n\n return Promise.resolve(plugins)\n}\n","import { bundleRequire } from 'bundle-require'\nimport { cosmiconfig } from 'cosmiconfig'\n\nimport type { UserConfig, defineConfig } from '@kubb/core'\n\nexport type CosmiconfigResult = {\n filepath: string\n isEmpty?: boolean\n config: ReturnType<typeof defineConfig> | UserConfig\n}\n\nconst tsLoader = async (configFile: string) => {\n const { mod } = await bundleRequire({\n filepath: configFile,\n preserveTemporaryFile: false,\n })\n\n return mod.default\n}\n\nconst jsLoader = async (configFile: string) => {\n const { mod } = await bundleRequire({\n filepath: configFile,\n preserveTemporaryFile: false,\n format: 'cjs',\n })\n\n return mod.default || mod\n}\n\nexport async function getCosmiConfig(moduleName: string, config?: string): Promise<CosmiconfigResult> {\n const searchPlaces = [\n 'package.json',\n `.${moduleName}rc`,\n `.${moduleName}rc.json`,\n `.${moduleName}rc.yaml`,\n `.${moduleName}rc.yml`,\n\n `.${moduleName}rc.ts`,\n `.${moduleName}rc.js`,\n `.${moduleName}rc.mjs`,\n `.${moduleName}rc.cjs`,\n\n `${moduleName}.config.ts`,\n `${moduleName}.config.js`,\n `${moduleName}.config.mjs`,\n `${moduleName}.config.cjs`,\n ]\n const explorer = cosmiconfig(moduleName, {\n cache: false,\n searchPlaces: [\n ...searchPlaces.map((searchPlace) => {\n return `.config/${searchPlace}`\n }),\n ...searchPlaces.map((searchPlace) => {\n return `configs/${searchPlace}`\n }),\n ...searchPlaces,\n ],\n loaders: {\n '.ts': tsLoader,\n },\n })\n\n const result = config ? await explorer.load(config) : await explorer.search()\n\n if (result?.isEmpty || !result || !result.config) {\n throw new Error('Config not defined, create a kubb.config.js or pass through your config with the option --config')\n }\n\n return result as CosmiconfigResult\n}\n","import c from 'tinyrainbow'\nimport { createLogger } from '@kubb/core/logger'\n\nexport async function startWatcher(path: string[], cb: (path: string[]) => Promise<void>): Promise<void> {\n const { watch } = await import('chokidar')\n\n const ignored = ['**/{.git,node_modules}/**']\n const logger = createLogger()\n\n const watcher = watch(path, {\n ignorePermissionErrors: true,\n ignored,\n })\n watcher.on('all', (type, file) => {\n logger.emit('info', c.yellow(c.bold(`Change detected: ${type} ${file}`)))\n\n try {\n cb(path)\n } catch (e) {\n logger?.emit('warning', c.red('Watcher failed'))\n }\n })\n\n return\n}\n"],"mappings":"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","names":["c","args","path","createLogger","args","command","c"]}
@@ -3,18 +3,18 @@
3
3
 
4
4
 
5
5
 
6
- var _chunk7CMTKETPcjs = require('./chunk-7CMTKETP.cjs');
6
+ var _chunkH3BA33NFcjs = require('./chunk-H3BA33NF.cjs');
7
7
 
8
8
  // src/commands/generate.ts
9
- _chunk7CMTKETPcjs.init_cjs_shims.call(void 0, );
9
+ _chunkH3BA33NFcjs.init_cjs_shims.call(void 0, );
10
10
  var _citty = require('citty');
11
11
 
12
12
  // src/utils/getConfig.ts
13
- _chunk7CMTKETPcjs.init_cjs_shims.call(void 0, );
13
+ _chunkH3BA33NFcjs.init_cjs_shims.call(void 0, );
14
14
  var _utils = require('@kubb/core/utils');
15
15
 
16
16
  // src/utils/getPlugins.ts
17
- _chunk7CMTKETPcjs.init_cjs_shims.call(void 0, );
17
+ _chunkH3BA33NFcjs.init_cjs_shims.call(void 0, );
18
18
  function isJSONPlugins(plugins) {
19
19
  return !!_optionalChain([plugins, 'optionalAccess', _2 => _2.some, 'call', _3 => _3((plugin) => {
20
20
  return Array.isArray(plugin) && typeof _optionalChain([plugin, 'optionalAccess', _4 => _4.at, 'call', _5 => _5(0)]) === "string";
@@ -62,7 +62,7 @@ async function getConfig(result, args2) {
62
62
  }
63
63
 
64
64
  // src/utils/getCosmiConfig.ts
65
- _chunk7CMTKETPcjs.init_cjs_shims.call(void 0, );
65
+ _chunkH3BA33NFcjs.init_cjs_shims.call(void 0, );
66
66
  var _bundlerequire = require('bundle-require');
67
67
  var _cosmiconfig = require('cosmiconfig');
68
68
  var tsLoader = async (configFile) => {
@@ -111,7 +111,7 @@ async function getCosmiConfig(moduleName, config) {
111
111
  }
112
112
 
113
113
  // src/utils/watcher.ts
114
- _chunk7CMTKETPcjs.init_cjs_shims.call(void 0, );
114
+ _chunkH3BA33NFcjs.init_cjs_shims.call(void 0, );
115
115
  var _logger = require('@kubb/core/logger');
116
116
  async function startWatcher(path2, cb) {
117
117
  const { watch } = await Promise.resolve().then(() => _interopRequireWildcard(require("chokidar")));
@@ -122,11 +122,11 @@ async function startWatcher(path2, cb) {
122
122
  ignored
123
123
  });
124
124
  watcher.on("all", (type, file) => {
125
- logger.emit("info", _chunk7CMTKETPcjs.p.yellow(_chunk7CMTKETPcjs.p.bold(`Change detected: ${type} ${file}`)));
125
+ logger.emit("info", _chunkH3BA33NFcjs.p.yellow(_chunkH3BA33NFcjs.p.bold(`Change detected: ${type} ${file}`)));
126
126
  try {
127
127
  cb(path2);
128
128
  } catch (e) {
129
- _optionalChain([logger, 'optionalAccess', _8 => _8.emit, 'call', _9 => _9("warning", _chunk7CMTKETPcjs.p.red("Watcher failed"))]);
129
+ _optionalChain([logger, 'optionalAccess', _8 => _8.emit, 'call', _9 => _9("warning", _chunkH3BA33NFcjs.p.red("Watcher failed"))]);
130
130
  }
131
131
  });
132
132
  return;
@@ -191,16 +191,16 @@ var command = _citty.defineCommand.call(void 0, {
191
191
  }
192
192
  if (args2.bun) {
193
193
  const command2 = process.argv.splice(2).filter((item) => item !== "--bun");
194
- await _chunk7CMTKETPcjs.execa.call(void 0, "bkubb", command2, { stdout: process.stdout, stderr: process.stderr });
194
+ await _chunkH3BA33NFcjs.execa.call(void 0, "bkubb", command2, { stdout: process.stdout, stderr: process.stderr });
195
195
  return;
196
196
  }
197
197
  const logLevel = _logger.LogMapper[args2.logLevel] || 3;
198
198
  const logger = _logger.createLogger.call(void 0, {
199
199
  logLevel
200
200
  });
201
- logger.emit("start", "\u{1F50D} Loading config");
201
+ logger.emit("start", "Loading config");
202
202
  const result = await getCosmiConfig("kubb", args2.config);
203
- logger.emit("success", `\u{1F50D} Config loaded(${_chunk7CMTKETPcjs.p.dim(_path2.default.relative(process.cwd(), result.filepath))})`);
203
+ logger.emit("success", `Config loaded(${_chunkH3BA33NFcjs.p.dim(_path2.default.relative(process.cwd(), result.filepath))})`);
204
204
  const config = await getConfig(result, args2);
205
205
  if (args2.watch) {
206
206
  if (Array.isArray(config)) {
@@ -208,21 +208,21 @@ var command = _citty.defineCommand.call(void 0, {
208
208
  }
209
209
  if (_core.isInputPath.call(void 0, config)) {
210
210
  return startWatcher([input || config.input.path], async (paths) => {
211
- await _chunk7CMTKETPcjs.generate.call(void 0, { config, args: args2 });
212
- logger.emit("start", _chunk7CMTKETPcjs.p.yellow(_chunk7CMTKETPcjs.p.bold(`Watching for changes in ${paths.join(" and ")}`)));
211
+ await _chunkH3BA33NFcjs.generate.call(void 0, { config, args: args2 });
212
+ logger.emit("start", _chunkH3BA33NFcjs.p.yellow(_chunkH3BA33NFcjs.p.bold(`Watching for changes in ${paths.join(" and ")}`)));
213
213
  });
214
214
  }
215
215
  }
216
216
  if (Array.isArray(config)) {
217
217
  const promiseManager = new (0, _core.PromiseManager)();
218
- const promises = config.map((item) => () => _chunk7CMTKETPcjs.generate.call(void 0, { input, config: item, args: args2 }));
218
+ const promises = config.map((item) => () => _chunkH3BA33NFcjs.generate.call(void 0, { input, config: item, args: args2 }));
219
219
  return promiseManager.run("seq", promises);
220
220
  }
221
- await _chunk7CMTKETPcjs.generate.call(void 0, { input, config, args: args2 });
221
+ await _chunkH3BA33NFcjs.generate.call(void 0, { input, config, args: args2 });
222
222
  }
223
223
  });
224
224
  var generate_default = command;
225
225
 
226
226
 
227
227
  exports.default = generate_default;
228
- //# sourceMappingURL=generate-ZGEX2WSJ.cjs.map
228
+ //# sourceMappingURL=generate-M3IAQ4OY.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/kubb/kubb/packages/cli/dist/generate-ZGEX2WSJ.cjs","../src/commands/generate.ts","../src/utils/getConfig.ts","../src/utils/getPlugins.ts","../src/utils/getCosmiConfig.ts","../src/utils/watcher.ts"],"names":["args"],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACA;ACPA,8CAAA,CAAA;AAAA,8BAAyC;ADUzC;AACA;AEXA,8CAAA,CAAA;AAAA,yCAA0B;AFc1B;AACA;AGfA,8CAAA,CAAA;AAEA,SAAS,aAAA,CAAc,OAAA,EAAgC;AACrD,EAAA,OAAO,CAAC,iBAAE,OAAA,6BAAiB,IAAA,mBAAK,CAAC,MAAA,EAAA,GAAgB;AAC/C,IAAA,OAAO,KAAA,CAAM,OAAA,CAAQ,MAAM,EAAA,GAAK,uBAAO,MAAA,6BAAQ,EAAA,mBAAG,CAAC,IAAA,IAAM,QAAA;AAAA,EAC3D,CAAC,GAAA;AACH;AAEA,SAAS,eAAA,CAAgB,OAAA,EAAgD;AACvE,EAAA,OAAO,QAAA,WAAmB,OAAA,GAAU,CAAC,KAAA,CAAM,OAAA,CAAQ,OAAO,CAAA;AAC5D;AAEO,SAAS,UAAA,CAAW,OAAA,EAAgE;AACzF,EAAA,GAAA,CAAI,eAAA,CAAgB,OAAO,CAAA,EAAG;AAC5B,IAAA,MAAM,IAAI,KAAA,CAAM,sGAAsG,CAAA;AAAA,EACxH;AAEA,EAAA,GAAA,CAAI,aAAA,CAAc,OAAO,CAAA,EAAG;AAC1B,IAAA,MAAM,IAAI,KAAA,CAAM,oGAAoG,CAAA;AAAA,EACtH;AAEA,EAAA,OAAO,OAAA,CAAQ,OAAA,CAAQ,OAAO,CAAA;AAChC;AHYA;AACA;AExBA,MAAA,SAAsB,SAAA,CAAU,MAAA,EAA2BA,KAAAA,EAA6C;AACtG,EAAA,MAAM,OAAA,kBAAS,MAAA,6BAAQ,QAAA;AACvB,EAAA,IAAI,eAAA,EAAiB,OAAA,CAAQ,OAAA,CAAQ,MAAM,CAAA;AAG3C,EAAA,GAAA,CAAI,OAAO,OAAA,IAAW,UAAA,EAAY;AAChC,IAAA,MAAM,gBAAA,EAAkB,MAAA,CAAOA,KAAI,CAAA;AACnC,IAAA,GAAA,CAAI,8BAAA,eAAyB,CAAA,EAAG;AAC9B,MAAA,eAAA,EAAiB,eAAA;AAAA,IACnB;AACA,IAAA,eAAA,EAAiB,OAAA,CAAQ,OAAA,CAAQ,eAAe,CAAA;AAAA,EAClD;AAEA,EAAA,IAAI,WAAA,EAAa,MAAM,cAAA;AAEvB,EAAA,GAAA,CAAI,KAAA,CAAM,OAAA,CAAQ,UAAU,CAAA,EAAG;AAC7B,IAAA,MAAM,SAAA,EAAW,UAAA,CAAW,GAAA,CAAI,MAAA,CAAO,IAAA,EAAA,GAAS;AAC9C,MAAA,OAAO;AAAA,QACL,GAAG,IAAA;AAAA,QACH,OAAA,EAAS,IAAA,CAAK,QAAA,EAAU,MAAM,UAAA,CAAW,IAAA,CAAK,OAAO,EAAA,EAAI,KAAA;AAAA,MAC3D,CAAA;AAAA,IACF,CAAC,CAAA;AAED,IAAA,OAAO,OAAA,CAAQ,GAAA,CAAI,QAAQ,CAAA;AAAA,EAC7B;AAEA,EAAA,WAAA,EAAa;AAAA,IACX,GAAG,UAAA;AAAA,IACH,OAAA,EAAS,UAAA,CAAW,QAAA,EAAU,MAAM,UAAA,CAAW,UAAA,CAAW,OAAO,EAAA,EAAI,KAAA;AAAA,EACvE,CAAA;AAEA,EAAA,OAAO,UAAA;AACT;AFmBA;AACA;AI/DA,8CAAA,CAAA;AAAA,+CAA8B;AAC9B,0CAA4B;AAU5B,IAAM,SAAA,EAAW,MAAA,CAAO,UAAA,EAAA,GAAuB;AAC7C,EAAA,MAAM,EAAE,IAAI,EAAA,EAAI,MAAM,0CAAA;AAAc,IAClC,QAAA,EAAU,UAAA;AAAA,IACV,qBAAA,EAAuB;AAAA,EACzB,CAAC,CAAA;AAED,EAAA,OAAO,GAAA,CAAI,OAAA;AACb,CAAA;AAYA,MAAA,SAAsB,cAAA,CAAe,UAAA,EAAoB,MAAA,EAA6C;AACpG,EAAA,MAAM,aAAA,EAAe;AAAA,IACnB,cAAA;AAAA,IACA,CAAA,CAAA,EAAI,UAAU,CAAA,EAAA,CAAA;AAAA,IACd,CAAA,CAAA,EAAI,UAAU,CAAA,OAAA,CAAA;AAAA,IACd,CAAA,CAAA,EAAI,UAAU,CAAA,OAAA,CAAA;AAAA,IACd,CAAA,CAAA,EAAI,UAAU,CAAA,MAAA,CAAA;AAAA,IAEd,CAAA,CAAA,EAAI,UAAU,CAAA,KAAA,CAAA;AAAA,IACd,CAAA,CAAA,EAAI,UAAU,CAAA,KAAA,CAAA;AAAA,IACd,CAAA,CAAA,EAAI,UAAU,CAAA,MAAA,CAAA;AAAA,IACd,CAAA,CAAA,EAAI,UAAU,CAAA,MAAA,CAAA;AAAA,IAEd,CAAA,EAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACF,EAAA;AACA,EAAA;AACE,IAAA;AACA,IAAA;AAAc,MAAA;AAEV,QAAA;AAA6B,MAAA;AAC9B,MAAA;AAEC,QAAA;AAA6B,MAAA;AAC9B,MAAA;AAEH,IAAA;AACA,IAAA;AAAS,MAAA;AAET,IAAA;AACD,EAAA;AAED,EAAA;AAEA,EAAA;AACE,IAAA;AACF,EAAA;AAEA,EAAA;AACF;AJwCK;AACA;AKhHL;AACA;AAEA;AACE,EAAA;AAEA,EAAA;AACA,EAAA;AAEA,EAAA;AACE,IAAA;AACA,IAAA;AACD,EAAA;AACD,EAAA;AACE,IAAA;AAEA,IAAA;AACE,MAAA;AACF,IAAA;AACE,sBAAA;AACF,IAAA;AACD,EAAA;AAED,EAAA;AACF;AL6GK;AACA;AC7HL;AAEA;AACA;AAEM;AACJ,EAAA;AACE,IAAA;AACA,IAAA;AACA,IAAA;AACF,EAAA;AACA,EAAA;AACE,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACF,EAAA;AACA,EAAA;AACE,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACF,EAAA;AACA,EAAA;AACE,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACF,EAAA;AACA,EAAA;AACE,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACF,EAAA;AACA,EAAA;AACE,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACF,EAAA;AACF;AAIM;AACJ,EAAA;AACE,IAAA;AACA,IAAA;AACF,EAAA;AACA,EAAA;AACA,EAAA;AACE,IAAA;AAEA,IAAA;AACE,MAAA;AACA,MAAA;AACF,IAAA;AAEA,IAAA;AACE,MAAA;AACF,IAAA;AAEA,IAAA;AACE,MAAA;AAEA,MAAA;AACA,MAAA;AACF,IAAA;AAEA,IAAA;AACA,IAAA;AAA4B,MAAA;AAE3B,IAAA;AAED,IAAA;AAEA,IAAA;AACA,IAAA;AAEA,IAAA;AAEA,IAAA;AACE,MAAA;AACE,QAAA;AAAiE,MAAA;AAGnE,MAAA;AACE,QAAA;AACE,UAAA;AACA,UAAA;AAAuF,QAAA;AACxF,MAAA;AAEL,IAAA;AAEA,IAAA;AACE,MAAA;AACA,MAAA;AAEA,MAAA;AACF,IAAA;AAEA,IAAA;AACF,EAAA;AACD;AAEM;AD4GF;AACA;AACA","file":"/home/runner/work/kubb/kubb/packages/cli/dist/generate-ZGEX2WSJ.cjs","sourcesContent":[null,"import { defineCommand, showUsage } from 'citty'\nimport type { ArgsDef, ParsedArgs } from 'citty'\nimport { execa } from 'execa'\nimport c from 'tinyrainbow'\n\nimport { getConfig } from '../utils/getConfig.ts'\nimport { getCosmiConfig } from '../utils/getCosmiConfig.ts'\nimport { startWatcher } from '../utils/watcher.ts'\n\nimport { PromiseManager, isInputPath } from '@kubb/core'\nimport { generate } from '../generate.ts'\nimport path from 'node:path'\nimport { createLogger, LogMapper } from '@kubb/core/logger'\n\nconst args = {\n config: {\n type: 'string',\n description: 'Path to the Kubb config',\n alias: 'c',\n },\n logLevel: {\n type: 'string',\n description: 'Info, silent or debug',\n alias: 'l',\n default: 'info',\n valueHint: 'silent|info|debug',\n },\n watch: {\n type: 'boolean',\n description: 'Watch mode based on the input file',\n alias: 'w',\n default: false,\n },\n bun: {\n type: 'boolean',\n description: 'Run Kubb with Bun',\n alias: 'b',\n default: false,\n },\n debug: {\n type: 'boolean',\n description: 'Override logLevel to debug',\n alias: 'd',\n default: false,\n },\n help: {\n type: 'boolean',\n description: 'Show help',\n alias: 'h',\n default: false,\n },\n} as const satisfies ArgsDef\n\nexport type Args = ParsedArgs<typeof args>\n\nconst command = defineCommand({\n meta: {\n name: 'generate',\n description: \"[input] Generate files based on a 'kubb.config.ts' file\",\n },\n args,\n async run({ args }) {\n const input = args._[0]\n\n if (args.help) {\n showUsage(command)\n return\n }\n\n if (args.debug) {\n args.logLevel = 'debug'\n }\n\n if (args.bun) {\n const command = process.argv.splice(2).filter((item) => item !== '--bun')\n\n await execa('bkubb', command, { stdout: process.stdout, stderr: process.stderr })\n return\n }\n\n const logLevel = LogMapper[args.logLevel as keyof typeof LogMapper] || 3\n const logger = createLogger({\n logLevel,\n })\n\n logger.emit('start', '🔍 Loading config')\n\n const result = await getCosmiConfig('kubb', args.config)\n logger.emit('success', `🔍 Config loaded(${c.dim(path.relative(process.cwd(), result.filepath))})`)\n\n const config = await getConfig(result, args)\n\n if (args.watch) {\n if (Array.isArray(config)) {\n throw new Error('Cannot use watcher with multiple Configs(array)')\n }\n\n if (isInputPath(config)) {\n return startWatcher([input || config.input.path], async (paths) => {\n await generate({ config, args })\n logger.emit('start', c.yellow(c.bold(`Watching for changes in ${paths.join(' and ')}`)))\n })\n }\n }\n\n if (Array.isArray(config)) {\n const promiseManager = new PromiseManager()\n const promises = config.map((item) => () => generate({ input, config: item, args }))\n\n return promiseManager.run('seq', promises)\n }\n\n await generate({ input, config, args })\n },\n})\n\nexport default command\n","import { isPromise } from '@kubb/core/utils'\n\nimport { getPlugins } from './getPlugins.ts'\n\nimport type { Config, UserConfig } from '@kubb/core'\nimport type { Args } from '../commands/generate.ts'\nimport type { CosmiconfigResult } from './getCosmiConfig.ts'\n\n/**\n * Converting UserConfig to Config without a change in the object beside the JSON convert.\n */\nexport async function getConfig(result: CosmiconfigResult, args: Args): Promise<Array<Config> | Config> {\n const config = result?.config\n let kubbUserConfig = Promise.resolve(config) as Promise<UserConfig | Array<UserConfig>>\n\n // for ts or js files\n if (typeof config === 'function') {\n const possiblePromise = config(args)\n if (isPromise(possiblePromise)) {\n kubbUserConfig = possiblePromise\n }\n kubbUserConfig = Promise.resolve(possiblePromise)\n }\n\n let JSONConfig = await kubbUserConfig\n\n if (Array.isArray(JSONConfig)) {\n const promises = JSONConfig.map(async (item) => {\n return {\n ...item,\n plugins: item.plugins ? await getPlugins(item.plugins) : undefined,\n }\n }) as unknown as Array<Promise<Config>>\n\n return Promise.all(promises)\n }\n\n JSONConfig = {\n ...JSONConfig,\n plugins: JSONConfig.plugins ? await getPlugins(JSONConfig.plugins) : undefined,\n }\n\n return JSONConfig as Config\n}\n","import type { UserConfig } from '@kubb/core'\n\nfunction isJSONPlugins(plugins: UserConfig['plugins']) {\n return !!(plugins as any)?.some((plugin: any) => {\n return Array.isArray(plugin) && typeof plugin?.at(0) === 'string'\n })\n}\n\nfunction isObjectPlugins(plugins: UserConfig['plugins']): plugins is any {\n return plugins instanceof Object && !Array.isArray(plugins)\n}\n\nexport function getPlugins(plugins: UserConfig['plugins']): Promise<UserConfig['plugins']> {\n if (isObjectPlugins(plugins)) {\n throw new Error('Object plugins are not supported anymore, best to use http://kubb.dev/getting-started/configure#json')\n }\n\n if (isJSONPlugins(plugins)) {\n throw new Error('JSON plugins are not supported anymore, best to use http://kubb.dev/getting-started/configure#json')\n }\n\n return Promise.resolve(plugins)\n}\n","import { bundleRequire } from 'bundle-require'\nimport { cosmiconfig } from 'cosmiconfig'\n\nimport type { UserConfig, defineConfig } from '@kubb/core'\n\nexport type CosmiconfigResult = {\n filepath: string\n isEmpty?: boolean\n config: ReturnType<typeof defineConfig> | UserConfig\n}\n\nconst tsLoader = async (configFile: string) => {\n const { mod } = await bundleRequire({\n filepath: configFile,\n preserveTemporaryFile: false,\n })\n\n return mod.default\n}\n\nconst jsLoader = async (configFile: string) => {\n const { mod } = await bundleRequire({\n filepath: configFile,\n preserveTemporaryFile: false,\n format: 'cjs',\n })\n\n return mod.default || mod\n}\n\nexport async function getCosmiConfig(moduleName: string, config?: string): Promise<CosmiconfigResult> {\n const searchPlaces = [\n 'package.json',\n `.${moduleName}rc`,\n `.${moduleName}rc.json`,\n `.${moduleName}rc.yaml`,\n `.${moduleName}rc.yml`,\n\n `.${moduleName}rc.ts`,\n `.${moduleName}rc.js`,\n `.${moduleName}rc.mjs`,\n `.${moduleName}rc.cjs`,\n\n `${moduleName}.config.ts`,\n `${moduleName}.config.js`,\n `${moduleName}.config.mjs`,\n `${moduleName}.config.cjs`,\n ]\n const explorer = cosmiconfig(moduleName, {\n cache: false,\n searchPlaces: [\n ...searchPlaces.map((searchPlace) => {\n return `.config/${searchPlace}`\n }),\n ...searchPlaces.map((searchPlace) => {\n return `configs/${searchPlace}`\n }),\n ...searchPlaces,\n ],\n loaders: {\n '.ts': tsLoader,\n },\n })\n\n const result = config ? await explorer.load(config) : await explorer.search()\n\n if (result?.isEmpty || !result || !result.config) {\n throw new Error('Config not defined, create a kubb.config.js or pass through your config with the option --config')\n }\n\n return result as CosmiconfigResult\n}\n","import c from 'tinyrainbow'\nimport { createLogger } from '@kubb/core/logger'\n\nexport async function startWatcher(path: string[], cb: (path: string[]) => Promise<void>): Promise<void> {\n const { watch } = await import('chokidar')\n\n const ignored = ['**/{.git,node_modules}/**']\n const logger = createLogger()\n\n const watcher = watch(path, {\n ignorePermissionErrors: true,\n ignored,\n })\n watcher.on('all', (type, file) => {\n logger.emit('info', c.yellow(c.bold(`Change detected: ${type} ${file}`)))\n\n try {\n cb(path)\n } catch (e) {\n logger?.emit('warning', c.red('Watcher failed'))\n }\n })\n\n return\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/kubb/kubb/packages/cli/dist/generate-M3IAQ4OY.cjs","../src/commands/generate.ts","../src/utils/getConfig.ts","../src/utils/getPlugins.ts","../src/utils/getCosmiConfig.ts","../src/utils/watcher.ts"],"names":["args"],"mappings":"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","file":"/home/runner/work/kubb/kubb/packages/cli/dist/generate-M3IAQ4OY.cjs","sourcesContent":[null,"import { defineCommand, showUsage } from 'citty'\nimport type { ArgsDef, ParsedArgs } from 'citty'\nimport { execa } from 'execa'\nimport c from 'tinyrainbow'\n\nimport { getConfig } from '../utils/getConfig.ts'\nimport { getCosmiConfig } from '../utils/getCosmiConfig.ts'\nimport { startWatcher } from '../utils/watcher.ts'\n\nimport { PromiseManager, isInputPath } from '@kubb/core'\nimport { generate } from '../generate.ts'\nimport path from 'node:path'\nimport { createLogger, LogMapper } from '@kubb/core/logger'\n\nconst args = {\n config: {\n type: 'string',\n description: 'Path to the Kubb config',\n alias: 'c',\n },\n logLevel: {\n type: 'string',\n description: 'Info, silent or debug',\n alias: 'l',\n default: 'info',\n valueHint: 'silent|info|debug',\n },\n watch: {\n type: 'boolean',\n description: 'Watch mode based on the input file',\n alias: 'w',\n default: false,\n },\n bun: {\n type: 'boolean',\n description: 'Run Kubb with Bun',\n alias: 'b',\n default: false,\n },\n debug: {\n type: 'boolean',\n description: 'Override logLevel to debug',\n alias: 'd',\n default: false,\n },\n help: {\n type: 'boolean',\n description: 'Show help',\n alias: 'h',\n default: false,\n },\n} as const satisfies ArgsDef\n\nexport type Args = ParsedArgs<typeof args>\n\nconst command = defineCommand({\n meta: {\n name: 'generate',\n description: \"[input] Generate files based on a 'kubb.config.ts' file\",\n },\n args,\n async run({ args }) {\n const input = args._[0]\n\n if (args.help) {\n showUsage(command)\n return\n }\n\n if (args.debug) {\n args.logLevel = 'debug'\n }\n\n if (args.bun) {\n const command = process.argv.splice(2).filter((item) => item !== '--bun')\n\n await execa('bkubb', command, { stdout: process.stdout, stderr: process.stderr })\n return\n }\n\n const logLevel = LogMapper[args.logLevel as keyof typeof LogMapper] || 3\n const logger = createLogger({\n logLevel,\n })\n\n logger.emit('start', 'Loading config')\n\n const result = await getCosmiConfig('kubb', args.config)\n logger.emit('success', `Config loaded(${c.dim(path.relative(process.cwd(), result.filepath))})`)\n\n const config = await getConfig(result, args)\n\n if (args.watch) {\n if (Array.isArray(config)) {\n throw new Error('Cannot use watcher with multiple Configs(array)')\n }\n\n if (isInputPath(config)) {\n return startWatcher([input || config.input.path], async (paths) => {\n await generate({ config, args })\n logger.emit('start', c.yellow(c.bold(`Watching for changes in ${paths.join(' and ')}`)))\n })\n }\n }\n\n if (Array.isArray(config)) {\n const promiseManager = new PromiseManager()\n const promises = config.map((item) => () => generate({ input, config: item, args }))\n\n return promiseManager.run('seq', promises)\n }\n\n await generate({ input, config, args })\n },\n})\n\nexport default command\n","import { isPromise } from '@kubb/core/utils'\n\nimport { getPlugins } from './getPlugins.ts'\n\nimport type { Config, UserConfig } from '@kubb/core'\nimport type { Args } from '../commands/generate.ts'\nimport type { CosmiconfigResult } from './getCosmiConfig.ts'\n\n/**\n * Converting UserConfig to Config without a change in the object beside the JSON convert.\n */\nexport async function getConfig(result: CosmiconfigResult, args: Args): Promise<Array<Config> | Config> {\n const config = result?.config\n let kubbUserConfig = Promise.resolve(config) as Promise<UserConfig | Array<UserConfig>>\n\n // for ts or js files\n if (typeof config === 'function') {\n const possiblePromise = config(args)\n if (isPromise(possiblePromise)) {\n kubbUserConfig = possiblePromise\n }\n kubbUserConfig = Promise.resolve(possiblePromise)\n }\n\n let JSONConfig = await kubbUserConfig\n\n if (Array.isArray(JSONConfig)) {\n const promises = JSONConfig.map(async (item) => {\n return {\n ...item,\n plugins: item.plugins ? await getPlugins(item.plugins) : undefined,\n }\n }) as unknown as Array<Promise<Config>>\n\n return Promise.all(promises)\n }\n\n JSONConfig = {\n ...JSONConfig,\n plugins: JSONConfig.plugins ? await getPlugins(JSONConfig.plugins) : undefined,\n }\n\n return JSONConfig as Config\n}\n","import type { UserConfig } from '@kubb/core'\n\nfunction isJSONPlugins(plugins: UserConfig['plugins']) {\n return !!(plugins as any)?.some((plugin: any) => {\n return Array.isArray(plugin) && typeof plugin?.at(0) === 'string'\n })\n}\n\nfunction isObjectPlugins(plugins: UserConfig['plugins']): plugins is any {\n return plugins instanceof Object && !Array.isArray(plugins)\n}\n\nexport function getPlugins(plugins: UserConfig['plugins']): Promise<UserConfig['plugins']> {\n if (isObjectPlugins(plugins)) {\n throw new Error('Object plugins are not supported anymore, best to use http://kubb.dev/getting-started/configure#json')\n }\n\n if (isJSONPlugins(plugins)) {\n throw new Error('JSON plugins are not supported anymore, best to use http://kubb.dev/getting-started/configure#json')\n }\n\n return Promise.resolve(plugins)\n}\n","import { bundleRequire } from 'bundle-require'\nimport { cosmiconfig } from 'cosmiconfig'\n\nimport type { UserConfig, defineConfig } from '@kubb/core'\n\nexport type CosmiconfigResult = {\n filepath: string\n isEmpty?: boolean\n config: ReturnType<typeof defineConfig> | UserConfig\n}\n\nconst tsLoader = async (configFile: string) => {\n const { mod } = await bundleRequire({\n filepath: configFile,\n preserveTemporaryFile: false,\n })\n\n return mod.default\n}\n\nconst jsLoader = async (configFile: string) => {\n const { mod } = await bundleRequire({\n filepath: configFile,\n preserveTemporaryFile: false,\n format: 'cjs',\n })\n\n return mod.default || mod\n}\n\nexport async function getCosmiConfig(moduleName: string, config?: string): Promise<CosmiconfigResult> {\n const searchPlaces = [\n 'package.json',\n `.${moduleName}rc`,\n `.${moduleName}rc.json`,\n `.${moduleName}rc.yaml`,\n `.${moduleName}rc.yml`,\n\n `.${moduleName}rc.ts`,\n `.${moduleName}rc.js`,\n `.${moduleName}rc.mjs`,\n `.${moduleName}rc.cjs`,\n\n `${moduleName}.config.ts`,\n `${moduleName}.config.js`,\n `${moduleName}.config.mjs`,\n `${moduleName}.config.cjs`,\n ]\n const explorer = cosmiconfig(moduleName, {\n cache: false,\n searchPlaces: [\n ...searchPlaces.map((searchPlace) => {\n return `.config/${searchPlace}`\n }),\n ...searchPlaces.map((searchPlace) => {\n return `configs/${searchPlace}`\n }),\n ...searchPlaces,\n ],\n loaders: {\n '.ts': tsLoader,\n },\n })\n\n const result = config ? await explorer.load(config) : await explorer.search()\n\n if (result?.isEmpty || !result || !result.config) {\n throw new Error('Config not defined, create a kubb.config.js or pass through your config with the option --config')\n }\n\n return result as CosmiconfigResult\n}\n","import c from 'tinyrainbow'\nimport { createLogger } from '@kubb/core/logger'\n\nexport async function startWatcher(path: string[], cb: (path: string[]) => Promise<void>): Promise<void> {\n const { watch } = await import('chokidar')\n\n const ignored = ['**/{.git,node_modules}/**']\n const logger = createLogger()\n\n const watcher = watch(path, {\n ignorePermissionErrors: true,\n ignored,\n })\n watcher.on('all', (type, file) => {\n logger.emit('info', c.yellow(c.bold(`Change detected: ${type} ${file}`)))\n\n try {\n cb(path)\n } catch (e) {\n logger?.emit('warning', c.red('Watcher failed'))\n }\n })\n\n return\n}\n"]}
package/dist/index.cjs CHANGED
@@ -1,17 +1,17 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
2
2
 
3
3
 
4
- var _chunk7CMTKETPcjs = require('./chunk-7CMTKETP.cjs');
4
+ var _chunkH3BA33NFcjs = require('./chunk-H3BA33NF.cjs');
5
5
 
6
6
  // src/index.ts
7
- _chunk7CMTKETPcjs.init_cjs_shims.call(void 0, );
7
+ _chunkH3BA33NFcjs.init_cjs_shims.call(void 0, );
8
8
  var _citty = require('citty');
9
9
  var _latestversion = require('latest-version'); var _latestversion2 = _interopRequireDefault(_latestversion);
10
10
  var _semver = require('semver');
11
11
  var _consola = require('consola'); var _consola2 = _interopRequireDefault(_consola);
12
12
 
13
13
  // package.json
14
- var version = "3.0.0-alpha.4";
14
+ var version = "3.0.0-alpha.5";
15
15
 
16
16
  // src/index.ts
17
17
  var name = "kubb";
@@ -39,13 +39,13 @@ Run \`npm install -g @kubb/cli\` to update`,
39
39
  } catch (_e) {
40
40
  }
41
41
  if (rawArgs[0] !== "generate") {
42
- const generateCommand = await Promise.resolve().then(() => _interopRequireWildcard(require("./generate-ZGEX2WSJ.cjs"))).then((r) => r.default);
42
+ const generateCommand = await Promise.resolve().then(() => _interopRequireWildcard(require("./generate-M3IAQ4OY.cjs"))).then((r) => r.default);
43
43
  await _citty.runCommand.call(void 0, generateCommand, { rawArgs });
44
44
  process.exit(0);
45
45
  }
46
46
  },
47
47
  subCommands: {
48
- generate: () => Promise.resolve().then(() => _interopRequireWildcard(require("./generate-ZGEX2WSJ.cjs"))).then((r) => r.default)
48
+ generate: () => Promise.resolve().then(() => _interopRequireWildcard(require("./generate-M3IAQ4OY.cjs"))).then((r) => r.default)
49
49
  }
50
50
  });
51
51
  async function run(_argv) {
@@ -54,5 +54,5 @@ async function run(_argv) {
54
54
 
55
55
 
56
56
 
57
- exports.generate = _chunk7CMTKETPcjs.generate; exports.run = run;
57
+ exports.generate = _chunkH3BA33NFcjs.generate; exports.run = run;
58
58
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/kubb/kubb/packages/cli/dist/index.cjs","../src/index.ts","../package.json"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,wDAA6B;AAC7B;AACA;ACLA,8CAAA,CAAA;AAAA,8BAAmD;AACnD,6GAA6B;AAC7B,gCAAmB;AAEnB,oFAAoB;ADOpB;AACA;AEVE,IAAA,QAAA,EAAW,eAAA;AFYb;AACA;ACRA,IAAM,KAAA,EAAO,MAAA;AAEb,IAAM,KAAA,EAAO,kCAAA;AAAc,EACzB,IAAA,EAAM;AAAA,IACJ,IAAA;AAAA,IACA,OAAA;AAAA,IACA,WAAA,EAAa;AAAA,EACf,CAAA;AAAA,EACA,MAAM,KAAA,CAAM,EAAE,QAAQ,CAAA,EAAG;AACvB,IAAA,IAAI;AACF,MAAA,MAAM,cAAA,EAAgB,MAAM,qCAAA,WAA4B,CAAA;AAExD,MAAA,GAAA,CAAI,wBAAA,OAAG,EAAS,aAAa,CAAA,EAAG;AAC9B,QAAA,iBAAA,CAAQ,GAAA,CAAI;AAAA,UACV,KAAA,EAAO,8BAAA;AAAA,UACP,OAAA,EAAS,CAAA,GAAA,EAAM,OAAO,CAAA,aAAA,EAAW,aAAa,CAAA;AAAA,0CAAA,CAAA;AAAA,UAE9C,KAAA,EAAO;AAAA,YACL,OAAA,EAAS,CAAA;AAAA,YACT,WAAA,EAAa,QAAA;AAAA,YACb,WAAA,EAAa;AAAA,UACf;AAAA,QACF,CAAC,CAAA;AAAA,MACH;AAAA,IACF,EAAA,MAAA,CAAS,EAAA,EAAI;AAAA,IAAC;AAEd,IAAA,GAAA,CAAI,OAAA,CAAQ,CAAC,EAAA,IAAM,UAAA,EAAY;AAE7B,MAAA,MAAM,gBAAA,EAAkB,MAAM,4DAAA,CAAO,yBAAwB,GAAA,CAAE,IAAA,CAAK,CAAC,CAAA,EAAA,GAAM,CAAA,CAAE,OAAO,CAAA;AAEpF,MAAA,MAAM,+BAAA,eAAW,EAAiB,EAAE,QAAQ,CAAC,CAAA;AAE7C,MAAA,OAAA,CAAQ,IAAA,CAAK,CAAC,CAAA;AAAA,IAChB;AAAA,EACF,CAAA;AAAA,EACA,WAAA,EAAa;AAAA,IACX,QAAA,EAAU,CAAA,EAAA,GAAM,4DAAA,CAAO,yBAAwB,GAAA,CAAE,IAAA,CAAK,CAAC,CAAA,EAAA,GAAM,CAAA,CAAE,OAAO;AAAA,EACxE;AACF,CAAC,CAAA;AAED,MAAA,SAAsB,GAAA,CAAI,KAAA,EAAiC;AACzD,EAAA,MAAM,4BAAA,IAAY,CAAA;AACpB;ADIA;AACE;AACA;AACF,iEAAC","file":"/home/runner/work/kubb/kubb/packages/cli/dist/index.cjs","sourcesContent":[null,"import { defineCommand, runCommand, runMain } from 'citty'\nimport getLatestVersion from 'latest-version'\nimport { lt } from 'semver'\n\nimport consola from 'consola'\nimport { version } from '../package.json'\n\nconst name = 'kubb'\n\nconst main = defineCommand({\n meta: {\n name,\n version,\n description: 'Kubb generation',\n },\n async setup({ rawArgs }) {\n try {\n const latestVersion = await getLatestVersion('@kubb/cli')\n\n if (lt(version, latestVersion)) {\n consola.box({\n title: 'Update available for `Kubb` ',\n message: `\\`v${version}\\` → \\`v${latestVersion}\\`\nRun \\`npm install -g @kubb/cli\\` to update`,\n style: {\n padding: 2,\n borderColor: 'yellow',\n borderStyle: 'rounded',\n },\n })\n }\n } catch (_e) {}\n\n if (rawArgs[0] !== 'generate') {\n // generate is not being used\n const generateCommand = await import('./commands/generate.ts').then((r) => r.default)\n\n await runCommand(generateCommand, { rawArgs })\n\n process.exit(0)\n }\n },\n subCommands: {\n generate: () => import('./commands/generate.ts').then((r) => r.default),\n },\n})\n\nexport async function run(_argv?: string[]): Promise<void> {\n await runMain(main)\n}\n\nexport { generate } from './generate.ts'\n","{\n \"name\": \"@kubb/cli\",\n \"version\": \"3.0.0-alpha.4\",\n \"description\": \"Generator cli\",\n \"keywords\": [\n \"typescript\",\n \"plugins\",\n \"kubb\",\n \"codegen\",\n \"cli\"\n ],\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git://github.com/kubb-labs/kubb.git\",\n \"directory\": \"packages/cli\"\n },\n \"license\": \"MIT\",\n \"author\": \"Stijn Van Hulle <stijn@stijnvanhulle.be\",\n \"sideEffects\": false,\n \"type\": \"module\",\n \"main\": \"dist/index.cjs\",\n \"module\": \"dist/index.js\",\n \"types\": \"./dist/index.d.ts\",\n \"exports\": {\n \".\": {\n \"import\": \"./dist/index.js\",\n \"require\": \"./dist/index.cjs\",\n \"default\": \"./dist/index.cjs\"\n }\n },\n \"bin\": {\n \"kubb\": \"bin/kubb.cjs\",\n \"bkubb\": \"bin/bkubb.cjs\"\n },\n \"files\": [\n \"src\",\n \"dist\",\n \"bin\",\n \"!/**/**.test.**\",\n \"!/**/__tests__/**\"\n ],\n \"scripts\": {\n \"build\": \"tsup\",\n \"clean\": \"npx rimraf ./dist\",\n \"lint\": \"bun biome lint .\",\n \"lint:fix\": \"bun biome lint --apply-unsafe .\",\n \"release\": \"pnpm publish --no-git-check\",\n \"release:canary\": \"bash ../../.github/canary.sh && node ../../scripts/build.js canary && pnpm publish --no-git-check\",\n \"start\": \"tsup --watch\",\n \"test\": \"vitest --passWithNoTests\",\n \"typecheck\": \"tsc -p ./tsconfig.json --noEmit --emitDeclarationOnly false\"\n },\n \"dependencies\": {\n \"@kubb/core\": \"workspace:*\",\n \"@kubb/fs\": \"workspace:*\",\n \"bundle-require\": \"^5.0.0\",\n \"chokidar\": \"^3.6.0\",\n \"citty\": \"^0.1.6\",\n \"cli-progress\": \"^3.12.0\",\n \"consola\": \"^3.2.3\",\n \"cosmiconfig\": \"^9.0.0\",\n \"esbuild\": \"^0.23.1\",\n \"execa\": \"^9.3.1\",\n \"js-runtime\": \"^0.0.8\",\n \"latest-version\": \"^9.0.0\",\n \"semver\": \"^7.6.3\",\n \"string-argv\": \"^0.3.2\",\n \"tinyrainbow\": \"^1.2.0\"\n },\n \"devDependencies\": {\n \"@kubb/config-ts\": \"workspace:*\",\n \"@kubb/config-tsup\": \"workspace:*\",\n \"@kubb/plugin-oas\": \"workspace:*\",\n \"@types/cli-progress\": \"^3.11.6\",\n \"@types/node\": \"^20.16.1\",\n \"@types/semver\": \"^7.5.8\",\n \"source-map-support\": \"^0.5.21\",\n \"tsup\": \"^8.2.4\",\n \"typescript\": \"^5.5.4\"\n },\n \"engines\": {\n \"node\": \">=20\"\n },\n \"preferGlobal\": true,\n \"publishConfig\": {\n \"access\": \"public\",\n \"registry\": \"https://registry.npmjs.org/\"\n }\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/kubb/kubb/packages/cli/dist/index.cjs","../src/index.ts","../package.json"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,wDAA6B;AAC7B;AACA;ACLA,8CAAA,CAAA;AAAA,8BAAmD;AACnD,6GAA6B;AAC7B,gCAAmB;AAEnB,oFAAoB;ADOpB;AACA;AEVE,IAAA,QAAA,EAAW,eAAA;AFYb;AACA;ACRA,IAAM,KAAA,EAAO,MAAA;AAEb,IAAM,KAAA,EAAO,kCAAA;AAAc,EACzB,IAAA,EAAM;AAAA,IACJ,IAAA;AAAA,IACA,OAAA;AAAA,IACA,WAAA,EAAa;AAAA,EACf,CAAA;AAAA,EACA,MAAM,KAAA,CAAM,EAAE,QAAQ,CAAA,EAAG;AACvB,IAAA,IAAI;AACF,MAAA,MAAM,cAAA,EAAgB,MAAM,qCAAA,WAA4B,CAAA;AAExD,MAAA,GAAA,CAAI,wBAAA,OAAG,EAAS,aAAa,CAAA,EAAG;AAC9B,QAAA,iBAAA,CAAQ,GAAA,CAAI;AAAA,UACV,KAAA,EAAO,8BAAA;AAAA,UACP,OAAA,EAAS,CAAA,GAAA,EAAM,OAAO,CAAA,aAAA,EAAW,aAAa,CAAA;AAAA,0CAAA,CAAA;AAAA,UAE9C,KAAA,EAAO;AAAA,YACL,OAAA,EAAS,CAAA;AAAA,YACT,WAAA,EAAa,QAAA;AAAA,YACb,WAAA,EAAa;AAAA,UACf;AAAA,QACF,CAAC,CAAA;AAAA,MACH;AAAA,IACF,EAAA,MAAA,CAAS,EAAA,EAAI;AAAA,IAAC;AAEd,IAAA,GAAA,CAAI,OAAA,CAAQ,CAAC,EAAA,IAAM,UAAA,EAAY;AAE7B,MAAA,MAAM,gBAAA,EAAkB,MAAM,4DAAA,CAAO,yBAAwB,GAAA,CAAE,IAAA,CAAK,CAAC,CAAA,EAAA,GAAM,CAAA,CAAE,OAAO,CAAA;AAEpF,MAAA,MAAM,+BAAA,eAAW,EAAiB,EAAE,QAAQ,CAAC,CAAA;AAE7C,MAAA,OAAA,CAAQ,IAAA,CAAK,CAAC,CAAA;AAAA,IAChB;AAAA,EACF,CAAA;AAAA,EACA,WAAA,EAAa;AAAA,IACX,QAAA,EAAU,CAAA,EAAA,GAAM,4DAAA,CAAO,yBAAwB,GAAA,CAAE,IAAA,CAAK,CAAC,CAAA,EAAA,GAAM,CAAA,CAAE,OAAO;AAAA,EACxE;AACF,CAAC,CAAA;AAED,MAAA,SAAsB,GAAA,CAAI,KAAA,EAAiC;AACzD,EAAA,MAAM,4BAAA,IAAY,CAAA;AACpB;ADIA;AACE;AACA;AACF,iEAAC","file":"/home/runner/work/kubb/kubb/packages/cli/dist/index.cjs","sourcesContent":[null,"import { defineCommand, runCommand, runMain } from 'citty'\nimport getLatestVersion from 'latest-version'\nimport { lt } from 'semver'\n\nimport consola from 'consola'\nimport { version } from '../package.json'\n\nconst name = 'kubb'\n\nconst main = defineCommand({\n meta: {\n name,\n version,\n description: 'Kubb generation',\n },\n async setup({ rawArgs }) {\n try {\n const latestVersion = await getLatestVersion('@kubb/cli')\n\n if (lt(version, latestVersion)) {\n consola.box({\n title: 'Update available for `Kubb` ',\n message: `\\`v${version}\\` → \\`v${latestVersion}\\`\nRun \\`npm install -g @kubb/cli\\` to update`,\n style: {\n padding: 2,\n borderColor: 'yellow',\n borderStyle: 'rounded',\n },\n })\n }\n } catch (_e) {}\n\n if (rawArgs[0] !== 'generate') {\n // generate is not being used\n const generateCommand = await import('./commands/generate.ts').then((r) => r.default)\n\n await runCommand(generateCommand, { rawArgs })\n\n process.exit(0)\n }\n },\n subCommands: {\n generate: () => import('./commands/generate.ts').then((r) => r.default),\n },\n})\n\nexport async function run(_argv?: string[]): Promise<void> {\n await runMain(main)\n}\n\nexport { generate } from './generate.ts'\n","{\n \"name\": \"@kubb/cli\",\n \"version\": \"3.0.0-alpha.5\",\n \"description\": \"Generator cli\",\n \"keywords\": [\n \"typescript\",\n \"plugins\",\n \"kubb\",\n \"codegen\",\n \"cli\"\n ],\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git://github.com/kubb-labs/kubb.git\",\n \"directory\": \"packages/cli\"\n },\n \"license\": \"MIT\",\n \"author\": \"Stijn Van Hulle <stijn@stijnvanhulle.be\",\n \"sideEffects\": false,\n \"type\": \"module\",\n \"main\": \"dist/index.cjs\",\n \"module\": \"dist/index.js\",\n \"types\": \"./dist/index.d.ts\",\n \"exports\": {\n \".\": {\n \"import\": \"./dist/index.js\",\n \"require\": \"./dist/index.cjs\",\n \"default\": \"./dist/index.cjs\"\n }\n },\n \"bin\": {\n \"kubb\": \"bin/kubb.cjs\",\n \"bkubb\": \"bin/bkubb.cjs\"\n },\n \"files\": [\n \"src\",\n \"dist\",\n \"bin\",\n \"!/**/**.test.**\",\n \"!/**/__tests__/**\"\n ],\n \"scripts\": {\n \"build\": \"tsup\",\n \"clean\": \"npx rimraf ./dist\",\n \"lint\": \"bun biome lint .\",\n \"lint:fix\": \"bun biome lint --apply-unsafe .\",\n \"release\": \"pnpm publish --no-git-check\",\n \"release:canary\": \"bash ../../.github/canary.sh && node ../../scripts/build.js canary && pnpm publish --no-git-check\",\n \"start\": \"tsup --watch\",\n \"test\": \"vitest --passWithNoTests\",\n \"typecheck\": \"tsc -p ./tsconfig.json --noEmit --emitDeclarationOnly false\"\n },\n \"dependencies\": {\n \"@kubb/core\": \"workspace:*\",\n \"@kubb/fs\": \"workspace:*\",\n \"bundle-require\": \"^5.0.0\",\n \"chokidar\": \"^3.6.0\",\n \"citty\": \"^0.1.6\",\n \"cli-progress\": \"^3.12.0\",\n \"consola\": \"^3.2.3\",\n \"cosmiconfig\": \"^9.0.0\",\n \"esbuild\": \"^0.23.1\",\n \"execa\": \"^9.3.1\",\n \"js-runtime\": \"^0.0.8\",\n \"latest-version\": \"^9.0.0\",\n \"p-queue\": \"^8.0.1\",\n \"semver\": \"^7.6.3\",\n \"string-argv\": \"^0.3.2\",\n \"tinyrainbow\": \"^1.2.0\"\n },\n \"devDependencies\": {\n \"@kubb/config-ts\": \"workspace:*\",\n \"@kubb/config-tsup\": \"workspace:*\",\n \"@kubb/plugin-oas\": \"workspace:*\",\n \"@types/cli-progress\": \"^3.11.6\",\n \"@types/node\": \"^20.16.1\",\n \"@types/semver\": \"^7.5.8\",\n \"source-map-support\": \"^0.5.21\",\n \"tsup\": \"^8.2.4\",\n \"typescript\": \"^5.5.4\"\n },\n \"engines\": {\n \"node\": \">=20\"\n },\n \"preferGlobal\": true,\n \"publishConfig\": {\n \"access\": \"public\",\n \"registry\": \"https://registry.npmjs.org/\"\n }\n}\n"]}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  generate
3
- } from "./chunk-Y35VLSP2.js";
3
+ } from "./chunk-WJ72QPXS.js";
4
4
 
5
5
  // src/index.ts
6
6
  import { defineCommand, runCommand, runMain } from "citty";
@@ -9,7 +9,7 @@ import { lt } from "semver";
9
9
  import consola from "consola";
10
10
 
11
11
  // package.json
12
- var version = "3.0.0-alpha.4";
12
+ var version = "3.0.0-alpha.5";
13
13
 
14
14
  // src/index.ts
15
15
  var name = "kubb";
@@ -37,13 +37,13 @@ Run \`npm install -g @kubb/cli\` to update`,
37
37
  } catch (_e) {
38
38
  }
39
39
  if (rawArgs[0] !== "generate") {
40
- const generateCommand = await import("./generate-FHYQHKKR.js").then((r) => r.default);
40
+ const generateCommand = await import("./generate-LZOUPH5K.js").then((r) => r.default);
41
41
  await runCommand(generateCommand, { rawArgs });
42
42
  process.exit(0);
43
43
  }
44
44
  },
45
45
  subCommands: {
46
- generate: () => import("./generate-FHYQHKKR.js").then((r) => r.default)
46
+ generate: () => import("./generate-LZOUPH5K.js").then((r) => r.default)
47
47
  }
48
48
  });
49
49
  async function run(_argv) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../package.json"],"sourcesContent":["import { defineCommand, runCommand, runMain } from 'citty'\nimport getLatestVersion from 'latest-version'\nimport { lt } from 'semver'\n\nimport consola from 'consola'\nimport { version } from '../package.json'\n\nconst name = 'kubb'\n\nconst main = defineCommand({\n meta: {\n name,\n version,\n description: 'Kubb generation',\n },\n async setup({ rawArgs }) {\n try {\n const latestVersion = await getLatestVersion('@kubb/cli')\n\n if (lt(version, latestVersion)) {\n consola.box({\n title: 'Update available for `Kubb` ',\n message: `\\`v${version}\\` → \\`v${latestVersion}\\`\nRun \\`npm install -g @kubb/cli\\` to update`,\n style: {\n padding: 2,\n borderColor: 'yellow',\n borderStyle: 'rounded',\n },\n })\n }\n } catch (_e) {}\n\n if (rawArgs[0] !== 'generate') {\n // generate is not being used\n const generateCommand = await import('./commands/generate.ts').then((r) => r.default)\n\n await runCommand(generateCommand, { rawArgs })\n\n process.exit(0)\n }\n },\n subCommands: {\n generate: () => import('./commands/generate.ts').then((r) => r.default),\n },\n})\n\nexport async function run(_argv?: string[]): Promise<void> {\n await runMain(main)\n}\n\nexport { generate } from './generate.ts'\n","{\n \"name\": \"@kubb/cli\",\n \"version\": \"3.0.0-alpha.4\",\n \"description\": \"Generator cli\",\n \"keywords\": [\n \"typescript\",\n \"plugins\",\n \"kubb\",\n \"codegen\",\n \"cli\"\n ],\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git://github.com/kubb-labs/kubb.git\",\n \"directory\": \"packages/cli\"\n },\n \"license\": \"MIT\",\n \"author\": \"Stijn Van Hulle <stijn@stijnvanhulle.be\",\n \"sideEffects\": false,\n \"type\": \"module\",\n \"main\": \"dist/index.cjs\",\n \"module\": \"dist/index.js\",\n \"types\": \"./dist/index.d.ts\",\n \"exports\": {\n \".\": {\n \"import\": \"./dist/index.js\",\n \"require\": \"./dist/index.cjs\",\n \"default\": \"./dist/index.cjs\"\n }\n },\n \"bin\": {\n \"kubb\": \"bin/kubb.cjs\",\n \"bkubb\": \"bin/bkubb.cjs\"\n },\n \"files\": [\n \"src\",\n \"dist\",\n \"bin\",\n \"!/**/**.test.**\",\n \"!/**/__tests__/**\"\n ],\n \"scripts\": {\n \"build\": \"tsup\",\n \"clean\": \"npx rimraf ./dist\",\n \"lint\": \"bun biome lint .\",\n \"lint:fix\": \"bun biome lint --apply-unsafe .\",\n \"release\": \"pnpm publish --no-git-check\",\n \"release:canary\": \"bash ../../.github/canary.sh && node ../../scripts/build.js canary && pnpm publish --no-git-check\",\n \"start\": \"tsup --watch\",\n \"test\": \"vitest --passWithNoTests\",\n \"typecheck\": \"tsc -p ./tsconfig.json --noEmit --emitDeclarationOnly false\"\n },\n \"dependencies\": {\n \"@kubb/core\": \"workspace:*\",\n \"@kubb/fs\": \"workspace:*\",\n \"bundle-require\": \"^5.0.0\",\n \"chokidar\": \"^3.6.0\",\n \"citty\": \"^0.1.6\",\n \"cli-progress\": \"^3.12.0\",\n \"consola\": \"^3.2.3\",\n \"cosmiconfig\": \"^9.0.0\",\n \"esbuild\": \"^0.23.1\",\n \"execa\": \"^9.3.1\",\n \"js-runtime\": \"^0.0.8\",\n \"latest-version\": \"^9.0.0\",\n \"semver\": \"^7.6.3\",\n \"string-argv\": \"^0.3.2\",\n \"tinyrainbow\": \"^1.2.0\"\n },\n \"devDependencies\": {\n \"@kubb/config-ts\": \"workspace:*\",\n \"@kubb/config-tsup\": \"workspace:*\",\n \"@kubb/plugin-oas\": \"workspace:*\",\n \"@types/cli-progress\": \"^3.11.6\",\n \"@types/node\": \"^20.16.1\",\n \"@types/semver\": \"^7.5.8\",\n \"source-map-support\": \"^0.5.21\",\n \"tsup\": \"^8.2.4\",\n \"typescript\": \"^5.5.4\"\n },\n \"engines\": {\n \"node\": \">=20\"\n },\n \"preferGlobal\": true,\n \"publishConfig\": {\n \"access\": \"public\",\n \"registry\": \"https://registry.npmjs.org/\"\n }\n}\n"],"mappings":";;;;;AAAA,SAAS,eAAe,YAAY,eAAe;AACnD,OAAO,sBAAsB;AAC7B,SAAS,UAAU;AAEnB,OAAO,aAAa;;;ACFlB,cAAW;;;ADKb,IAAM,OAAO;AAEb,IAAM,OAAO,cAAc;AAAA,EACzB,MAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,aAAa;AAAA,EACf;AAAA,EACA,MAAM,MAAM,EAAE,QAAQ,GAAG;AACvB,QAAI;AACF,YAAM,gBAAgB,MAAM,iBAAiB,WAAW;AAExD,UAAI,GAAG,SAAS,aAAa,GAAG;AAC9B,gBAAQ,IAAI;AAAA,UACV,OAAO;AAAA,UACP,SAAS,MAAM,OAAO,gBAAW,aAAa;AAAA;AAAA,UAE9C,OAAO;AAAA,YACL,SAAS;AAAA,YACT,aAAa;AAAA,YACb,aAAa;AAAA,UACf;AAAA,QACF,CAAC;AAAA,MACH;AAAA,IACF,SAAS,IAAI;AAAA,IAAC;AAEd,QAAI,QAAQ,CAAC,MAAM,YAAY;AAE7B,YAAM,kBAAkB,MAAM,OAAO,wBAAwB,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO;AAEpF,YAAM,WAAW,iBAAiB,EAAE,QAAQ,CAAC;AAE7C,cAAQ,KAAK,CAAC;AAAA,IAChB;AAAA,EACF;AAAA,EACA,aAAa;AAAA,IACX,UAAU,MAAM,OAAO,wBAAwB,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO;AAAA,EACxE;AACF,CAAC;AAED,eAAsB,IAAI,OAAiC;AACzD,QAAM,QAAQ,IAAI;AACpB;","names":[]}
1
+ {"version":3,"sources":["../src/index.ts","../package.json"],"sourcesContent":["import { defineCommand, runCommand, runMain } from 'citty'\nimport getLatestVersion from 'latest-version'\nimport { lt } from 'semver'\n\nimport consola from 'consola'\nimport { version } from '../package.json'\n\nconst name = 'kubb'\n\nconst main = defineCommand({\n meta: {\n name,\n version,\n description: 'Kubb generation',\n },\n async setup({ rawArgs }) {\n try {\n const latestVersion = await getLatestVersion('@kubb/cli')\n\n if (lt(version, latestVersion)) {\n consola.box({\n title: 'Update available for `Kubb` ',\n message: `\\`v${version}\\` → \\`v${latestVersion}\\`\nRun \\`npm install -g @kubb/cli\\` to update`,\n style: {\n padding: 2,\n borderColor: 'yellow',\n borderStyle: 'rounded',\n },\n })\n }\n } catch (_e) {}\n\n if (rawArgs[0] !== 'generate') {\n // generate is not being used\n const generateCommand = await import('./commands/generate.ts').then((r) => r.default)\n\n await runCommand(generateCommand, { rawArgs })\n\n process.exit(0)\n }\n },\n subCommands: {\n generate: () => import('./commands/generate.ts').then((r) => r.default),\n },\n})\n\nexport async function run(_argv?: string[]): Promise<void> {\n await runMain(main)\n}\n\nexport { generate } from './generate.ts'\n","{\n \"name\": \"@kubb/cli\",\n \"version\": \"3.0.0-alpha.5\",\n \"description\": \"Generator cli\",\n \"keywords\": [\n \"typescript\",\n \"plugins\",\n \"kubb\",\n \"codegen\",\n \"cli\"\n ],\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git://github.com/kubb-labs/kubb.git\",\n \"directory\": \"packages/cli\"\n },\n \"license\": \"MIT\",\n \"author\": \"Stijn Van Hulle <stijn@stijnvanhulle.be\",\n \"sideEffects\": false,\n \"type\": \"module\",\n \"main\": \"dist/index.cjs\",\n \"module\": \"dist/index.js\",\n \"types\": \"./dist/index.d.ts\",\n \"exports\": {\n \".\": {\n \"import\": \"./dist/index.js\",\n \"require\": \"./dist/index.cjs\",\n \"default\": \"./dist/index.cjs\"\n }\n },\n \"bin\": {\n \"kubb\": \"bin/kubb.cjs\",\n \"bkubb\": \"bin/bkubb.cjs\"\n },\n \"files\": [\n \"src\",\n \"dist\",\n \"bin\",\n \"!/**/**.test.**\",\n \"!/**/__tests__/**\"\n ],\n \"scripts\": {\n \"build\": \"tsup\",\n \"clean\": \"npx rimraf ./dist\",\n \"lint\": \"bun biome lint .\",\n \"lint:fix\": \"bun biome lint --apply-unsafe .\",\n \"release\": \"pnpm publish --no-git-check\",\n \"release:canary\": \"bash ../../.github/canary.sh && node ../../scripts/build.js canary && pnpm publish --no-git-check\",\n \"start\": \"tsup --watch\",\n \"test\": \"vitest --passWithNoTests\",\n \"typecheck\": \"tsc -p ./tsconfig.json --noEmit --emitDeclarationOnly false\"\n },\n \"dependencies\": {\n \"@kubb/core\": \"workspace:*\",\n \"@kubb/fs\": \"workspace:*\",\n \"bundle-require\": \"^5.0.0\",\n \"chokidar\": \"^3.6.0\",\n \"citty\": \"^0.1.6\",\n \"cli-progress\": \"^3.12.0\",\n \"consola\": \"^3.2.3\",\n \"cosmiconfig\": \"^9.0.0\",\n \"esbuild\": \"^0.23.1\",\n \"execa\": \"^9.3.1\",\n \"js-runtime\": \"^0.0.8\",\n \"latest-version\": \"^9.0.0\",\n \"p-queue\": \"^8.0.1\",\n \"semver\": \"^7.6.3\",\n \"string-argv\": \"^0.3.2\",\n \"tinyrainbow\": \"^1.2.0\"\n },\n \"devDependencies\": {\n \"@kubb/config-ts\": \"workspace:*\",\n \"@kubb/config-tsup\": \"workspace:*\",\n \"@kubb/plugin-oas\": \"workspace:*\",\n \"@types/cli-progress\": \"^3.11.6\",\n \"@types/node\": \"^20.16.1\",\n \"@types/semver\": \"^7.5.8\",\n \"source-map-support\": \"^0.5.21\",\n \"tsup\": \"^8.2.4\",\n \"typescript\": \"^5.5.4\"\n },\n \"engines\": {\n \"node\": \">=20\"\n },\n \"preferGlobal\": true,\n \"publishConfig\": {\n \"access\": \"public\",\n \"registry\": \"https://registry.npmjs.org/\"\n }\n}\n"],"mappings":";;;;;AAAA,SAAS,eAAe,YAAY,eAAe;AACnD,OAAO,sBAAsB;AAC7B,SAAS,UAAU;AAEnB,OAAO,aAAa;;;ACFlB,cAAW;;;ADKb,IAAM,OAAO;AAEb,IAAM,OAAO,cAAc;AAAA,EACzB,MAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,aAAa;AAAA,EACf;AAAA,EACA,MAAM,MAAM,EAAE,QAAQ,GAAG;AACvB,QAAI;AACF,YAAM,gBAAgB,MAAM,iBAAiB,WAAW;AAExD,UAAI,GAAG,SAAS,aAAa,GAAG;AAC9B,gBAAQ,IAAI;AAAA,UACV,OAAO;AAAA,UACP,SAAS,MAAM,OAAO,gBAAW,aAAa;AAAA;AAAA,UAE9C,OAAO;AAAA,YACL,SAAS;AAAA,YACT,aAAa;AAAA,YACb,aAAa;AAAA,UACf;AAAA,QACF,CAAC;AAAA,MACH;AAAA,IACF,SAAS,IAAI;AAAA,IAAC;AAEd,QAAI,QAAQ,CAAC,MAAM,YAAY;AAE7B,YAAM,kBAAkB,MAAM,OAAO,wBAAwB,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO;AAEpF,YAAM,WAAW,iBAAiB,EAAE,QAAQ,CAAC;AAE7C,cAAQ,KAAK,CAAC;AAAA,IAChB;AAAA,EACF;AAAA,EACA,aAAa;AAAA,IACX,UAAU,MAAM,OAAO,wBAAwB,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO;AAAA,EACxE;AACF,CAAC;AAED,eAAsB,IAAI,OAAiC;AACzD,QAAM,QAAQ,IAAI;AACpB;","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kubb/cli",
3
- "version": "3.0.0-alpha.4",
3
+ "version": "3.0.0-alpha.5",
4
4
  "description": "Generator cli",
5
5
  "keywords": [
6
6
  "typescript",
@@ -50,11 +50,12 @@
50
50
  "execa": "^9.3.1",
51
51
  "js-runtime": "^0.0.8",
52
52
  "latest-version": "^9.0.0",
53
+ "p-queue": "^8.0.1",
53
54
  "semver": "^7.6.3",
54
55
  "string-argv": "^0.3.2",
55
56
  "tinyrainbow": "^1.2.0",
56
- "@kubb/core": "3.0.0-alpha.4",
57
- "@kubb/fs": "3.0.0-alpha.4"
57
+ "@kubb/core": "3.0.0-alpha.5",
58
+ "@kubb/fs": "3.0.0-alpha.5"
58
59
  },
59
60
  "devDependencies": {
60
61
  "@types/cli-progress": "^3.11.6",
@@ -63,9 +64,9 @@
63
64
  "source-map-support": "^0.5.21",
64
65
  "tsup": "^8.2.4",
65
66
  "typescript": "^5.5.4",
66
- "@kubb/config-ts": "3.0.0-alpha.4",
67
- "@kubb/config-tsup": "3.0.0-alpha.4",
68
- "@kubb/plugin-oas": "3.0.0-alpha.4"
67
+ "@kubb/config-ts": "3.0.0-alpha.5",
68
+ "@kubb/config-tsup": "3.0.0-alpha.5",
69
+ "@kubb/plugin-oas": "3.0.0-alpha.5"
69
70
  },
70
71
  "engines": {
71
72
  "node": ">=20"
@@ -83,10 +83,10 @@ const command = defineCommand({
83
83
  logLevel,
84
84
  })
85
85
 
86
- logger.emit('start', '🔍 Loading config')
86
+ logger.emit('start', 'Loading config')
87
87
 
88
88
  const result = await getCosmiConfig('kubb', args.config)
89
- logger.emit('success', `🔍 Config loaded(${c.dim(path.relative(process.cwd(), result.filepath))})`)
89
+ logger.emit('success', `Config loaded(${c.dim(path.relative(process.cwd(), result.filepath))})`)
90
90
 
91
91
  const config = await getConfig(result, args)
92
92