@kubb/core 5.0.0-alpha.14 → 5.0.0-alpha.16
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/dist/{PluginDriver-By5lhDKP.d.ts → PluginDriver-CNKhDf-w.d.ts} +36 -3
- package/dist/hooks.d.ts +1 -1
- package/dist/index.cjs +68 -12
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +57 -3
- package/dist/index.js +66 -13
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/src/definePreset.ts +23 -0
- package/src/definePresets.ts +16 -0
- package/src/index.ts +3 -0
- package/src/types.ts +37 -1
- package/src/utils/getPreset.ts +34 -0
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as __name } from "./chunk--u3MIqq1.js";
|
|
2
|
-
import { A as
|
|
2
|
+
import { A as ResolveOptionsContext, B as ReactGeneratorV2, C as PluginParameter, D as Printer, E as Presets, F as UserPlugin, G as formatters, H as KubbEvents, I as UserPluginWithLifeCycle, J as AsyncEventEmitter, K as linters, L as UserResolver, M as Resolver, N as UserConfig, O as PrinterFactoryOptions, P as UserLogger, R as CoreGeneratorV2, S as PluginLifecycleHooks, T as Preset, U as Storage, V as defineGenerator, W as createStorage, _ as Output, a as AdapterFactoryOptions, b as PluginFactoryOptions, c as CompatibilityPreset, d as Group, f as InputData, g as LoggerOptions, h as LoggerContext, i as Adapter, j as ResolvePathParams, k as ResolveNameParams, l as Config, m as Logger, n as PluginDriver, o as AdapterSource, p as InputPath, q as logLevel, r as getMode, s as BarrelType, u as DevtoolsOptions, v as Plugin, w as PluginWithLifeCycle, x as PluginLifecycle, y as PluginContext, z as Generator } from "./PluginDriver-CNKhDf-w.js";
|
|
3
3
|
import { definePrinter } from "@kubb/ast";
|
|
4
|
-
import { Node, OperationNode, SchemaNode } from "@kubb/ast/types";
|
|
4
|
+
import { Node, OperationNode, SchemaNode, Visitor } from "@kubb/ast/types";
|
|
5
5
|
import { Fabric, KubbFile } from "@kubb/fabric-core/types";
|
|
6
6
|
import { Fabric as Fabric$1 } from "@kubb/react-fabric/types";
|
|
7
7
|
|
|
@@ -133,6 +133,45 @@ declare function createPlugin<T extends PluginFactoryOptions = PluginFactoryOpti
|
|
|
133
133
|
*/
|
|
134
134
|
declare function defineLogger<Options extends LoggerOptions = LoggerOptions>(logger: UserLogger<Options>): Logger<Options>;
|
|
135
135
|
//#endregion
|
|
136
|
+
//#region src/definePreset.d.ts
|
|
137
|
+
/**
|
|
138
|
+
* Creates a typed preset object that bundles a name, resolvers, and optional
|
|
139
|
+
* transformers — the building block for composable plugin presets.
|
|
140
|
+
*
|
|
141
|
+
* @example
|
|
142
|
+
* import { definePreset } from '@kubb/core'
|
|
143
|
+
* import { resolverTsLegacy } from '@kubb/plugin-ts'
|
|
144
|
+
*
|
|
145
|
+
* export const myPreset = definePreset('myPreset', { resolvers: [resolverTsLegacy] })
|
|
146
|
+
*
|
|
147
|
+
* @example
|
|
148
|
+
* // With custom transformers
|
|
149
|
+
* export const myPreset = definePreset('myPreset', { resolvers: [resolverTsLegacy], transformers: [myTransformer] })
|
|
150
|
+
*/
|
|
151
|
+
declare function definePreset<TResolver extends Resolver = Resolver, TName extends string = string>(name: TName, {
|
|
152
|
+
resolvers,
|
|
153
|
+
transformers
|
|
154
|
+
}: {
|
|
155
|
+
resolvers: Array<TResolver>;
|
|
156
|
+
transformers?: Array<Visitor>;
|
|
157
|
+
}): Preset<TResolver> & {
|
|
158
|
+
name: TName;
|
|
159
|
+
};
|
|
160
|
+
//#endregion
|
|
161
|
+
//#region src/definePresets.d.ts
|
|
162
|
+
/**
|
|
163
|
+
* Creates a typed presets registry object — a named collection of {@link Preset} entries.
|
|
164
|
+
*
|
|
165
|
+
* @example
|
|
166
|
+
* import { definePreset, definePresets } from '@kubb/core'
|
|
167
|
+
* import { resolverTsLegacy } from '@kubb/plugin-ts'
|
|
168
|
+
*
|
|
169
|
+
* export const myPresets = definePresets({
|
|
170
|
+
* kubbV4: definePreset('kubbV4', { resolvers: [resolverTsLegacy] }),
|
|
171
|
+
* })
|
|
172
|
+
*/
|
|
173
|
+
declare function definePresets<TResolver extends Resolver = Resolver>(presets: Presets<TResolver>): Presets<TResolver>;
|
|
174
|
+
//#endregion
|
|
136
175
|
//#region src/defineResolver.d.ts
|
|
137
176
|
/**
|
|
138
177
|
* Builder type for the plugin-specific resolver fields.
|
|
@@ -364,6 +403,21 @@ declare function getBarrelFiles(files: Array<KubbFile.ResolvedFile>, {
|
|
|
364
403
|
*/
|
|
365
404
|
declare function getConfigs(config: ConfigInput | UserConfig, args: CLIOptions): Promise<Array<Config>>;
|
|
366
405
|
//#endregion
|
|
406
|
+
//#region src/utils/getPreset.d.ts
|
|
407
|
+
type GetPresetParams<TResolver extends Resolver> = {
|
|
408
|
+
preset: CompatibilityPreset;
|
|
409
|
+
presets: Presets<TResolver>;
|
|
410
|
+
resolvers: Array<TResolver>;
|
|
411
|
+
transformers?: Array<Visitor>;
|
|
412
|
+
};
|
|
413
|
+
type GetPresetResult<TResolver extends Resolver> = {
|
|
414
|
+
baseResolver: TResolver;
|
|
415
|
+
resolver: TResolver;
|
|
416
|
+
transformers: Array<Visitor>;
|
|
417
|
+
preset: Preset<TResolver> | undefined;
|
|
418
|
+
};
|
|
419
|
+
declare function getPreset<TResolver extends Resolver = Resolver>(params: GetPresetParams<TResolver>): GetPresetResult<TResolver>;
|
|
420
|
+
//#endregion
|
|
367
421
|
//#region src/utils/linters.d.ts
|
|
368
422
|
type Linter = keyof typeof linters;
|
|
369
423
|
declare function detectLinter(): Promise<Linter | undefined>;
|
|
@@ -379,5 +433,5 @@ type DependencyName = string;
|
|
|
379
433
|
type DependencyVersion = string;
|
|
380
434
|
declare function satisfiesDependency(dependency: DependencyName | RegExp, version: DependencyVersion, cwd?: string): boolean;
|
|
381
435
|
//#endregion
|
|
382
|
-
export { Adapter, AdapterFactoryOptions, AdapterSource, BarrelType, type CLIOptions, Config, type ConfigInput, CoreGeneratorV2, DevtoolsOptions, type FileMetaBase, FunctionParams, type FunctionParamsAST, Generator, Group, InputData, InputPath, KubbEvents, Logger, LoggerContext, LoggerOptions, Output, Plugin, PluginContext, PluginDriver, PluginFactoryOptions, PluginLifecycle, PluginLifecycleHooks, PluginParameter, PluginWithLifeCycle, Printer, PrinterFactoryOptions, ReactGeneratorV2, ResolveNameParams, ResolveOptionsContext, ResolvePathParams, Resolver, Storage, UserConfig, UserLogger, UserPlugin, UserPluginWithLifeCycle, UserResolver, build, build as default, createAdapter, createPlugin, createStorage, defaultResolveOptions, defineConfig, defineGenerator, defineLogger, definePrinter, defineResolver, detectFormatter, detectLinter, formatters, fsStorage, getBarrelFiles, getConfigs, getMode, isInputPath, linters, logLevel, memoryStorage, mergeResolvers, renderOperation, renderOperations, renderSchema, safeBuild, satisfiesDependency, setup };
|
|
436
|
+
export { Adapter, AdapterFactoryOptions, AdapterSource, BarrelType, type CLIOptions, CompatibilityPreset, Config, type ConfigInput, CoreGeneratorV2, DevtoolsOptions, type FileMetaBase, FunctionParams, type FunctionParamsAST, Generator, Group, InputData, InputPath, KubbEvents, Logger, LoggerContext, LoggerOptions, Output, Plugin, PluginContext, PluginDriver, PluginFactoryOptions, PluginLifecycle, PluginLifecycleHooks, PluginParameter, PluginWithLifeCycle, Preset, Presets, Printer, PrinterFactoryOptions, ReactGeneratorV2, ResolveNameParams, ResolveOptionsContext, ResolvePathParams, Resolver, Storage, UserConfig, UserLogger, UserPlugin, UserPluginWithLifeCycle, UserResolver, build, build as default, createAdapter, createPlugin, createStorage, defaultResolveOptions, defineConfig, defineGenerator, defineLogger, definePreset, definePresets, definePrinter, defineResolver, detectFormatter, detectLinter, formatters, fsStorage, getBarrelFiles, getConfigs, getMode, getPreset, isInputPath, linters, logLevel, memoryStorage, mergeResolvers, renderOperation, renderOperations, renderSchema, safeBuild, satisfiesDependency, setup };
|
|
383
437
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
CHANGED
|
@@ -1441,7 +1441,7 @@ const fsStorage = createStorage(() => ({
|
|
|
1441
1441
|
}));
|
|
1442
1442
|
//#endregion
|
|
1443
1443
|
//#region package.json
|
|
1444
|
-
var version$1 = "5.0.0-alpha.
|
|
1444
|
+
var version$1 = "5.0.0-alpha.16";
|
|
1445
1445
|
//#endregion
|
|
1446
1446
|
//#region src/utils/diagnostics.ts
|
|
1447
1447
|
/**
|
|
@@ -1846,6 +1846,45 @@ function defineLogger(logger) {
|
|
|
1846
1846
|
return logger;
|
|
1847
1847
|
}
|
|
1848
1848
|
//#endregion
|
|
1849
|
+
//#region src/definePreset.ts
|
|
1850
|
+
/**
|
|
1851
|
+
* Creates a typed preset object that bundles a name, resolvers, and optional
|
|
1852
|
+
* transformers — the building block for composable plugin presets.
|
|
1853
|
+
*
|
|
1854
|
+
* @example
|
|
1855
|
+
* import { definePreset } from '@kubb/core'
|
|
1856
|
+
* import { resolverTsLegacy } from '@kubb/plugin-ts'
|
|
1857
|
+
*
|
|
1858
|
+
* export const myPreset = definePreset('myPreset', { resolvers: [resolverTsLegacy] })
|
|
1859
|
+
*
|
|
1860
|
+
* @example
|
|
1861
|
+
* // With custom transformers
|
|
1862
|
+
* export const myPreset = definePreset('myPreset', { resolvers: [resolverTsLegacy], transformers: [myTransformer] })
|
|
1863
|
+
*/
|
|
1864
|
+
function definePreset(name, { resolvers, transformers }) {
|
|
1865
|
+
return {
|
|
1866
|
+
name,
|
|
1867
|
+
resolvers,
|
|
1868
|
+
transformers
|
|
1869
|
+
};
|
|
1870
|
+
}
|
|
1871
|
+
//#endregion
|
|
1872
|
+
//#region src/definePresets.ts
|
|
1873
|
+
/**
|
|
1874
|
+
* Creates a typed presets registry object — a named collection of {@link Preset} entries.
|
|
1875
|
+
*
|
|
1876
|
+
* @example
|
|
1877
|
+
* import { definePreset, definePresets } from '@kubb/core'
|
|
1878
|
+
* import { resolverTsLegacy } from '@kubb/plugin-ts'
|
|
1879
|
+
*
|
|
1880
|
+
* export const myPresets = definePresets({
|
|
1881
|
+
* kubbV4: definePreset('kubbV4', { resolvers: [resolverTsLegacy] }),
|
|
1882
|
+
* })
|
|
1883
|
+
*/
|
|
1884
|
+
function definePresets(presets) {
|
|
1885
|
+
return presets;
|
|
1886
|
+
}
|
|
1887
|
+
//#endregion
|
|
1849
1888
|
//#region src/defineResolver.ts
|
|
1850
1889
|
/**
|
|
1851
1890
|
* Checks if an operation matches a pattern for a given filter type (`tag`, `operationId`, `path`, `method`).
|
|
@@ -2369,6 +2408,31 @@ async function getConfigs(config, args) {
|
|
|
2369
2408
|
return (Array.isArray(resolved) ? resolved : [resolved]).map((item) => ({ ...item }));
|
|
2370
2409
|
}
|
|
2371
2410
|
//#endregion
|
|
2411
|
+
//#region src/utils/mergeResolvers.ts
|
|
2412
|
+
/**
|
|
2413
|
+
* Merges an array of resolvers into a single resolver. Later entries override earlier ones (last wins).
|
|
2414
|
+
*/
|
|
2415
|
+
function mergeResolvers(...resolvers) {
|
|
2416
|
+
return resolvers.reduce((acc, curr) => ({
|
|
2417
|
+
...acc,
|
|
2418
|
+
...curr
|
|
2419
|
+
}), resolvers[0]);
|
|
2420
|
+
}
|
|
2421
|
+
//#endregion
|
|
2422
|
+
//#region src/utils/getPreset.ts
|
|
2423
|
+
function getPreset(params) {
|
|
2424
|
+
const { preset: presetName, presets, resolvers, transformers: userTransformers } = params;
|
|
2425
|
+
const [defaultResolver, ...userResolvers] = resolvers;
|
|
2426
|
+
const preset = presets[presetName];
|
|
2427
|
+
const baseResolver = mergeResolvers(defaultResolver, ...preset?.resolvers ?? []);
|
|
2428
|
+
return {
|
|
2429
|
+
baseResolver,
|
|
2430
|
+
resolver: mergeResolvers(baseResolver, ...userResolvers ?? []),
|
|
2431
|
+
transformers: [...preset?.transformers ?? [], ...userTransformers ?? []],
|
|
2432
|
+
preset
|
|
2433
|
+
};
|
|
2434
|
+
}
|
|
2435
|
+
//#endregion
|
|
2372
2436
|
//#region src/utils/linters.ts
|
|
2373
2437
|
async function isLinterAvailable(linter) {
|
|
2374
2438
|
try {
|
|
@@ -2387,17 +2451,6 @@ async function detectLinter() {
|
|
|
2387
2451
|
for (const linter of linterNames) if (await isLinterAvailable(linter)) return linter;
|
|
2388
2452
|
}
|
|
2389
2453
|
//#endregion
|
|
2390
|
-
//#region src/utils/mergeResolvers.ts
|
|
2391
|
-
/**
|
|
2392
|
-
* Merges an array of resolvers into a single resolver. Later entries override earlier ones (last wins).
|
|
2393
|
-
*/
|
|
2394
|
-
function mergeResolvers(...resolvers) {
|
|
2395
|
-
return resolvers.reduce((acc, curr) => ({
|
|
2396
|
-
...acc,
|
|
2397
|
-
...curr
|
|
2398
|
-
}), resolvers[0]);
|
|
2399
|
-
}
|
|
2400
|
-
//#endregion
|
|
2401
2454
|
//#region src/utils/packageJSON.ts
|
|
2402
2455
|
function getPackageJSONSync(cwd) {
|
|
2403
2456
|
const pkgPath = pkg.up({ cwd });
|
|
@@ -2426,6 +2479,6 @@ function satisfiesDependency(dependency, version, cwd) {
|
|
|
2426
2479
|
return satisfies(semVer, version);
|
|
2427
2480
|
}
|
|
2428
2481
|
//#endregion
|
|
2429
|
-
export { FunctionParams, PluginDriver, build, build as default, createAdapter, createPlugin, createStorage, defaultResolveOptions, defineConfig, defineGenerator, defineLogger, definePrinter, defineResolver, detectFormatter, detectLinter, formatters, fsStorage, getBarrelFiles, getConfigs, getMode, isInputPath, linters, logLevel, memoryStorage, mergeResolvers, renderOperation, renderOperations, renderSchema, safeBuild, satisfiesDependency, setup };
|
|
2482
|
+
export { FunctionParams, PluginDriver, build, build as default, createAdapter, createPlugin, createStorage, defaultResolveOptions, defineConfig, defineGenerator, defineLogger, definePreset, definePresets, definePrinter, defineResolver, detectFormatter, detectLinter, formatters, fsStorage, getBarrelFiles, getConfigs, getMode, getPreset, isInputPath, linters, logLevel, memoryStorage, mergeResolvers, renderOperation, renderOperations, renderSchema, safeBuild, satisfiesDependency, setup };
|
|
2430
2483
|
|
|
2431
2484
|
//# sourceMappingURL=index.js.map
|