@kubb/cli 3.0.0-alpha.9 → 3.0.0-beta.1
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.
- package/README.md +14 -5
- package/dist/{chunk-CZ3C3WQD.js → chunk-LA3QWVJI.js} +63 -99
- package/dist/chunk-LA3QWVJI.js.map +1 -0
- package/dist/{chunk-LK3JKOEH.cjs → chunk-PAOUPXAG.cjs} +583 -695
- package/dist/chunk-PAOUPXAG.cjs.map +1 -0
- package/dist/generate-IZ3C56MV.cjs +244 -0
- package/dist/generate-IZ3C56MV.cjs.map +1 -0
- package/dist/{generate-IFZ2Y6PO.js → generate-JA5KME2H.js} +38 -53
- package/dist/generate-JA5KME2H.js.map +1 -0
- package/dist/index.cjs +26 -21
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -6
- package/dist/index.d.ts +3 -6
- package/dist/index.js +11 -18
- package/dist/index.js.map +1 -1
- package/package.json +15 -19
- package/src/commands/generate.ts +23 -17
- package/src/generate.ts +43 -45
- package/src/index.ts +1 -1
- package/src/utils/Writables.ts +2 -2
- package/src/utils/executeHooks.ts +5 -5
- package/src/utils/getCosmiConfig.ts +4 -15
- package/src/utils/getSummary.ts +4 -6
- package/src/utils/watcher.ts +4 -6
- package/bin/bkubb.cjs +0 -6
- package/dist/chunk-CZ3C3WQD.js.map +0 -1
- package/dist/chunk-LK3JKOEH.cjs.map +0 -1
- package/dist/generate-CMBXNVHT.cjs +0 -228
- package/dist/generate-CMBXNVHT.cjs.map +0 -1
- package/dist/generate-IFZ2Y6PO.js.map +0 -1
- package/src/utils/writeLog.ts +0 -28
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkPAOUPXAG_cjs = require('./chunk-PAOUPXAG.cjs');
|
|
4
|
+
var citty = require('citty');
|
|
5
|
+
var utils = require('@kubb/core/utils');
|
|
6
|
+
var cosmiconfig = require('cosmiconfig');
|
|
7
|
+
var jiti = require('jiti');
|
|
8
|
+
var logger = require('@kubb/core/logger');
|
|
9
|
+
var path = require('path');
|
|
10
|
+
var process = require('process');
|
|
11
|
+
var core = require('@kubb/core');
|
|
12
|
+
|
|
13
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
+
|
|
15
|
+
function _interopNamespace(e) {
|
|
16
|
+
if (e && e.__esModule) return e;
|
|
17
|
+
var n = Object.create(null);
|
|
18
|
+
if (e) {
|
|
19
|
+
Object.keys(e).forEach(function (k) {
|
|
20
|
+
if (k !== 'default') {
|
|
21
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
22
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
23
|
+
enumerable: true,
|
|
24
|
+
get: function () { return e[k]; }
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
n.default = e;
|
|
30
|
+
return Object.freeze(n);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
var path__default = /*#__PURE__*/_interopDefault(path);
|
|
34
|
+
var process__namespace = /*#__PURE__*/_interopNamespace(process);
|
|
35
|
+
|
|
36
|
+
// src/commands/generate.ts
|
|
37
|
+
chunkPAOUPXAG_cjs.init_cjs_shims();
|
|
38
|
+
|
|
39
|
+
// src/utils/getConfig.ts
|
|
40
|
+
chunkPAOUPXAG_cjs.init_cjs_shims();
|
|
41
|
+
|
|
42
|
+
// src/utils/getPlugins.ts
|
|
43
|
+
chunkPAOUPXAG_cjs.init_cjs_shims();
|
|
44
|
+
function isJSONPlugins(plugins) {
|
|
45
|
+
return !!plugins?.some((plugin) => {
|
|
46
|
+
return Array.isArray(plugin) && typeof plugin?.at(0) === "string";
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
function isObjectPlugins(plugins) {
|
|
50
|
+
return plugins instanceof Object && !Array.isArray(plugins);
|
|
51
|
+
}
|
|
52
|
+
function getPlugins(plugins) {
|
|
53
|
+
if (isObjectPlugins(plugins)) {
|
|
54
|
+
throw new Error("Object plugins are not supported anymore, best to use http://kubb.dev/getting-started/configure#json");
|
|
55
|
+
}
|
|
56
|
+
if (isJSONPlugins(plugins)) {
|
|
57
|
+
throw new Error("JSON plugins are not supported anymore, best to use http://kubb.dev/getting-started/configure#json");
|
|
58
|
+
}
|
|
59
|
+
return Promise.resolve(plugins);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
// src/utils/getConfig.ts
|
|
63
|
+
async function getConfig(result, args2) {
|
|
64
|
+
const config = result?.config;
|
|
65
|
+
let kubbUserConfig = Promise.resolve(config);
|
|
66
|
+
if (typeof config === "function") {
|
|
67
|
+
const possiblePromise = config(args2);
|
|
68
|
+
if (utils.isPromise(possiblePromise)) {
|
|
69
|
+
kubbUserConfig = possiblePromise;
|
|
70
|
+
}
|
|
71
|
+
kubbUserConfig = Promise.resolve(possiblePromise);
|
|
72
|
+
}
|
|
73
|
+
let JSONConfig = await kubbUserConfig;
|
|
74
|
+
if (Array.isArray(JSONConfig)) {
|
|
75
|
+
const promises = JSONConfig.map(async (item) => {
|
|
76
|
+
return {
|
|
77
|
+
...item,
|
|
78
|
+
plugins: item.plugins ? await getPlugins(item.plugins) : void 0
|
|
79
|
+
};
|
|
80
|
+
});
|
|
81
|
+
return Promise.all(promises);
|
|
82
|
+
}
|
|
83
|
+
JSONConfig = {
|
|
84
|
+
...JSONConfig,
|
|
85
|
+
plugins: JSONConfig.plugins ? await getPlugins(JSONConfig.plugins) : void 0
|
|
86
|
+
};
|
|
87
|
+
return JSONConfig;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
// src/utils/getCosmiConfig.ts
|
|
91
|
+
chunkPAOUPXAG_cjs.init_cjs_shims();
|
|
92
|
+
var tsLoader = async (configFile) => {
|
|
93
|
+
const jiti$1 = jiti.createJiti(chunkPAOUPXAG_cjs.importMetaUrl, { jsx: true });
|
|
94
|
+
const mod = await jiti$1.import(configFile);
|
|
95
|
+
return mod;
|
|
96
|
+
};
|
|
97
|
+
async function getCosmiConfig(moduleName, config) {
|
|
98
|
+
const searchPlaces = [
|
|
99
|
+
"package.json",
|
|
100
|
+
`.${moduleName}rc`,
|
|
101
|
+
`.${moduleName}rc.json`,
|
|
102
|
+
`.${moduleName}rc.yaml`,
|
|
103
|
+
`.${moduleName}rc.yml`,
|
|
104
|
+
`.${moduleName}rc.ts`,
|
|
105
|
+
`.${moduleName}rc.js`,
|
|
106
|
+
`.${moduleName}rc.mjs`,
|
|
107
|
+
`.${moduleName}rc.cjs`,
|
|
108
|
+
`${moduleName}.config.ts`,
|
|
109
|
+
`${moduleName}.config.js`,
|
|
110
|
+
`${moduleName}.config.mjs`,
|
|
111
|
+
`${moduleName}.config.cjs`
|
|
112
|
+
];
|
|
113
|
+
const explorer = cosmiconfig.cosmiconfig(moduleName, {
|
|
114
|
+
cache: false,
|
|
115
|
+
searchPlaces: [
|
|
116
|
+
...searchPlaces.map((searchPlace) => {
|
|
117
|
+
return `.config/${searchPlace}`;
|
|
118
|
+
}),
|
|
119
|
+
...searchPlaces.map((searchPlace) => {
|
|
120
|
+
return `configs/${searchPlace}`;
|
|
121
|
+
}),
|
|
122
|
+
...searchPlaces
|
|
123
|
+
],
|
|
124
|
+
loaders: {
|
|
125
|
+
".ts": tsLoader
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
const result = config ? await explorer.load(config) : await explorer.search();
|
|
129
|
+
if (result?.isEmpty || !result || !result.config) {
|
|
130
|
+
throw new Error("Config not defined, create a kubb.config.js or pass through your config with the option --config");
|
|
131
|
+
}
|
|
132
|
+
return result;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
// src/utils/watcher.ts
|
|
136
|
+
chunkPAOUPXAG_cjs.init_cjs_shims();
|
|
137
|
+
async function startWatcher(path2, cb) {
|
|
138
|
+
const { watch } = await import('chokidar');
|
|
139
|
+
const logger$1 = logger.createLogger();
|
|
140
|
+
const ignored = "**/{.git,node_modules}/**";
|
|
141
|
+
const watcher = watch(path2, {
|
|
142
|
+
ignorePermissionErrors: true,
|
|
143
|
+
ignored
|
|
144
|
+
});
|
|
145
|
+
watcher.on("all", (type, file) => {
|
|
146
|
+
logger$1?.emit("info", chunkPAOUPXAG_cjs.p.yellow(chunkPAOUPXAG_cjs.p.bold(`Change detected: ${type} ${file}`)));
|
|
147
|
+
try {
|
|
148
|
+
cb(path2);
|
|
149
|
+
} catch (e) {
|
|
150
|
+
logger$1?.emit("warning", chunkPAOUPXAG_cjs.p.red("Watcher failed"));
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
var args = {
|
|
155
|
+
config: {
|
|
156
|
+
type: "string",
|
|
157
|
+
description: "Path to the Kubb config",
|
|
158
|
+
alias: "c"
|
|
159
|
+
},
|
|
160
|
+
logLevel: {
|
|
161
|
+
type: "string",
|
|
162
|
+
description: "Info, silent or debug",
|
|
163
|
+
alias: "l",
|
|
164
|
+
default: "info",
|
|
165
|
+
valueHint: "silent|info|debug"
|
|
166
|
+
},
|
|
167
|
+
watch: {
|
|
168
|
+
type: "boolean",
|
|
169
|
+
description: "Watch mode based on the input file",
|
|
170
|
+
alias: "w",
|
|
171
|
+
default: false
|
|
172
|
+
},
|
|
173
|
+
debug: {
|
|
174
|
+
type: "boolean",
|
|
175
|
+
description: "Override logLevel to debug",
|
|
176
|
+
alias: "d",
|
|
177
|
+
default: false
|
|
178
|
+
},
|
|
179
|
+
help: {
|
|
180
|
+
type: "boolean",
|
|
181
|
+
description: "Show help",
|
|
182
|
+
alias: "h",
|
|
183
|
+
default: false
|
|
184
|
+
}
|
|
185
|
+
};
|
|
186
|
+
var command = citty.defineCommand({
|
|
187
|
+
meta: {
|
|
188
|
+
name: "generate",
|
|
189
|
+
description: "[input] Generate files based on a 'kubb.config.ts' file"
|
|
190
|
+
},
|
|
191
|
+
args,
|
|
192
|
+
async run(commandContext) {
|
|
193
|
+
const { args: args2 } = commandContext;
|
|
194
|
+
const input = args2._[0];
|
|
195
|
+
if (args2.help) {
|
|
196
|
+
citty.showUsage(command);
|
|
197
|
+
return;
|
|
198
|
+
}
|
|
199
|
+
if (args2.debug) {
|
|
200
|
+
args2.logLevel = "debug";
|
|
201
|
+
}
|
|
202
|
+
const logLevel = logger.LogMapper[args2.logLevel] || 3;
|
|
203
|
+
const logger$1 = logger.createLogger({
|
|
204
|
+
logLevel
|
|
205
|
+
});
|
|
206
|
+
logger$1.emit("start", "Loading config");
|
|
207
|
+
const result = await getCosmiConfig("kubb", args2.config);
|
|
208
|
+
logger$1.emit("success", `Config loaded(${chunkPAOUPXAG_cjs.p.dim(path__default.default.relative(process__namespace.cwd(), result.filepath))})`);
|
|
209
|
+
const config = await getConfig(result, args2);
|
|
210
|
+
if (args2.watch) {
|
|
211
|
+
if (Array.isArray(config)) {
|
|
212
|
+
throw new Error("Cannot use watcher with multiple Configs(array)");
|
|
213
|
+
}
|
|
214
|
+
if (core.isInputPath(config)) {
|
|
215
|
+
return startWatcher([input || config.input.path], async (paths) => {
|
|
216
|
+
await chunkPAOUPXAG_cjs.generate({ config, args: args2, input });
|
|
217
|
+
logger$1.emit("start", chunkPAOUPXAG_cjs.p.yellow(chunkPAOUPXAG_cjs.p.bold(`Watching for changes in ${paths.join(" and ")}`)));
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
if (Array.isArray(config)) {
|
|
222
|
+
const promiseManager = new core.PromiseManager();
|
|
223
|
+
const promises = config.map((item) => () => chunkPAOUPXAG_cjs.generate({ input, config: item, args: args2 }));
|
|
224
|
+
return promiseManager.run("seq", promises);
|
|
225
|
+
}
|
|
226
|
+
await chunkPAOUPXAG_cjs.generate({ input, config, args: args2 });
|
|
227
|
+
if (globalThis.isDevtoolsEnabled) {
|
|
228
|
+
const restart = await logger$1.consola?.prompt("Restart(could be used to validate the profiler)?", {
|
|
229
|
+
type: "confirm",
|
|
230
|
+
initial: false
|
|
231
|
+
});
|
|
232
|
+
if (restart) {
|
|
233
|
+
await command.run?.(commandContext);
|
|
234
|
+
} else {
|
|
235
|
+
process__namespace.exit(1);
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
});
|
|
240
|
+
var generate_default = command;
|
|
241
|
+
|
|
242
|
+
module.exports = generate_default;
|
|
243
|
+
//# sourceMappingURL=generate-IZ3C56MV.cjs.map
|
|
244
|
+
//# sourceMappingURL=generate-IZ3C56MV.cjs.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"],"names":["init_cjs_shims","args","isPromise","jiti","createJiti","importMetaUrl","cosmiconfig","path","logger","createLogger","p","defineCommand","showUsage","LogMapper","process","isInputPath","generate","PromiseManager"],"mappings":"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","file":"generate-IZ3C56MV.cjs","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 path from 'node:path'\nimport * as process from 'node:process'\nimport { PromiseManager, isInputPath } from '@kubb/core'\nimport { LogMapper, createLogger } from '@kubb/core/logger'\nimport { generate } from '../generate.ts'\n\ndeclare global {\n var isDevtoolsEnabled: any\n}\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 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(commandContext) {\n const { args } = commandContext\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 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, input })\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 if (globalThis.isDevtoolsEnabled) {\n const restart = await logger.consola?.prompt('Restart(could be used to validate the profiler)?', {\n type: 'confirm',\n initial: false,\n })\n\n if (restart) {\n await command.run?.(commandContext)\n } else {\n process.exit(1)\n }\n }\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 { cosmiconfig } from 'cosmiconfig'\nimport { createJiti } from 'jiti'\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 jiti = createJiti(import.meta.url, { jsx: true })\n\n const mod = await jiti.import(configFile)\n\n return 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 { createLogger } from '@kubb/core/logger'\nimport c from 'tinyrainbow'\n\nexport async function startWatcher(path: string[], cb: (path: string[]) => Promise<void>): Promise<void> {\n const { watch } = await import('chokidar')\n const logger = createLogger()\n\n const ignored = '**/{.git,node_modules}/**'\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"]}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
import {
|
|
1
|
+
import { generate } from './chunk-LA3QWVJI.js';
|
|
2
|
+
import { defineCommand, showUsage } from 'citty';
|
|
3
|
+
import 'execa';
|
|
4
|
+
import c from 'tinyrainbow';
|
|
5
|
+
import { isPromise } from '@kubb/core/utils';
|
|
6
|
+
import { cosmiconfig } from 'cosmiconfig';
|
|
7
|
+
import { createJiti } from 'jiti';
|
|
8
|
+
import { LogMapper, createLogger } from '@kubb/core/logger';
|
|
9
|
+
import path from 'node:path';
|
|
10
|
+
import * as process from 'node:process';
|
|
11
|
+
import { isInputPath, PromiseManager } from '@kubb/core';
|
|
12
12
|
|
|
13
13
|
// src/utils/getPlugins.ts
|
|
14
14
|
function isJSONPlugins(plugins) {
|
|
@@ -56,16 +56,10 @@ async function getConfig(result, args2) {
|
|
|
56
56
|
};
|
|
57
57
|
return JSONConfig;
|
|
58
58
|
}
|
|
59
|
-
|
|
60
|
-
// src/utils/getCosmiConfig.ts
|
|
61
|
-
import { bundleRequire } from "bundle-require";
|
|
62
|
-
import { cosmiconfig } from "cosmiconfig";
|
|
63
59
|
var tsLoader = async (configFile) => {
|
|
64
|
-
const
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
});
|
|
68
|
-
return mod.default;
|
|
60
|
+
const jiti = createJiti(import.meta.url, { jsx: true });
|
|
61
|
+
const mod = await jiti.import(configFile);
|
|
62
|
+
return mod;
|
|
69
63
|
};
|
|
70
64
|
async function getCosmiConfig(moduleName, config) {
|
|
71
65
|
const searchPlaces = [
|
|
@@ -104,33 +98,23 @@ async function getCosmiConfig(moduleName, config) {
|
|
|
104
98
|
}
|
|
105
99
|
return result;
|
|
106
100
|
}
|
|
107
|
-
|
|
108
|
-
// src/utils/watcher.ts
|
|
109
|
-
import c from "tinyrainbow";
|
|
110
|
-
import { createLogger } from "@kubb/core/logger";
|
|
111
101
|
async function startWatcher(path2, cb) {
|
|
112
|
-
const { watch } = await import(
|
|
113
|
-
const ignored = ["**/{.git,node_modules}/**"];
|
|
102
|
+
const { watch } = await import('chokidar');
|
|
114
103
|
const logger = createLogger();
|
|
104
|
+
const ignored = "**/{.git,node_modules}/**";
|
|
115
105
|
const watcher = watch(path2, {
|
|
116
106
|
ignorePermissionErrors: true,
|
|
117
107
|
ignored
|
|
118
108
|
});
|
|
119
109
|
watcher.on("all", (type, file) => {
|
|
120
|
-
logger
|
|
110
|
+
logger?.emit("info", c.yellow(c.bold(`Change detected: ${type} ${file}`)));
|
|
121
111
|
try {
|
|
122
112
|
cb(path2);
|
|
123
113
|
} catch (e) {
|
|
124
114
|
logger?.emit("warning", c.red("Watcher failed"));
|
|
125
115
|
}
|
|
126
116
|
});
|
|
127
|
-
return;
|
|
128
117
|
}
|
|
129
|
-
|
|
130
|
-
// src/commands/generate.ts
|
|
131
|
-
import { PromiseManager, isInputPath } from "@kubb/core";
|
|
132
|
-
import path from "node:path";
|
|
133
|
-
import { createLogger as createLogger2, LogMapper } from "@kubb/core/logger";
|
|
134
118
|
var args = {
|
|
135
119
|
config: {
|
|
136
120
|
type: "string",
|
|
@@ -150,12 +134,6 @@ var args = {
|
|
|
150
134
|
alias: "w",
|
|
151
135
|
default: false
|
|
152
136
|
},
|
|
153
|
-
bun: {
|
|
154
|
-
type: "boolean",
|
|
155
|
-
description: "Run Kubb with Bun",
|
|
156
|
-
alias: "b",
|
|
157
|
-
default: false
|
|
158
|
-
},
|
|
159
137
|
debug: {
|
|
160
138
|
type: "boolean",
|
|
161
139
|
description: "Override logLevel to debug",
|
|
@@ -175,7 +153,8 @@ var command = defineCommand({
|
|
|
175
153
|
description: "[input] Generate files based on a 'kubb.config.ts' file"
|
|
176
154
|
},
|
|
177
155
|
args,
|
|
178
|
-
async run(
|
|
156
|
+
async run(commandContext) {
|
|
157
|
+
const { args: args2 } = commandContext;
|
|
179
158
|
const input = args2._[0];
|
|
180
159
|
if (args2.help) {
|
|
181
160
|
showUsage(command);
|
|
@@ -184,18 +163,13 @@ var command = defineCommand({
|
|
|
184
163
|
if (args2.debug) {
|
|
185
164
|
args2.logLevel = "debug";
|
|
186
165
|
}
|
|
187
|
-
if (args2.bun) {
|
|
188
|
-
const command2 = process.argv.splice(2).filter((item) => item !== "--bun");
|
|
189
|
-
await execa("bkubb", command2, { stdout: process.stdout, stderr: process.stderr });
|
|
190
|
-
return;
|
|
191
|
-
}
|
|
192
166
|
const logLevel = LogMapper[args2.logLevel] || 3;
|
|
193
|
-
const logger =
|
|
167
|
+
const logger = createLogger({
|
|
194
168
|
logLevel
|
|
195
169
|
});
|
|
196
170
|
logger.emit("start", "Loading config");
|
|
197
171
|
const result = await getCosmiConfig("kubb", args2.config);
|
|
198
|
-
logger.emit("success", `Config loaded(${
|
|
172
|
+
logger.emit("success", `Config loaded(${c.dim(path.relative(process.cwd(), result.filepath))})`);
|
|
199
173
|
const config = await getConfig(result, args2);
|
|
200
174
|
if (args2.watch) {
|
|
201
175
|
if (Array.isArray(config)) {
|
|
@@ -203,8 +177,8 @@ var command = defineCommand({
|
|
|
203
177
|
}
|
|
204
178
|
if (isInputPath(config)) {
|
|
205
179
|
return startWatcher([input || config.input.path], async (paths) => {
|
|
206
|
-
await generate({ config, args: args2 });
|
|
207
|
-
logger.emit("start",
|
|
180
|
+
await generate({ config, args: args2, input });
|
|
181
|
+
logger.emit("start", c.yellow(c.bold(`Watching for changes in ${paths.join(" and ")}`)));
|
|
208
182
|
});
|
|
209
183
|
}
|
|
210
184
|
}
|
|
@@ -214,10 +188,21 @@ var command = defineCommand({
|
|
|
214
188
|
return promiseManager.run("seq", promises);
|
|
215
189
|
}
|
|
216
190
|
await generate({ input, config, args: args2 });
|
|
191
|
+
if (globalThis.isDevtoolsEnabled) {
|
|
192
|
+
const restart = await logger.consola?.prompt("Restart(could be used to validate the profiler)?", {
|
|
193
|
+
type: "confirm",
|
|
194
|
+
initial: false
|
|
195
|
+
});
|
|
196
|
+
if (restart) {
|
|
197
|
+
await command.run?.(commandContext);
|
|
198
|
+
} else {
|
|
199
|
+
process.exit(1);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
217
202
|
}
|
|
218
203
|
});
|
|
219
204
|
var generate_default = command;
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
//# sourceMappingURL=generate-
|
|
205
|
+
|
|
206
|
+
export { generate_default as default };
|
|
207
|
+
//# sourceMappingURL=generate-JA5KME2H.js.map
|
|
208
|
+
//# sourceMappingURL=generate-JA5KME2H.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/utils/getPlugins.ts","../src/utils/getConfig.ts","../src/utils/getCosmiConfig.ts","../src/utils/watcher.ts","../src/commands/generate.ts"],"names":["args","path","createLogger","c"],"mappings":"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","file":"generate-JA5KME2H.js","sourcesContent":["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 { 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 { cosmiconfig } from 'cosmiconfig'\nimport { createJiti } from 'jiti'\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 jiti = createJiti(import.meta.url, { jsx: true })\n\n const mod = await jiti.import(configFile)\n\n return 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 { createLogger } from '@kubb/core/logger'\nimport c from 'tinyrainbow'\n\nexport async function startWatcher(path: string[], cb: (path: string[]) => Promise<void>): Promise<void> {\n const { watch } = await import('chokidar')\n const logger = createLogger()\n\n const ignored = '**/{.git,node_modules}/**'\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","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 path from 'node:path'\nimport * as process from 'node:process'\nimport { PromiseManager, isInputPath } from '@kubb/core'\nimport { LogMapper, createLogger } from '@kubb/core/logger'\nimport { generate } from '../generate.ts'\n\ndeclare global {\n var isDevtoolsEnabled: any\n}\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 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(commandContext) {\n const { args } = commandContext\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 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, input })\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 if (globalThis.isDevtoolsEnabled) {\n const restart = await logger.consola?.prompt('Restart(could be used to validate the profiler)?', {\n type: 'confirm',\n initial: false,\n })\n\n if (restart) {\n await command.run?.(commandContext)\n } else {\n process.exit(1)\n }\n }\n },\n})\n\nexport default command\n"]}
|
package/dist/index.cjs
CHANGED
|
@@ -1,21 +1,23 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
|
|
3
|
+
var chunkPAOUPXAG_cjs = require('./chunk-PAOUPXAG.cjs');
|
|
4
|
+
var citty = require('citty');
|
|
5
|
+
var getLatestVersion = require('latest-version');
|
|
6
|
+
var semver = require('semver');
|
|
7
|
+
var consola = require('consola');
|
|
3
8
|
|
|
4
|
-
|
|
9
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
+
|
|
11
|
+
var getLatestVersion__default = /*#__PURE__*/_interopDefault(getLatestVersion);
|
|
12
|
+
var consola__default = /*#__PURE__*/_interopDefault(consola);
|
|
5
13
|
|
|
6
14
|
// src/index.ts
|
|
7
|
-
|
|
8
|
-
var _citty = require('citty');
|
|
9
|
-
var _latestversion = require('latest-version'); var _latestversion2 = _interopRequireDefault(_latestversion);
|
|
10
|
-
var _semver = require('semver');
|
|
11
|
-
var _consola = require('consola'); var _consola2 = _interopRequireDefault(_consola);
|
|
15
|
+
chunkPAOUPXAG_cjs.init_cjs_shims();
|
|
12
16
|
|
|
13
17
|
// package.json
|
|
14
|
-
var version = "3.0.0-
|
|
15
|
-
|
|
16
|
-
// src/index.ts
|
|
18
|
+
var version = "3.0.0-beta.1";
|
|
17
19
|
var name = "kubb";
|
|
18
|
-
var main =
|
|
20
|
+
var main = citty.defineCommand({
|
|
19
21
|
meta: {
|
|
20
22
|
name,
|
|
21
23
|
version,
|
|
@@ -23,9 +25,9 @@ var main = _citty.defineCommand.call(void 0, {
|
|
|
23
25
|
},
|
|
24
26
|
async setup({ rawArgs }) {
|
|
25
27
|
try {
|
|
26
|
-
const latestVersion = await
|
|
27
|
-
if (
|
|
28
|
-
|
|
28
|
+
const latestVersion = await getLatestVersion__default.default("@kubb/cli");
|
|
29
|
+
if (semver.lt(version, latestVersion)) {
|
|
30
|
+
consola__default.default.box({
|
|
29
31
|
title: "Update available for `Kubb` ",
|
|
30
32
|
message: `\`v${version}\` \u2192 \`v${latestVersion}\`
|
|
31
33
|
Run \`npm install -g @kubb/cli\` to update`,
|
|
@@ -39,20 +41,23 @@ Run \`npm install -g @kubb/cli\` to update`,
|
|
|
39
41
|
} catch (_e) {
|
|
40
42
|
}
|
|
41
43
|
if (rawArgs[0] !== "generate") {
|
|
42
|
-
const generateCommand = await
|
|
43
|
-
await
|
|
44
|
+
const generateCommand = await import('./generate-IZ3C56MV.cjs').then((r) => r.default);
|
|
45
|
+
await citty.runCommand(generateCommand, { rawArgs });
|
|
44
46
|
process.exit(0);
|
|
45
47
|
}
|
|
46
48
|
},
|
|
47
49
|
subCommands: {
|
|
48
|
-
generate: () =>
|
|
50
|
+
generate: () => import('./generate-IZ3C56MV.cjs').then((r) => r.default)
|
|
49
51
|
}
|
|
50
52
|
});
|
|
51
53
|
async function run(_argv) {
|
|
52
|
-
await
|
|
54
|
+
await citty.runMain(main);
|
|
53
55
|
}
|
|
54
56
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
57
|
+
Object.defineProperty(exports, "generate", {
|
|
58
|
+
enumerable: true,
|
|
59
|
+
get: function () { return chunkPAOUPXAG_cjs.generate; }
|
|
60
|
+
});
|
|
61
|
+
exports.run = run;
|
|
62
|
+
//# sourceMappingURL=index.cjs.map
|
|
58
63
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../package.json"],"names":["init_cjs_shims","defineCommand","getLatestVersion","lt","consola","runCommand","runMain"],"mappings":";;;;;;;;;;;;;;AAAAA,gCAAA,EAAA,CAAA;;;ACEE,IAAW,OAAA,GAAA,cAAA,CAAA;ADKb,IAAM,IAAO,GAAA,MAAA,CAAA;AAEb,IAAM,OAAOC,mBAAc,CAAA;AAAA,EACzB,IAAM,EAAA;AAAA,IACJ,IAAA;AAAA,IACA,OAAA;AAAA,IACA,WAAa,EAAA,iBAAA;AAAA,GACf;AAAA,EACA,MAAM,KAAA,CAAM,EAAE,OAAA,EAAW,EAAA;AACvB,IAAI,IAAA;AACF,MAAM,MAAA,aAAA,GAAgB,MAAMC,iCAAA,CAAiB,WAAW,CAAA,CAAA;AAExD,MAAI,IAAAC,SAAA,CAAG,OAAS,EAAA,aAAa,CAAG,EAAA;AAC9B,QAAAC,wBAAA,CAAQ,GAAI,CAAA;AAAA,UACV,KAAO,EAAA,8BAAA;AAAA,UACP,OAAS,EAAA,CAAA,GAAA,EAAM,OAAO,CAAA,aAAA,EAAW,aAAa,CAAA;AAAA,0CAAA,CAAA;AAAA,UAE9C,KAAO,EAAA;AAAA,YACL,OAAS,EAAA,CAAA;AAAA,YACT,WAAa,EAAA,QAAA;AAAA,YACb,WAAa,EAAA,SAAA;AAAA,WACf;AAAA,SACD,CAAA,CAAA;AAAA,OACH;AAAA,aACO,EAAI,EAAA;AAAA,KAAC;AAEd,IAAI,IAAA,OAAA,CAAQ,CAAC,CAAA,KAAM,UAAY,EAAA;AAE7B,MAAM,MAAA,eAAA,GAAkB,MAAM,OAAO,yBAAwB,EAAE,IAAK,CAAA,CAAC,CAAM,KAAA,CAAA,CAAE,OAAO,CAAA,CAAA;AAEpF,MAAA,MAAMC,gBAAW,CAAA,eAAA,EAAiB,EAAE,OAAA,EAAS,CAAA,CAAA;AAE7C,MAAA,OAAA,CAAQ,KAAK,CAAC,CAAA,CAAA;AAAA,KAChB;AAAA,GACF;AAAA,EACA,WAAa,EAAA;AAAA,IACX,QAAA,EAAU,MAAM,OAAO,yBAAwB,EAAE,IAAK,CAAA,CAAC,CAAM,KAAA,CAAA,CAAE,OAAO,CAAA;AAAA,GACxE;AACF,CAAC,CAAA,CAAA;AAED,eAAsB,IAAI,KAAiC,EAAA;AACzD,EAAA,MAAMC,cAAQ,IAAI,CAAA,CAAA;AACpB","file":"index.cjs","sourcesContent":["import { defineCommand, runCommand, runMain } from 'citty'\nimport getLatestVersion from 'latest-version'\nimport { lt } from 'semver'\n\nimport { version } from '../package.json'\nimport consola from 'consola'\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-beta.1\",\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 \"exports\": {\n \".\": {\n \"import\": \"./dist/index.js\",\n \"require\": \"./dist/index.cjs\",\n \"default\": \"./dist/index.cjs\"\n }\n },\n \"main\": \"dist/index.cjs\",\n \"module\": \"dist/index.js\",\n \"types\": \"./dist/index.d.ts\",\n \"bin\": {\n \"kubb\": \"bin/kubb.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 \"jiti\": \"^2.1.0\",\n \"chokidar\": \"^4.0.1\",\n \"citty\": \"^0.1.6\",\n \"cli-progress\": \"^3.12.0\",\n \"consola\": \"^3.2.3\",\n \"cosmiconfig\": \"^9.0.0\",\n \"execa\": \"^9.4.0\",\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.10\",\n \"@types/semver\": \"^7.5.8\",\n \"source-map-support\": \"^0.5.21\",\n \"tsup\": \"^8.3.0\",\n \"typescript\": \"^5.6.2\"\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.d.cts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { Config } from '@kubb/core';
|
|
2
2
|
import { ParsedArgs } from 'citty';
|
|
3
3
|
|
|
4
|
+
declare global {
|
|
5
|
+
var isDevtoolsEnabled: any;
|
|
6
|
+
}
|
|
4
7
|
declare const args: {
|
|
5
8
|
readonly config: {
|
|
6
9
|
readonly type: "string";
|
|
@@ -20,12 +23,6 @@ declare const args: {
|
|
|
20
23
|
readonly alias: "w";
|
|
21
24
|
readonly default: false;
|
|
22
25
|
};
|
|
23
|
-
readonly bun: {
|
|
24
|
-
readonly type: "boolean";
|
|
25
|
-
readonly description: "Run Kubb with Bun";
|
|
26
|
-
readonly alias: "b";
|
|
27
|
-
readonly default: false;
|
|
28
|
-
};
|
|
29
26
|
readonly debug: {
|
|
30
27
|
readonly type: "boolean";
|
|
31
28
|
readonly description: "Override logLevel to debug";
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { Config } from '@kubb/core';
|
|
2
2
|
import { ParsedArgs } from 'citty';
|
|
3
3
|
|
|
4
|
+
declare global {
|
|
5
|
+
var isDevtoolsEnabled: any;
|
|
6
|
+
}
|
|
4
7
|
declare const args: {
|
|
5
8
|
readonly config: {
|
|
6
9
|
readonly type: "string";
|
|
@@ -20,12 +23,6 @@ declare const args: {
|
|
|
20
23
|
readonly alias: "w";
|
|
21
24
|
readonly default: false;
|
|
22
25
|
};
|
|
23
|
-
readonly bun: {
|
|
24
|
-
readonly type: "boolean";
|
|
25
|
-
readonly description: "Run Kubb with Bun";
|
|
26
|
-
readonly alias: "b";
|
|
27
|
-
readonly default: false;
|
|
28
|
-
};
|
|
29
26
|
readonly debug: {
|
|
30
27
|
readonly type: "boolean";
|
|
31
28
|
readonly description: "Override logLevel to debug";
|