@kubb/core 5.0.0-alpha.21 → 5.0.0-alpha.23
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-CEQPafXV.d.ts → PluginDriver-P920mak9.d.ts} +135 -54
- package/dist/hooks.cjs +3 -0
- package/dist/hooks.cjs.map +1 -1
- package/dist/hooks.d.ts +6 -3
- package/dist/hooks.js +3 -0
- package/dist/hooks.js.map +1 -1
- package/dist/index.cjs +135 -228
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +26 -69
- package/dist/index.js +136 -227
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/src/Kubb.ts +5 -5
- package/src/PluginDriver.ts +110 -154
- package/src/build.ts +11 -11
- package/src/constants.ts +2 -12
- package/src/defineGenerator.ts +29 -7
- package/src/defineResolver.ts +13 -19
- package/src/hooks/useDriver.ts +3 -0
- package/src/hooks/useMode.ts +3 -3
- package/src/index.ts +0 -2
- package/src/renderNode.tsx +9 -6
- package/src/types.ts +67 -35
- package/src/utils/TreeNode.ts +22 -7
- package/src/utils/getBarrelFiles.ts +9 -6
- package/src/utils/getConfigs.ts +1 -1
- package/src/utils/getPreset.ts +3 -3
- package/src/utils/mergeResolvers.ts +9 -1
- package/src/defineBuilder.ts +0 -26
- package/src/definePreset.ts +0 -27
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as __name } from "./chunk--u3MIqq1.js";
|
|
2
|
-
import { $ as formatters, A as
|
|
2
|
+
import { $ as formatters, A as PrinterFactoryOptions, B as UserConfig, C as PluginLifecycle, D as Preset, E as PluginWithLifeCycle, F as ResolvePathParams, G as UserResolver, H as UserLogger, I as Resolver, J as Generator, K as KubbEvents, L as ResolverContext, M as ResolveNameParams, N as ResolveOptionsContext, O as Presets, P as ResolvePathOptions, Q as createStorage, R as ResolverFileParams, S as PluginFactoryOptions, T as PluginParameter, U as UserPlugin, V as UserGroup, W as UserPluginWithLifeCycle, X as defineGenerator, Y as ReactGeneratorV2, Z as Storage, _ as LoggerOptions, a as AdapterSource, b as Plugin, c as Config, d as Group, et as linters, f as Include, g as LoggerContext, h as Logger, i as AdapterFactoryOptions, j as ResolveBannerContext, k as Printer, l as DevtoolsOptions, m as InputPath, n as getMode, nt as PossiblePromise, o as BarrelType, p as InputData, q as CoreGeneratorV2, r as Adapter, rt as AsyncEventEmitter, s as CompatibilityPreset, t as PluginDriver, tt as logLevel, u as Exclude, v as Output, w as PluginLifecycleHooks, x as PluginContext, y as Override, z as ResolverPathParams } from "./PluginDriver-P920mak9.js";
|
|
3
3
|
import { definePrinter } from "@kubb/ast";
|
|
4
4
|
import { Node, OperationNode, RootNode, SchemaNode, Visitor } from "@kubb/ast/types";
|
|
5
|
-
import { Fabric,
|
|
5
|
+
import { Fabric, FabricFile } from "@kubb/fabric-core/types";
|
|
6
6
|
import { Fabric as Fabric$1 } from "@kubb/react-fabric/types";
|
|
7
7
|
|
|
8
8
|
//#region ../../internals/utils/src/urlPath.d.ts
|
|
@@ -158,7 +158,7 @@ type BuildOutput = {
|
|
|
158
158
|
error: Error;
|
|
159
159
|
}>;
|
|
160
160
|
fabric: Fabric;
|
|
161
|
-
files: Array<
|
|
161
|
+
files: Array<FabricFile.ResolvedFile>;
|
|
162
162
|
driver: PluginDriver;
|
|
163
163
|
/**
|
|
164
164
|
* Elapsed time in milliseconds for each plugin, keyed by plugin name.
|
|
@@ -168,7 +168,7 @@ type BuildOutput = {
|
|
|
168
168
|
/**
|
|
169
169
|
* Raw generated source, keyed by absolute file path.
|
|
170
170
|
*/
|
|
171
|
-
sources: Map<
|
|
171
|
+
sources: Map<FabricFile.Path, string>;
|
|
172
172
|
};
|
|
173
173
|
/**
|
|
174
174
|
* Intermediate result returned by {@link setup} and accepted by {@link safeBuild}.
|
|
@@ -177,7 +177,7 @@ type SetupResult = {
|
|
|
177
177
|
events: AsyncEventEmitter<KubbEvents>;
|
|
178
178
|
fabric: Fabric;
|
|
179
179
|
driver: PluginDriver;
|
|
180
|
-
sources: Map<
|
|
180
|
+
sources: Map<FabricFile.Path, string>;
|
|
181
181
|
};
|
|
182
182
|
/**
|
|
183
183
|
* Initializes all Kubb infrastructure for a build without executing any plugins.
|
|
@@ -303,29 +303,6 @@ type PluginBuilder<T extends PluginFactoryOptions = PluginFactoryOptions> = (opt
|
|
|
303
303
|
*/
|
|
304
304
|
declare function createPlugin<T extends PluginFactoryOptions = PluginFactoryOptions>(build: PluginBuilder<T>): (options?: T['options']) => UserPluginWithLifeCycle<T>;
|
|
305
305
|
//#endregion
|
|
306
|
-
//#region src/defineBuilder.d.ts
|
|
307
|
-
/**
|
|
308
|
-
* Builder type for the plugin-specific builder fields.
|
|
309
|
-
* `name` is required; all other methods are defined by the concrete plugin builder type.
|
|
310
|
-
*/
|
|
311
|
-
type BuilderBuilder<T extends PluginFactoryOptions> = () => T['builder'] & ThisType<T['builder']>;
|
|
312
|
-
/**
|
|
313
|
-
* Defines a builder for a plugin — a named collection of schema-building helpers that
|
|
314
|
-
* can be exported alongside the plugin and imported by other plugins or generators.
|
|
315
|
-
*
|
|
316
|
-
* @example
|
|
317
|
-
* export const builder = defineBuilder<PluginTs>(() => ({
|
|
318
|
-
* name: 'default',
|
|
319
|
-
* buildParamsSchema({ params, node, resolver }) {
|
|
320
|
-
* return createSchema({ type: 'object', properties: [] })
|
|
321
|
-
* },
|
|
322
|
-
* buildDataSchemaNode({ node, resolver }) {
|
|
323
|
-
* return createSchema({ type: 'object', properties: [] })
|
|
324
|
-
* },
|
|
325
|
-
* }))
|
|
326
|
-
*/
|
|
327
|
-
declare function defineBuilder<T extends PluginFactoryOptions>(build: BuilderBuilder<T>): T['builder'];
|
|
328
|
-
//#endregion
|
|
329
306
|
//#region src/defineLogger.d.ts
|
|
330
307
|
/**
|
|
331
308
|
* Wraps a logger definition into a typed {@link Logger}.
|
|
@@ -341,37 +318,6 @@ declare function defineBuilder<T extends PluginFactoryOptions>(build: BuilderBui
|
|
|
341
318
|
*/
|
|
342
319
|
declare function defineLogger<Options extends LoggerOptions = LoggerOptions>(logger: UserLogger<Options>): Logger<Options>;
|
|
343
320
|
//#endregion
|
|
344
|
-
//#region src/definePreset.d.ts
|
|
345
|
-
/**
|
|
346
|
-
* Creates a typed preset object that bundles a name, resolvers, optional
|
|
347
|
-
* transformers, and optional generators — the building block for composable plugin presets.
|
|
348
|
-
*
|
|
349
|
-
* @example
|
|
350
|
-
* import { definePreset } from '@kubb/core'
|
|
351
|
-
* import { resolverTsLegacy } from '@kubb/plugin-ts'
|
|
352
|
-
*
|
|
353
|
-
* export const myPreset = definePreset('myPreset', { resolvers: [resolverTsLegacy] })
|
|
354
|
-
*
|
|
355
|
-
* @example
|
|
356
|
-
* // With custom transformers
|
|
357
|
-
* export const myPreset = definePreset('myPreset', { resolvers: [resolverTsLegacy], transformers: [myTransformer] })
|
|
358
|
-
*
|
|
359
|
-
* @example
|
|
360
|
-
* // With generators
|
|
361
|
-
* export const myPreset = definePreset('myPreset', { resolvers: [resolverTsLegacy], generators: [typeGeneratorLegacy] })
|
|
362
|
-
*/
|
|
363
|
-
declare function definePreset<TResolver extends Resolver = Resolver, TName extends string = string>(name: TName, {
|
|
364
|
-
resolvers,
|
|
365
|
-
transformers,
|
|
366
|
-
generators
|
|
367
|
-
}: {
|
|
368
|
-
resolvers: Array<TResolver>;
|
|
369
|
-
transformers?: Array<Visitor>;
|
|
370
|
-
generators?: Array<Generator<any>>;
|
|
371
|
-
}): Preset<TResolver> & {
|
|
372
|
-
name: TName;
|
|
373
|
-
};
|
|
374
|
-
//#endregion
|
|
375
321
|
//#region src/definePresets.d.ts
|
|
376
322
|
/**
|
|
377
323
|
* Creates a typed presets registry object — a named collection of {@link Preset} entries.
|
|
@@ -479,11 +425,11 @@ declare function defaultResolvePath({
|
|
|
479
425
|
root,
|
|
480
426
|
output,
|
|
481
427
|
group
|
|
482
|
-
}: ResolverContext):
|
|
428
|
+
}: ResolverContext): FabricFile.Path;
|
|
483
429
|
/**
|
|
484
430
|
* Default file resolver used by `defineResolver`.
|
|
485
431
|
*
|
|
486
|
-
* Resolves a `
|
|
432
|
+
* Resolves a `FabricFile.File` by combining name resolution (`resolver.default`) with
|
|
487
433
|
* path resolution (`resolver.resolvePath`). The resolved file always has empty
|
|
488
434
|
* `sources`, `imports`, and `exports` arrays — consumers populate those separately.
|
|
489
435
|
*
|
|
@@ -512,7 +458,7 @@ declare function defaultResolveFile(this: Resolver, {
|
|
|
512
458
|
extname,
|
|
513
459
|
tag,
|
|
514
460
|
path: groupPath
|
|
515
|
-
}: ResolverFileParams, context: ResolverContext):
|
|
461
|
+
}: ResolverFileParams, context: ResolverContext): FabricFile.File;
|
|
516
462
|
/**
|
|
517
463
|
* Generates the default "Generated by Kubb" banner from config and optional node metadata.
|
|
518
464
|
*/
|
|
@@ -589,7 +535,7 @@ declare function defaultResolveFooter(node: RootNode | undefined, {
|
|
|
589
535
|
* - `default` — name casing strategy (camelCase / PascalCase)
|
|
590
536
|
* - `resolveOptions` — include/exclude/override filtering
|
|
591
537
|
* - `resolvePath` — output path computation
|
|
592
|
-
* - `resolveFile` — full `
|
|
538
|
+
* - `resolveFile` — full `FabricFile.File` construction
|
|
593
539
|
*
|
|
594
540
|
* Methods in the builder have access to `this` (the full resolver object), so they
|
|
595
541
|
* can call other resolver methods without circular imports.
|
|
@@ -638,6 +584,7 @@ type BuildOperationsV2Options<TOptions extends PluginFactoryOptions> = {
|
|
|
638
584
|
adapter: Adapter;
|
|
639
585
|
driver: PluginDriver;
|
|
640
586
|
options: TOptions['resolvedOptions'];
|
|
587
|
+
resolver: TOptions['resolver'];
|
|
641
588
|
};
|
|
642
589
|
/**
|
|
643
590
|
* Renders a React component for a list of operation nodes (V2 generators).
|
|
@@ -651,6 +598,7 @@ type BuildOperationV2Options<TOptions extends PluginFactoryOptions> = {
|
|
|
651
598
|
adapter: Adapter;
|
|
652
599
|
driver: PluginDriver;
|
|
653
600
|
options: TOptions['resolvedOptions'];
|
|
601
|
+
resolver: TOptions['resolver'];
|
|
654
602
|
};
|
|
655
603
|
/**
|
|
656
604
|
* Renders a React component for a single operation node (V2 generators).
|
|
@@ -664,6 +612,7 @@ type BuildSchemaV2Options<TOptions extends PluginFactoryOptions> = {
|
|
|
664
612
|
adapter: Adapter;
|
|
665
613
|
driver: PluginDriver;
|
|
666
614
|
options: TOptions['resolvedOptions'];
|
|
615
|
+
resolver: TOptions['resolver'];
|
|
667
616
|
};
|
|
668
617
|
/**
|
|
669
618
|
* Renders a React component for a single schema node (V2 generators).
|
|
@@ -808,12 +757,12 @@ type AddIndexesProps = {
|
|
|
808
757
|
* - When `type` is `'all'`, strips named exports so every re-export becomes a wildcard (`export * from`).
|
|
809
758
|
* - Attaches `meta` to each barrel file for downstream plugin identification.
|
|
810
759
|
*/
|
|
811
|
-
declare function getBarrelFiles(files: Array<
|
|
760
|
+
declare function getBarrelFiles(files: Array<FabricFile.ResolvedFile>, {
|
|
812
761
|
type,
|
|
813
762
|
meta,
|
|
814
763
|
root,
|
|
815
764
|
output
|
|
816
|
-
}: AddIndexesProps): Promise<Array<
|
|
765
|
+
}: AddIndexesProps): Promise<Array<FabricFile.File>>;
|
|
817
766
|
//#endregion
|
|
818
767
|
//#region src/utils/getConfigs.d.ts
|
|
819
768
|
/**
|
|
@@ -829,11 +778,11 @@ declare function getConfigs(config: ConfigInput | UserConfig, args: CLIOptions):
|
|
|
829
778
|
type GetPresetParams<TResolver extends Resolver> = {
|
|
830
779
|
preset: CompatibilityPreset;
|
|
831
780
|
presets: Presets<TResolver>;
|
|
832
|
-
resolvers
|
|
781
|
+
resolvers?: Array<TResolver>;
|
|
833
782
|
/**
|
|
834
783
|
* User-supplied generators to append after the preset's generators.
|
|
835
784
|
*/
|
|
836
|
-
generators
|
|
785
|
+
generators?: Array<Generator<any>>;
|
|
837
786
|
transformers?: Array<Visitor>;
|
|
838
787
|
};
|
|
839
788
|
type GetPresetResult<TResolver extends Resolver> = {
|
|
@@ -872,7 +821,15 @@ declare function detectLinter(): Promise<Linter | null>;
|
|
|
872
821
|
//#endregion
|
|
873
822
|
//#region src/utils/mergeResolvers.d.ts
|
|
874
823
|
/**
|
|
875
|
-
* Merges an
|
|
824
|
+
* Merges an ordered list of resolvers into a single resolver by shallow-merging each entry left to right.
|
|
825
|
+
*
|
|
826
|
+
* Later entries win when keys conflict, so the last resolver in the list takes highest precedence.
|
|
827
|
+
*
|
|
828
|
+
* @example
|
|
829
|
+
* ```ts
|
|
830
|
+
* const resolver = mergeResolvers(resolverTs, resolverTsLegacy)
|
|
831
|
+
* // resolverTsLegacy methods override resolverTs where they overlap
|
|
832
|
+
* ```
|
|
876
833
|
*/
|
|
877
834
|
declare function mergeResolvers<T extends Resolver>(...resolvers: Array<T>): T;
|
|
878
835
|
//#endregion
|
|
@@ -896,5 +853,5 @@ type DependencyVersion = string;
|
|
|
896
853
|
*/
|
|
897
854
|
declare function satisfiesDependency(dependency: DependencyName | RegExp, version: DependencyVersion, cwd?: string): boolean;
|
|
898
855
|
//#endregion
|
|
899
|
-
export { Adapter, AdapterFactoryOptions, AdapterSource, AsyncEventEmitter, BarrelType,
|
|
856
|
+
export { Adapter, AdapterFactoryOptions, AdapterSource, AsyncEventEmitter, BarrelType, type CLIOptions, CompatibilityPreset, Config, type ConfigInput, CoreGeneratorV2, DevtoolsOptions, Exclude, type FileMetaBase, FunctionParams, type FunctionParamsAST, Generator, Group, Include, InputData, InputPath, KubbEvents, Logger, LoggerContext, LoggerOptions, Output, Override, Plugin, PluginContext, PluginDriver, PluginFactoryOptions, PluginLifecycle, PluginLifecycleHooks, PluginParameter, PluginWithLifeCycle, Preset, Presets, Printer, PrinterFactoryOptions, ReactGeneratorV2, ResolveBannerContext, ResolveNameParams, ResolveOptionsContext, ResolvePathOptions, ResolvePathParams, Resolver, ResolverContext, ResolverFileParams, ResolverPathParams, Storage, URLPath, UserConfig, UserGroup, UserLogger, UserPlugin, UserPluginWithLifeCycle, UserResolver, build, build as default, buildDefaultBanner, createAdapter, createPlugin, createStorage, defaultResolveBanner, defaultResolveFile, defaultResolveFooter, defaultResolveOptions, defaultResolvePath, defineConfig, defineGenerator, defineLogger, definePresets, definePrinter, defineResolver, detectFormatter, detectLinter, formatters, fsStorage, getBarrelFiles, getConfigs, getMode, getPreset, isInputPath, linters, logLevel, memoryStorage, mergeResolvers, renderOperation, renderOperations, renderSchema, safeBuild, satisfiesDependency, setup };
|
|
900
857
|
//# sourceMappingURL=index.d.ts.map
|