@kubb/core 5.0.0-beta.94 → 5.0.0-beta.95
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/index.cjs +33 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +5 -10
- package/dist/index.js +34 -6
- package/dist/index.js.map +1 -1
- package/dist/mocks.cjs +0 -2
- package/dist/mocks.cjs.map +1 -1
- package/dist/mocks.d.ts +1 -4
- package/dist/mocks.js +0 -2
- package/dist/mocks.js.map +1 -1
- package/dist/{types-DF9c3DGO.d.ts → types-Bl0feoGY.d.ts} +92 -59
- package/dist/usingCtx-BriKju-v.js.map +1 -1
- package/dist/usingCtx-eyNeehd2.cjs.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { t as __name } from "./rolldown-runtime-C0LytTxp.js";
|
|
2
|
-
import { $ as
|
|
3
|
-
|
|
2
|
+
import { $ as definePlugin, A as Generator, At as DiagnosticSeverity, B as Include, Bt as AdapterSource, C as KubbWarnContext, Ct as UserReporter, D as CreateKubbOptions, Dt as DiagnosticDoc, E as UserConfig, Et as Diagnostic, F as Parser, Ft as SerializedDiagnostic, G as Output, H as KubbPluginSetupContext, I as defineParser, It as UpdateDiagnostic, J as Override, K as OutputMode, L as Exclude, Lt as Hookable, M as defineGenerator, Mt as PerformanceDiagnostic, N as KubbDriver, Nt as ProblemCode, O as Kubb, Ot as DiagnosticKind, P as FileManagerHooks, Pt as ProblemDiagnostic, Q as ResolvePluginOptions, R as Filter, Rt as Adapter, S as KubbSuccessContext, St as ReporterName, T as PostGenerateCommand, Tt as logLevel, U as KubbPluginStartContext, V as KubbPluginEndContext, Vt as createAdapter, W as NormalizedPlugin, X as PluginFactoryOptions, Y as Plugin, Z as PluginName, _ as KubbHookStartContext, _t as Storage, a as KubbBuildEndContext, at as ResolveOptionsContext, b as KubbLifecycleStartContext, bt as Reporter, c as KubbErrorContext, ct as ResolverDefault, d as KubbFilesProcessingStartContext, dt as ResolverFilePathParams, et as BannerMeta, f as KubbFilesProcessingUpdateContext, ft as ResolverPatch, g as KubbHookLineContext, gt as createRenderer, h as KubbHookEndContext, ht as RendererFactory, i as Input, it as ResolveImportsOptions, j as GeneratorContext, jt as Diagnostics, k as createKubb, kt as DiagnosticLocation, l as KubbFileProcessingUpdate, lt as ResolverFile, m as KubbGenerationStartContext, mt as Renderer, n as CLIOptions, nt as ResolveBannerFile, o as KubbBuildStartContext, ot as ResolvePathOptions, p as KubbGenerationEndContext, pt as ResolverPathParams, q as OutputOptions, r as Config, rt as ResolveFileOptions, s as KubbDiagnosticContext, st as Resolver, t as BuildOutput, tt as ResolveBannerContext, u as KubbFilesProcessingEndContext, ut as ResolverFileParams, v as KubbHooks, vt as createStorage, w as PossibleConfig, wt as createReporter, x as KubbPluginsEndContext, xt as ReporterContext, y as KubbInfoContext, yt as GenerationResult, z as Group, zt as AdapterFactoryOptions } from "./types-Bl0feoGY.js";
|
|
4
3
|
//#region src/applyConfigDefaults.d.ts
|
|
5
4
|
type ApplyConfigDefaultsOptions<TOutput> = {
|
|
6
5
|
defaultAdapter: Adapter;
|
|
7
6
|
barrelPlugin: Plugin;
|
|
8
|
-
barrelPluginName: string;
|
|
7
|
+
barrelPluginName: string;
|
|
8
|
+
/** Output fields to fill in when the user's config leaves them unset. */
|
|
9
9
|
defaultOutput: Partial<TOutput>;
|
|
10
10
|
};
|
|
11
11
|
/**
|
|
@@ -19,12 +19,7 @@ declare function applyConfigDefaults<TOutput extends Config['output'] = Config['
|
|
|
19
19
|
adapter?: Adapter;
|
|
20
20
|
output: TOutput;
|
|
21
21
|
plugins?: Array<Plugin>;
|
|
22
|
-
}, {
|
|
23
|
-
defaultAdapter,
|
|
24
|
-
barrelPlugin,
|
|
25
|
-
barrelPluginName,
|
|
26
|
-
defaultOutput
|
|
27
|
-
}: ApplyConfigDefaultsOptions<TOutput>): {
|
|
22
|
+
}, { defaultAdapter, barrelPlugin, barrelPluginName, defaultOutput }: ApplyConfigDefaultsOptions<TOutput>): {
|
|
28
23
|
adapter: Adapter;
|
|
29
24
|
output: TOutput;
|
|
30
25
|
plugins: Array<Plugin>;
|
|
@@ -188,5 +183,5 @@ declare const fsStorage: (options?: Record<string, never> | undefined) => Storag
|
|
|
188
183
|
*/
|
|
189
184
|
declare const memoryStorage: (options?: Record<string, never> | undefined) => Storage;
|
|
190
185
|
//#endregion
|
|
191
|
-
export { type Adapter, type AdapterFactoryOptions, type AdapterSource, type BannerMeta, BuildOutput, CLIOptions, Config, type CreateKubbOptions, type Diagnostic, type DiagnosticDoc, type DiagnosticKind, type DiagnosticLocation, type DiagnosticSeverity, Diagnostics, type Exclude, type FileManagerHooks, type Filter, type GenerationResult, type Generator, type GeneratorContext, type Group, Hookable, type Include, Input, type InputKind, type Kubb, KubbBuildEndContext, KubbBuildStartContext, KubbDiagnosticContext, KubbDriver, KubbErrorContext, KubbFileProcessingUpdate, KubbFilesProcessingEndContext, KubbFilesProcessingStartContext, KubbFilesProcessingUpdateContext, KubbGenerationEndContext, KubbGenerationStartContext, KubbHookEndContext, KubbHookLineContext, KubbHookStartContext, KubbHooks, KubbInfoContext, KubbLifecycleStartContext, type KubbPluginEndContext, type KubbPluginSetupContext, type KubbPluginStartContext, KubbPluginsEndContext, KubbSuccessContext, KubbWarnContext, type NormalizedPlugin, type Output, type OutputMode, type OutputOptions, type Override, type Parser, type PerformanceDiagnostic, type Plugin, type PluginFactoryOptions, PossibleConfig, PostGenerateCommand, type ProblemCode, type ProblemDiagnostic, type Renderer, type RendererFactory, type Reporter, type ReporterContext, type ReporterName, type ResolveBannerContext, type ResolveBannerFile, type ResolveFileOptions, type ResolveOptionsContext, type ResolvePathOptions, Resolver, type ResolverDefault, type ResolverFile, type ResolverFileParams, type ResolverFilePathParams, type ResolverPatch, type ResolverPathParams, type SerializedDiagnostic, type Storage, type UpdateDiagnostic, UserConfig, type UserReporter, applyConfigDefaults, cliReporter, createAdapter, createKubb, createRenderer, createReporter, createResolver, createStorage, defineGenerator, defineParser, definePlugin, fileReporter, fsStorage, getInputKind, jsonReporter, logLevel, memoryStorage };
|
|
186
|
+
export { type Adapter, type AdapterFactoryOptions, type AdapterSource, type BannerMeta, BuildOutput, CLIOptions, Config, type CreateKubbOptions, type Diagnostic, type DiagnosticDoc, type DiagnosticKind, type DiagnosticLocation, type DiagnosticSeverity, Diagnostics, type Exclude, type FileManagerHooks, type Filter, type GenerationResult, type Generator, type GeneratorContext, type Group, Hookable, type Include, Input, type InputKind, type Kubb, KubbBuildEndContext, KubbBuildStartContext, KubbDiagnosticContext, KubbDriver, KubbErrorContext, KubbFileProcessingUpdate, KubbFilesProcessingEndContext, KubbFilesProcessingStartContext, KubbFilesProcessingUpdateContext, KubbGenerationEndContext, KubbGenerationStartContext, KubbHookEndContext, KubbHookLineContext, KubbHookStartContext, KubbHooks, KubbInfoContext, KubbLifecycleStartContext, type KubbPluginEndContext, type KubbPluginSetupContext, type KubbPluginStartContext, KubbPluginsEndContext, KubbSuccessContext, KubbWarnContext, type NormalizedPlugin, type Output, type OutputMode, type OutputOptions, type Override, type Parser, type PerformanceDiagnostic, type Plugin, type PluginFactoryOptions, type PluginName, PossibleConfig, PostGenerateCommand, type ProblemCode, type ProblemDiagnostic, type Renderer, type RendererFactory, type Reporter, type ReporterContext, type ReporterName, type ResolveBannerContext, type ResolveBannerFile, type ResolveFileOptions, type ResolveImportsOptions, type ResolveOptionsContext, type ResolvePathOptions, type ResolvePluginOptions, Resolver, type ResolverDefault, type ResolverFile, type ResolverFileParams, type ResolverFilePathParams, type ResolverPatch, type ResolverPathParams, type SerializedDiagnostic, type Storage, type UpdateDiagnostic, UserConfig, type UserReporter, applyConfigDefaults, cliReporter, createAdapter, createKubb, createRenderer, createReporter, createResolver, createStorage, defineGenerator, defineParser, definePlugin, fileReporter, fsStorage, getInputKind, jsonReporter, logLevel, memoryStorage };
|
|
192
187
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@ import { stripVTControlCharacters, styleText } from "node:util";
|
|
|
5
5
|
import { hash } from "node:crypto";
|
|
6
6
|
import { access, glob, readFile, rm } from "node:fs/promises";
|
|
7
7
|
import path, { join, relative, resolve } from "node:path";
|
|
8
|
-
import { ast, collectUsedSchemaNames, composeMacros, operationDef, schemaDef, transform } from "@kubb/ast";
|
|
8
|
+
import { ast, collect, collectUsedSchemaNames, composeMacros, narrowSchema, operationDef, resolveRefName, schemaDef, transform } from "@kubb/ast";
|
|
9
9
|
import process$1 from "node:process";
|
|
10
10
|
//#region src/createAdapter.ts
|
|
11
11
|
/**
|
|
@@ -31,7 +31,6 @@ import process$1 from "node:process";
|
|
|
31
31
|
* // Convert the source (path or inline data) into an InputNode.
|
|
32
32
|
* return ast.factory.createInput()
|
|
33
33
|
* },
|
|
34
|
-
* getImports: () => [],
|
|
35
34
|
* async validate() {
|
|
36
35
|
* // Throw here when the spec is invalid.
|
|
37
36
|
* },
|
|
@@ -190,7 +189,7 @@ function memoize(store, factory) {
|
|
|
190
189
|
}
|
|
191
190
|
//#endregion
|
|
192
191
|
//#region package.json
|
|
193
|
-
var version = "5.0.0-beta.
|
|
192
|
+
var version = "5.0.0-beta.95";
|
|
194
193
|
//#endregion
|
|
195
194
|
//#region src/constants.ts
|
|
196
195
|
/**
|
|
@@ -811,9 +810,9 @@ function toBaseName({ name, extname }) {
|
|
|
811
810
|
/**
|
|
812
811
|
* Base constraint for all plugin resolver objects.
|
|
813
812
|
*
|
|
814
|
-
* The built-in machinery lives under `default`. Generators call the top-level `name`
|
|
815
|
-
* `
|
|
816
|
-
* (`typeName`, …) and/or grouped namespaces (`query`, `schema`, …).
|
|
813
|
+
* The built-in machinery lives under `default`. Generators call the top-level `name`, `file`,
|
|
814
|
+
* and `imports`, and a plugin overrides `name` and `file` to set its conventions. Extend with
|
|
815
|
+
* top-level helpers (`typeName`, …) and/or grouped namespaces (`query`, `schema`, …).
|
|
817
816
|
*
|
|
818
817
|
* @example Top-level helper
|
|
819
818
|
* ```ts
|
|
@@ -871,6 +870,35 @@ var Resolver = class Resolver {
|
|
|
871
870
|
return this.#resolveFile(options);
|
|
872
871
|
}
|
|
873
872
|
/**
|
|
873
|
+
* Builds one `ImportNode` per unique schema referenced in the tree, in first-occurrence
|
|
874
|
+
* order. Each ref's target resolves through `resolveRefName`, so collision- or macro-renamed
|
|
875
|
+
* schemas (`targetName`) import the emitted name. Names and paths go through the top-level
|
|
876
|
+
* `name` and `file`, so import entries follow the plugin's conventions, and a per-call
|
|
877
|
+
* `name` override wins over both.
|
|
878
|
+
*/
|
|
879
|
+
imports(options) {
|
|
880
|
+
const { node, root, output, group, extname = ".ts", name } = options;
|
|
881
|
+
const resolveName = name ?? ((schemaName) => this.name(schemaName));
|
|
882
|
+
const seen = /* @__PURE__ */ new Set();
|
|
883
|
+
return collect(node, { schema: (schemaNode) => {
|
|
884
|
+
const schemaRef = narrowSchema(schemaNode, "ref");
|
|
885
|
+
if (!schemaRef?.ref) return null;
|
|
886
|
+
const schemaName = resolveRefName(schemaRef);
|
|
887
|
+
if (!schemaName || seen.has(schemaName)) return null;
|
|
888
|
+
seen.add(schemaName);
|
|
889
|
+
return ast.factory.createImport({
|
|
890
|
+
name: [resolveName(schemaName)],
|
|
891
|
+
path: this.file({
|
|
892
|
+
name: schemaName,
|
|
893
|
+
extname,
|
|
894
|
+
root,
|
|
895
|
+
output,
|
|
896
|
+
group
|
|
897
|
+
}).path
|
|
898
|
+
});
|
|
899
|
+
} });
|
|
900
|
+
}
|
|
901
|
+
/**
|
|
874
902
|
* Merges `override` over `base` and returns a new resolver with helpers re-bound. Top-level
|
|
875
903
|
* keys replace, and a namespace (or `file`) merges per method, so overriding `query.name`
|
|
876
904
|
* keeps the base `query.keyName`. Used when applying `setResolver` partial overrides. Reads a
|