unplugin-kubb 5.14.6 → 5.15.0

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/astro.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  import { Options } from "./unpluginFactory.js";
2
- //#region src/astro.d.ts
3
2
  declare function _default(options: Options): {
4
3
  name: string;
5
4
  hooks: {
@@ -12,6 +11,5 @@ declare function _default(options: Options): {
12
11
  }) => void;
13
12
  };
14
13
  };
15
- //#endregion
16
14
  export { _default as default };
17
15
  //# sourceMappingURL=astro.d.ts.map
package/dist/astro.js CHANGED
@@ -1,6 +1,6 @@
1
- import { t as __name } from "./rolldown-runtime-C0LytTxp.js";
1
+ import { t as __name } from "./rolldown-runtime-BowF1xt-.js";
2
2
  import vite_default from "./vite.js";
3
- //#region src/astro.ts
3
+ // src/astro.ts
4
4
  var astro_default = /* @__PURE__ */ __name((options) => ({
5
5
  name: "unplugin-kubb",
6
6
  hooks: { "astro:config:setup": (astro) => {
@@ -8,7 +8,6 @@ var astro_default = /* @__PURE__ */ __name((options) => ({
8
8
  astro.config.vite.plugins.push(vite_default(options));
9
9
  } }
10
10
  }), "default");
11
- //#endregion
12
11
  export { astro_default as default };
13
12
 
14
13
  //# sourceMappingURL=astro.js.map
package/dist/esbuild.d.ts CHANGED
@@ -1,6 +1,4 @@
1
1
  import { Options } from "./unpluginFactory.js";
2
- //#region src/esbuild.d.ts
3
2
  declare const _default: (options?: Options | undefined) => import("esbuild").Plugin;
4
- //#endregion
5
3
  export { _default as default };
6
4
  //# sourceMappingURL=esbuild.d.ts.map
package/dist/esbuild.js CHANGED
@@ -1,8 +1,7 @@
1
- import { n as unpluginFactory } from "./unpluginFactory-uoTNZoUA.js";
1
+ import { n as unpluginFactory } from "./unpluginFactory-BXVWsHOt.js";
2
2
  import { createEsbuildPlugin } from "unplugin";
3
- //#region src/esbuild.ts
3
+ // src/esbuild.ts
4
4
  var esbuild_default = createEsbuildPlugin(unpluginFactory);
5
- //#endregion
6
5
  export { esbuild_default as default };
7
6
 
8
7
  //# sourceMappingURL=esbuild.js.map
package/dist/farm.d.ts CHANGED
@@ -1,6 +1,4 @@
1
1
  import { Options } from "./unpluginFactory.js";
2
- //#region src/farm.d.ts
3
2
  declare const _default: (options?: Options | undefined) => import("@farmfe/core").JsPlugin;
4
- //#endregion
5
3
  export { _default as default };
6
4
  //# sourceMappingURL=farm.d.ts.map
package/dist/farm.js CHANGED
@@ -1,8 +1,7 @@
1
- import { n as unpluginFactory } from "./unpluginFactory-uoTNZoUA.js";
1
+ import { n as unpluginFactory } from "./unpluginFactory-BXVWsHOt.js";
2
2
  import { createFarmPlugin } from "unplugin";
3
- //#region src/farm.ts
3
+ // src/farm.ts
4
4
  var farm_default = createFarmPlugin(unpluginFactory);
5
- //#endregion
6
5
  export { farm_default as default };
7
6
 
8
7
  //# sourceMappingURL=farm.js.map
@@ -1,5 +1,4 @@
1
1
  import { Hookable, KubbHooks, ProblemDiagnostic, UserConfig } from "@kubb/core";
2
- //#region src/generateModule.d.ts
3
2
  /**
4
3
  * The config whose `input` is `fileName`, else the first one without an `input`. A config for
5
4
  * another spec does not apply, so it returns `undefined` when no config fits. A relative `root`
@@ -26,5 +25,4 @@ export declare function generateModule({ root, input, config, hooks }: {
26
25
  errors: Array<ProblemDiagnostic>;
27
26
  sources: Array<string>;
28
27
  }>;
29
- //#endregion
30
28
  //# sourceMappingURL=generateModule.d.ts.map
@@ -1,10 +1,10 @@
1
- import "./rolldown-runtime-C0LytTxp.js";
1
+ import "./rolldown-runtime-BowF1xt-.js";
2
2
  import path from "node:path";
3
3
  import { adapterOas } from "@kubb/adapter-oas";
4
4
  import { Diagnostics, createKubb, memoryStorage } from "@kubb/core";
5
5
  import { parserTs } from "@kubb/parser-ts";
6
6
  import { pluginBarrelName } from "@kubb/plugin-barrel";
7
- //#region src/generateModule.ts
7
+ // src/generateModule.ts
8
8
  const moduleFile = "index.ts";
9
9
  const toModulePlugin = (plugin) => ({
10
10
  ...plugin,
@@ -56,7 +56,6 @@ async function generateModule({ root, input, config, hooks }) {
56
56
  sources: adapter.sources ?? []
57
57
  };
58
58
  }
59
- //#endregion
60
59
  export { generateModule, selectConfig };
61
60
 
62
61
  //# sourceMappingURL=generateModule.js.map
package/dist/index.d.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  import { Options, applyDefaults, unpluginFactory } from "./unpluginFactory.js";
2
2
  import { generateModule, selectConfig } from "./generateModule.js";
3
3
  import "@kubb/core";
4
- //#region ../../internals/shared/src/config.d.ts
5
4
  /**
6
5
  * Every config file path the Kubb CLI checks in `dir`, in the order it checks them.
7
6
  */
@@ -24,9 +23,6 @@ export declare function loadConfigFile<T extends {
24
23
  file: string;
25
24
  cli: unknown;
26
25
  }): Promise<Array<T>>;
27
- //#endregion
28
- //#region src/index.d.ts
29
26
  declare const plugin: import("unplugin").UnpluginInstance<Options | undefined, true>;
30
- //#endregion
31
27
  export { type Options, applyDefaults, plugin as default, plugin as unplugin, generateModule, selectConfig, unpluginFactory };
32
28
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1,9 +1,8 @@
1
- import { a as loadConfigFile, i as findConfigFile, n as unpluginFactory, r as configFileCandidates, t as applyDefaults } from "./unpluginFactory-uoTNZoUA.js";
1
+ import { a as loadConfigFile, i as findConfigFile, n as unpluginFactory, r as configFileCandidates, t as applyDefaults } from "./unpluginFactory-BXVWsHOt.js";
2
2
  import { generateModule, selectConfig } from "./generateModule.js";
3
3
  import { createUnplugin } from "unplugin";
4
- //#region src/index.ts
4
+ // src/index.ts
5
5
  const plugin = /* #__PURE__ */ createUnplugin(unpluginFactory);
6
- //#endregion
7
6
  export { applyDefaults, configFileCandidates, plugin as default, plugin as unplugin, findConfigFile, generateModule, loadConfigFile, selectConfig, unpluginFactory };
8
7
 
9
8
  //# sourceMappingURL=index.js.map
package/dist/nuxt.d.ts CHANGED
@@ -1,8 +1,6 @@
1
1
  import { Options } from "./unpluginFactory.js";
2
2
  import "@nuxt/schema";
3
- //#region src/nuxt.d.ts
4
3
  export type ModuleOptions = Options;
5
4
  declare const _default: import("@nuxt/schema").NuxtModule<Options, Options, false>;
6
- //#endregion
7
5
  export { _default as default };
8
6
  //# sourceMappingURL=nuxt.d.ts.map
package/dist/nuxt.js CHANGED
@@ -1,10 +1,10 @@
1
- import "./rolldown-runtime-C0LytTxp.js";
1
+ import "./rolldown-runtime-BowF1xt-.js";
2
2
  import vite_default from "./vite.js";
3
3
  import rspack_default from "./rspack.js";
4
4
  import webpack_default from "./webpack.js";
5
5
  import { addRspackPlugin, addVitePlugin, addWebpackPlugin, defineNuxtModule } from "@nuxt/kit";
6
6
  import "@nuxt/schema";
7
- //#region src/nuxt.ts
7
+ // src/nuxt.ts
8
8
  var nuxt_default = defineNuxtModule({
9
9
  meta: {
10
10
  name: "nuxt-unplugin-kubb",
@@ -21,7 +21,6 @@ var nuxt_default = defineNuxtModule({
21
21
  addRspackPlugin(() => rspack_default(options), buildOptions);
22
22
  }
23
23
  });
24
- //#endregion
25
24
  export { nuxt_default as default };
26
25
 
27
26
  //# sourceMappingURL=nuxt.js.map
@@ -1,8 +1,7 @@
1
- //#region \0rolldown/runtime.js
1
+ // \0rolldown/runtime.js
2
2
  var __defProp = Object.defineProperty;
3
3
  var __name = (target, value) => __defProp(target, "name", {
4
4
  value,
5
5
  configurable: true
6
6
  });
7
- //#endregion
8
7
  export { __name as t };
@@ -1,6 +1,4 @@
1
1
  import { Options } from "./unpluginFactory.js";
2
- //#region src/rolldown.d.ts
3
2
  declare const _default: (options?: Options | undefined) => import("rolldown").Plugin<any>[] | import("rolldown").Plugin<any>;
4
- //#endregion
5
3
  export { _default as default };
6
4
  //# sourceMappingURL=rolldown.d.ts.map
package/dist/rolldown.js CHANGED
@@ -1,8 +1,7 @@
1
- import { n as unpluginFactory } from "./unpluginFactory-uoTNZoUA.js";
1
+ import { n as unpluginFactory } from "./unpluginFactory-BXVWsHOt.js";
2
2
  import { createRolldownPlugin } from "unplugin";
3
- //#region src/rolldown.ts
3
+ // src/rolldown.ts
4
4
  var rolldown_default = createRolldownPlugin(unpluginFactory);
5
- //#endregion
6
5
  export { rolldown_default as default };
7
6
 
8
7
  //# sourceMappingURL=rolldown.js.map
package/dist/rollup.d.ts CHANGED
@@ -1,6 +1,4 @@
1
1
  import { Options } from "./unpluginFactory.js";
2
- //#region src/rollup.d.ts
3
2
  declare const _default: (options?: Options | undefined) => import("rollup").Plugin<any>[] | import("rollup").Plugin<any>;
4
- //#endregion
5
3
  export { _default as default };
6
4
  //# sourceMappingURL=rollup.d.ts.map
package/dist/rollup.js CHANGED
@@ -1,8 +1,7 @@
1
- import { n as unpluginFactory } from "./unpluginFactory-uoTNZoUA.js";
1
+ import { n as unpluginFactory } from "./unpluginFactory-BXVWsHOt.js";
2
2
  import { createRollupPlugin } from "unplugin";
3
- //#region src/rollup.ts
3
+ // src/rollup.ts
4
4
  var rollup_default = createRollupPlugin(unpluginFactory);
5
- //#endregion
6
5
  export { rollup_default as default };
7
6
 
8
7
  //# sourceMappingURL=rollup.js.map
package/dist/rspack.d.ts CHANGED
@@ -1,6 +1,4 @@
1
1
  import { Options } from "./unpluginFactory.js";
2
- //#region src/rspack.d.ts
3
2
  declare const _default: (options?: Options | undefined) => import("unplugin").RspackPluginInstance;
4
- //#endregion
5
3
  export { _default as default };
6
4
  //# sourceMappingURL=rspack.d.ts.map
package/dist/rspack.js CHANGED
@@ -1,8 +1,7 @@
1
- import { n as unpluginFactory } from "./unpluginFactory-uoTNZoUA.js";
1
+ import { n as unpluginFactory } from "./unpluginFactory-BXVWsHOt.js";
2
2
  import { createRspackPlugin } from "unplugin";
3
- //#region src/rspack.ts
3
+ // src/rspack.ts
4
4
  var rspack_default = createRspackPlugin(unpluginFactory);
5
- //#endregion
6
5
  export { rspack_default as default };
7
6
 
8
7
  //# sourceMappingURL=rspack.js.map
@@ -1,7 +1,5 @@
1
- //#region src/stripTypes.d.ts
2
1
  /**
3
2
  * Turns generated TypeScript into JavaScript: types are stripped and enums become plain objects, as `tsc` emits them.
4
3
  */
5
4
  export declare function stripTypes(source: string, fileName: string): string;
6
- //#endregion
7
5
  //# sourceMappingURL=stripTypes.d.ts.map
@@ -1,7 +1,7 @@
1
- import "./rolldown-runtime-C0LytTxp.js";
1
+ import "./rolldown-runtime-BowF1xt-.js";
2
2
  import { parse } from "yuku-parser";
3
3
  import { generate } from "yuku-codegen";
4
- //#region src/stripTypes.ts
4
+ // src/stripTypes.ts
5
5
  /**
6
6
  * Node types this module reads from the yuku AST.
7
7
  */
@@ -107,7 +107,6 @@ function stripTypes(source, fileName) {
107
107
  });
108
108
  return generate(program, { strip: true }).code;
109
109
  }
110
- //#endregion
111
110
  export { stripTypes };
112
111
 
113
112
  //# sourceMappingURL=stripTypes.js.map
@@ -1,4 +1,4 @@
1
- import "./rolldown-runtime-C0LytTxp.js";
1
+ import "./rolldown-runtime-BowF1xt-.js";
2
2
  import { generateModule, selectConfig } from "./generateModule.js";
3
3
  import { stripTypes } from "./stripTypes.js";
4
4
  import path, { basename, dirname, join, resolve } from "node:path";
@@ -11,7 +11,7 @@ import { existsSync } from "node:fs";
11
11
  import process$1 from "node:process";
12
12
  import { readFile } from "node:fs/promises";
13
13
  import { createJiti } from "jiti";
14
- //#region ../../internals/shared/src/constants.ts
14
+ // ../../internals/shared/src/constants.ts
15
15
  /** File extensions a Kubb config file may use. */
16
16
  const CONFIG_EXTENSIONS = [
17
17
  ".ts",
@@ -21,8 +21,7 @@ const CONFIG_EXTENSIONS = [
21
21
  ".mjs",
22
22
  ".cjs"
23
23
  ];
24
- //#endregion
25
- //#region ../../internals/shared/src/loader.ts
24
+ // ../../internals/shared/src/loader.ts
26
25
  /**
27
26
  * jiti options for loading Kubb config modules: the automatic JSX runtime pointed at
28
27
  * `@kubb/renderer-jsx`, and `moduleCache` off so a re-load re-evaluates the file.
@@ -60,8 +59,7 @@ async function loadModule(filePath, options) {
60
59
  });
61
60
  return options?.default ? mod?.default ?? mod : mod;
62
61
  }
63
- //#endregion
64
- //#region ../../internals/shared/src/config.ts
62
+ // ../../internals/shared/src/config.ts
65
63
  const CONFIG_FOLDERS = [".config", "configs"];
66
64
  const SEARCH_FILES = ["", ...CONFIG_FOLDERS.map((folder) => `${folder}/`)].flatMap((prefix) => [`${prefix}.kubbrc`, `${prefix}kubb.config`]);
67
65
  /**
@@ -96,8 +94,7 @@ async function loadConfigFile({ file, cli }) {
96
94
  root: resolve(dir, config.root ?? ".")
97
95
  }));
98
96
  }
99
- //#endregion
100
- //#region src/unpluginFactory.ts
97
+ // src/unpluginFactory.ts
101
98
  /**
102
99
  * Applies the defaults `defineConfig` and the unplugin share to a single user config when not set.
103
100
  *
@@ -229,7 +226,6 @@ const unpluginFactory = (options, meta) => {
229
226
  }
230
227
  }];
231
228
  };
232
- //#endregion
233
229
  export { loadConfigFile as a, findConfigFile as i, unpluginFactory as n, configFileCandidates as r, applyDefaults as t };
234
230
 
235
- //# sourceMappingURL=unpluginFactory-uoTNZoUA.js.map
231
+ //# sourceMappingURL=unpluginFactory-BXVWsHOt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"unpluginFactory-uoTNZoUA.js","names":["process"],"sources":["../../../internals/shared/src/constants.ts","../../../internals/shared/src/loader.ts","../../../internals/shared/src/config.ts","../src/unpluginFactory.ts"],"sourcesContent":["export const KUBB_CONFIG_FILENAME = 'kubb.config.ts' as const\n\n/** File extensions a Kubb config file may use. */\nexport const CONFIG_EXTENSIONS = ['.ts', '.mts', '.cts', '.js', '.mjs', '.cjs'] as const\n\nexport const KUBB_PACKAGE_NAME = 'kubb' as const\n\n/**\n * Extensions `kubb` ships at its own version, so they count as installed without being a direct\n * dependency. `constants.test.ts` checks it against the `kubb` package's dependencies.\n */\nexport const BUNDLED_PACKAGES: ReadonlyArray<string> = ['@kubb/adapter-oas', '@kubb/parser-ts', '@kubb/parser-md', '@kubb/plugin-barrel']\n\nexport const initDefaults = {\n inputPath: './openapi.yaml',\n outputPath: './src/gen',\n plugins: ['plugin-ts'],\n} as const\n","import { readFile } from 'node:fs/promises'\nimport { createJiti } from 'jiti'\n\n/**\n * jiti options for loading Kubb config modules: the automatic JSX runtime pointed at\n * `@kubb/renderer-jsx`, and `moduleCache` off so a re-load re-evaluates the file.\n */\nconst JITI_OPTIONS = {\n jsx: { runtime: 'automatic', importSource: '@kubb/renderer-jsx' },\n moduleCache: false,\n} satisfies Parameters<typeof createJiti>[1]\n\n/**\n * Plain JavaScript files. jiti hands these to Node's native `import()`, whose module cache never\n * lets go of a file, so `moduleCache: false` alone would keep returning the first version of it.\n */\nconst JAVASCRIPT_EXTENSION = /\\.[cm]?jsx?$/\n\n/**\n * Per-call options for {@link loadModule}.\n */\ntype LoadModuleOptions = {\n /**\n * Return the module's default export instead of the full namespace.\n */\n default?: boolean\n}\n\nconst jiti = createJiti(import.meta.url, JITI_OPTIONS)\n\n/**\n * Loads a Kubb TypeScript or JavaScript config module via jiti.\n *\n * jiti transpiles TypeScript and the `@kubb/renderer-jsx` JSX runtime on the fly. Every load\n * re-evaluates the file, so a config edited on disk is picked up by the next load.\n *\n * @example\n * ```ts\n * const config = await loadModule('/abs/kubb.config.ts', { default: true })\n * ```\n */\nexport async function loadModule<T = unknown>(filePath: string, options?: LoadModuleOptions): Promise<T> {\n if (!JAVASCRIPT_EXTENSION.test(filePath)) {\n return (options?.default ? jiti.import(filePath, { default: true }) : jiti.import(filePath)) as Promise<T>\n }\n\n // Transpiled through jiti instead, so every load re-evaluates the file as it is on disk now.\n // A TypeScript file it imports reloads too. A plain JavaScript file it imports still goes\n // through Node's `import()` and stays cached until the process restarts.\n const mod = (await jiti.evalModule(await readFile(filePath, 'utf8'), { filename: filePath, async: true, forceTranspile: true })) as\n | { default?: unknown }\n | undefined\n return (options?.default ? (mod?.default ?? mod) : mod) as T\n}\n","import { existsSync } from 'node:fs'\nimport { basename, dirname, join, resolve } from 'node:path'\nimport process from 'node:process'\nimport { CONFIG_EXTENSIONS } from './constants.ts'\nimport { loadModule } from './loader.ts'\n\n// A config in one of these folders belongs to the folder above it.\nconst CONFIG_FOLDERS = ['.config', 'configs']\nconst SEARCH_FILES = ['', ...CONFIG_FOLDERS.map((folder) => `${folder}/`)].flatMap((prefix) => [`${prefix}.kubbrc`, `${prefix}kubb.config`])\n\n/**\n * Every config file path the Kubb CLI checks in `dir`, in the order it checks them.\n */\nexport function configFileCandidates(dir: string): Array<string> {\n return SEARCH_FILES.flatMap((file) => CONFIG_EXTENSIONS.map((extension) => join(dir, `${file}${extension}`)))\n}\n\n/**\n * The first Kubb config file in `cwd` or the nearest parent folder that has one: `.kubbrc` before\n * `kubb.config`, the folder itself before its `.config/` and `configs/`, and {@link CONFIG_EXTENSIONS} in order.\n */\nexport function findConfigFile(cwd: string = process.cwd()): string | undefined {\n for (let dir = resolve(cwd); ; dir = dirname(dir)) {\n const found = configFileCandidates(dir).find((file) => existsSync(file))\n if (found || dirname(dir) === dir) return found\n }\n}\n\n/**\n * Loads a Kubb config module, calls it with `cli` when it exports a function, and returns its\n * configs as a list, so a single config and a `defineConfig([...])` array read the same. Each\n * `root` resolves from the folder the config belongs to: the file's folder, or the folder above\n * `.config/` and `configs/`. A missing `root` becomes that folder, so the CLI, the bundler, and\n * an editor read the same paths wherever they run.\n */\nexport async function loadConfigFile<T extends { root?: string }>({ file, cli }: { file: string; cli: unknown }): Promise<Array<T>> {\n const loaded = await loadModule<unknown>(file, { default: true })\n const resolved = (await (typeof loaded === 'function' ? loaded(cli) : loaded)) as T | Array<T>\n const dir = CONFIG_FOLDERS.includes(basename(dirname(file))) ? dirname(dirname(file)) : dirname(file)\n return (Array.isArray(resolved) ? resolved : [resolved]).map((config) => ({ ...config, root: resolve(dir, config.root ?? '.') }))\n}\n","import path from 'node:path'\nimport { adapterOas } from '@kubb/adapter-oas'\nimport {\n cliReporter,\n type Config,\n createCliReporter,\n createKubb,\n Diagnostics,\n fileReporter,\n Hookable,\n htmlReporter,\n jsonReporter,\n type KubbHooks,\n logLevel,\n type ProblemDiagnostic,\n type UserConfig,\n} from '@kubb/core'\nimport { parserMd } from '@kubb/parser-md'\nimport { parserTs, parserTsx } from '@kubb/parser-ts'\nimport { pluginBarrel, pluginBarrelName } from '@kubb/plugin-barrel'\nimport { findConfigFile, loadConfigFile } from '@internals/shared'\nimport type { UnpluginFactory } from 'unplugin'\nimport { generateModule, selectConfig } from './generateModule.ts'\nimport { stripTypes } from './stripTypes.ts'\n\nexport type Options = {\n /**\n * Kubb config passed to the unplugin entry point. When not set, the plugin loads\n * `kubb.config.*` the way the Kubb CLI finds it, from the current working directory up.\n */\n config?: UserConfig\n}\n\n/**\n * Applies the defaults `defineConfig` and the unplugin share to a single user config when not set.\n *\n * - `adapter` defaults to `adapterOas()`\n * - `parsers` defaults to `[parserTs(), parserTsx(), parserMd()]`\n * - `reporters` defaults to `[cliReporter, jsonReporter, fileReporter, htmlReporter]`\n * - `plugins` gets `pluginBarrel()` appended when none is already present\n * - `output.barrel` defaults to `false` when not set (`pluginBarrel` is always present after the step above, but generates nothing until configured)\n * - `output.format` and `output.lint` default to `false`\n */\nexport function applyDefaults<TInput>(config: UserConfig<TInput>): UserConfig<TInput> {\n const plugins = config.plugins ?? []\n\n return {\n ...config,\n adapter: config.adapter ?? adapterOas(),\n parsers: config.parsers?.length ? config.parsers : [parserTs(), parserTsx(), parserMd()],\n reporters: config.reporters?.length ? config.reporters : [cliReporter, jsonReporter, fileReporter, htmlReporter],\n plugins: plugins.some((plugin) => plugin.name === pluginBarrelName) ? plugins : [...plugins, pluginBarrel()],\n output: { barrel: false, format: false, lint: false, ...config.output },\n }\n}\n\n/** Spec files an import loads as a module, the extensions `openapi-import` registers too. */\nconst specFilePattern = /\\.openapi\\.ya?ml$/\n\n/**\n * Builds the Kubb unplugin for every unplugin bundler. `unplugin-kubb` runs the Kubb build once for\n * each config with an `input` (only during `build` under Vite), and `unplugin-kubb:import` loads an\n * imported {@link specFilePattern} file as one module. Without `config`, it loads `kubb.config.*`.\n */\nexport const unpluginFactory: UnpluginFactory<Options | undefined, true> = (options, meta) => {\n const name = 'unplugin-kubb' as const\n const hooks = new Hookable<KubbHooks>()\n const reporter = createCliReporter()\n\n hooks.hook('kubb:generation:end', ({ config, diagnostics = [], filesCreated = 0, status = 'success', hrStart = process.hrtime() }) =>\n reporter.report({ config, diagnostics, filesCreated, status, hrStart }, { logLevel: logLevel.info }),\n )\n\n // Throw: webpack, Rspack, esbuild, and Farm contexts have no `this.error`. Keep the problem's code,\n // help and location, so the bundler shows the same diagnostic.\n const fail = (problem: ProblemDiagnostic | undefined, message: string) =>\n new Diagnostics.Error({ ...(problem ?? { code: Diagnostics.code.unknown, severity: 'error' }), message: `[${name}] ${message}` })\n\n async function readConfigs(): Promise<Array<UserConfig>> {\n if (options?.config) return [options.config]\n\n const file = findConfigFile()\n if (!file) {\n throw new Diagnostics.Error({\n code: Diagnostics.code.inputRequired,\n severity: 'error',\n message: `[${name}] Config is not set`,\n help: 'Pass your Kubb config as the `config` option of the plugin, or add a `kubb.config.ts`.',\n location: { kind: 'config' },\n })\n }\n return loadConfigFile<UserConfig>({ file, cli: {} })\n }\n\n // Loaded once per instance, like the generation below: restart the build after editing the config file.\n let loaded: ReturnType<typeof readConfigs> | undefined\n const loadConfigs = () => (loaded ??= readConfigs())\n\n async function runBuild() {\n for (const config of (await loadConfigs()).filter((config) => config.input)) {\n const result = await createKubb(applyDefaults(config) as Config, { hooks }).generate()\n if (result.success) continue\n\n const failedCount = Diagnostics.failedPlugins(result.diagnostics).length\n const firstError = result.diagnostics.filter(Diagnostics.isProblem).find((diagnostic) => diagnostic.severity === 'error')\n throw fail(firstError, failedCount > 0 ? `Build Error with ${failedCount} failed plugins` : (firstError?.message ?? 'Build failed'))\n }\n }\n\n // A rerun with `output.clean` loops webpack and Rspack watchers, so generate once per instance.\n let generation: Promise<void> | undefined\n\n return [\n {\n name,\n enforce: 'pre',\n apply: meta.framework === 'vite' ? 'build' : undefined,\n async buildStart() {\n generation ??= runBuild().catch((error: unknown) => {\n generation = undefined\n throw error\n })\n await generation\n },\n },\n {\n name: `${name}:import`,\n enforce: 'pre',\n loadInclude: (id) => specFilePattern.test(id),\n async load(id) {\n try {\n const config = selectConfig({ configs: await loadConfigs(), fileName: id, cwd: process.cwd() })\n if (!config) {\n throw new Diagnostics.Error({\n code: Diagnostics.code.unknown,\n severity: 'error',\n message: `[${name}] No Kubb config applies to ${id}`,\n help: 'Set `input` of a config to this spec, or add a config without `input` to serve every imported spec.',\n location: { kind: 'config' },\n })\n }\n const { text, errors } = await generateModule({ root: path.dirname(id), input: id, config })\n if (errors.length) throw fail(errors[0], `${id}: ${errors[0]!.message}`)\n\n // Bundlers do not strip types from a `.yaml` module, so hand them JavaScript.\n return stripTypes(text, `${id}.ts`)\n } catch (error) {\n // unplugin's webpack and Rspack loader never settles when `load` throws, so report the error instead.\n if (meta.framework !== 'webpack' && meta.framework !== 'rspack') throw error\n this.error(error as Error)\n return 'export {}'\n }\n },\n },\n ]\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"unpluginFactory-BXVWsHOt.js","names":["process"],"sources":["../../../internals/shared/src/constants.ts","../../../internals/shared/src/loader.ts","../../../internals/shared/src/config.ts","../src/unpluginFactory.ts"],"sourcesContent":["export const KUBB_CONFIG_FILENAME = 'kubb.config.ts' as const\n\n/** File extensions a Kubb config file may use. */\nexport const CONFIG_EXTENSIONS = ['.ts', '.mts', '.cts', '.js', '.mjs', '.cjs'] as const\n\nexport const KUBB_PACKAGE_NAME = 'kubb' as const\n\n/**\n * Extensions `kubb` ships at its own version, so they count as installed without being a direct\n * dependency. `constants.test.ts` checks it against the `kubb` package's dependencies.\n */\nexport const BUNDLED_PACKAGES: ReadonlyArray<string> = ['@kubb/adapter-oas', '@kubb/parser-ts', '@kubb/parser-md', '@kubb/plugin-barrel']\n\nexport const initDefaults = {\n inputPath: './openapi.yaml',\n outputPath: './src/gen',\n plugins: ['plugin-ts'],\n} as const\n","import { readFile } from 'node:fs/promises'\nimport { createJiti } from 'jiti'\n\n/**\n * jiti options for loading Kubb config modules: the automatic JSX runtime pointed at\n * `@kubb/renderer-jsx`, and `moduleCache` off so a re-load re-evaluates the file.\n */\nconst JITI_OPTIONS = {\n jsx: { runtime: 'automatic', importSource: '@kubb/renderer-jsx' },\n moduleCache: false,\n} satisfies Parameters<typeof createJiti>[1]\n\n/**\n * Plain JavaScript files. jiti hands these to Node's native `import()`, whose module cache never\n * lets go of a file, so `moduleCache: false` alone would keep returning the first version of it.\n */\nconst JAVASCRIPT_EXTENSION = /\\.[cm]?jsx?$/\n\n/**\n * Per-call options for {@link loadModule}.\n */\ntype LoadModuleOptions = {\n /**\n * Return the module's default export instead of the full namespace.\n */\n default?: boolean\n}\n\nconst jiti = createJiti(import.meta.url, JITI_OPTIONS)\n\n/**\n * Loads a Kubb TypeScript or JavaScript config module via jiti.\n *\n * jiti transpiles TypeScript and the `@kubb/renderer-jsx` JSX runtime on the fly. Every load\n * re-evaluates the file, so a config edited on disk is picked up by the next load.\n *\n * @example\n * ```ts\n * const config = await loadModule('/abs/kubb.config.ts', { default: true })\n * ```\n */\nexport async function loadModule<T = unknown>(filePath: string, options?: LoadModuleOptions): Promise<T> {\n if (!JAVASCRIPT_EXTENSION.test(filePath)) {\n return (options?.default ? jiti.import(filePath, { default: true }) : jiti.import(filePath)) as Promise<T>\n }\n\n // Transpiled through jiti instead, so every load re-evaluates the file as it is on disk now.\n // A TypeScript file it imports reloads too. A plain JavaScript file it imports still goes\n // through Node's `import()` and stays cached until the process restarts.\n const mod = (await jiti.evalModule(await readFile(filePath, 'utf8'), { filename: filePath, async: true, forceTranspile: true })) as\n | { default?: unknown }\n | undefined\n return (options?.default ? (mod?.default ?? mod) : mod) as T\n}\n","import { existsSync } from 'node:fs'\nimport { basename, dirname, join, resolve } from 'node:path'\nimport process from 'node:process'\nimport { CONFIG_EXTENSIONS } from './constants.ts'\nimport { loadModule } from './loader.ts'\n\n// A config in one of these folders belongs to the folder above it.\nconst CONFIG_FOLDERS = ['.config', 'configs']\nconst SEARCH_FILES = ['', ...CONFIG_FOLDERS.map((folder) => `${folder}/`)].flatMap((prefix) => [`${prefix}.kubbrc`, `${prefix}kubb.config`])\n\n/**\n * Every config file path the Kubb CLI checks in `dir`, in the order it checks them.\n */\nexport function configFileCandidates(dir: string): Array<string> {\n return SEARCH_FILES.flatMap((file) => CONFIG_EXTENSIONS.map((extension) => join(dir, `${file}${extension}`)))\n}\n\n/**\n * The first Kubb config file in `cwd` or the nearest parent folder that has one: `.kubbrc` before\n * `kubb.config`, the folder itself before its `.config/` and `configs/`, and {@link CONFIG_EXTENSIONS} in order.\n */\nexport function findConfigFile(cwd: string = process.cwd()): string | undefined {\n for (let dir = resolve(cwd); ; dir = dirname(dir)) {\n const found = configFileCandidates(dir).find((file) => existsSync(file))\n if (found || dirname(dir) === dir) return found\n }\n}\n\n/**\n * Loads a Kubb config module, calls it with `cli` when it exports a function, and returns its\n * configs as a list, so a single config and a `defineConfig([...])` array read the same. Each\n * `root` resolves from the folder the config belongs to: the file's folder, or the folder above\n * `.config/` and `configs/`. A missing `root` becomes that folder, so the CLI, the bundler, and\n * an editor read the same paths wherever they run.\n */\nexport async function loadConfigFile<T extends { root?: string }>({ file, cli }: { file: string; cli: unknown }): Promise<Array<T>> {\n const loaded = await loadModule<unknown>(file, { default: true })\n const resolved = (await (typeof loaded === 'function' ? loaded(cli) : loaded)) as T | Array<T>\n const dir = CONFIG_FOLDERS.includes(basename(dirname(file))) ? dirname(dirname(file)) : dirname(file)\n return (Array.isArray(resolved) ? resolved : [resolved]).map((config) => ({ ...config, root: resolve(dir, config.root ?? '.') }))\n}\n","import path from 'node:path'\nimport { adapterOas } from '@kubb/adapter-oas'\nimport {\n cliReporter,\n type Config,\n createCliReporter,\n createKubb,\n Diagnostics,\n fileReporter,\n Hookable,\n htmlReporter,\n jsonReporter,\n type KubbHooks,\n logLevel,\n type ProblemDiagnostic,\n type UserConfig,\n} from '@kubb/core'\nimport { parserMd } from '@kubb/parser-md'\nimport { parserTs, parserTsx } from '@kubb/parser-ts'\nimport { pluginBarrel, pluginBarrelName } from '@kubb/plugin-barrel'\nimport { findConfigFile, loadConfigFile } from '@internals/shared'\nimport type { UnpluginFactory } from 'unplugin'\nimport { generateModule, selectConfig } from './generateModule.ts'\nimport { stripTypes } from './stripTypes.ts'\n\nexport type Options = {\n /**\n * Kubb config passed to the unplugin entry point. When not set, the plugin loads\n * `kubb.config.*` the way the Kubb CLI finds it, from the current working directory up.\n */\n config?: UserConfig\n}\n\n/**\n * Applies the defaults `defineConfig` and the unplugin share to a single user config when not set.\n *\n * - `adapter` defaults to `adapterOas()`\n * - `parsers` defaults to `[parserTs(), parserTsx(), parserMd()]`\n * - `reporters` defaults to `[cliReporter, jsonReporter, fileReporter, htmlReporter]`\n * - `plugins` gets `pluginBarrel()` appended when none is already present\n * - `output.barrel` defaults to `false` when not set (`pluginBarrel` is always present after the step above, but generates nothing until configured)\n * - `output.format` and `output.lint` default to `false`\n */\nexport function applyDefaults<TInput>(config: UserConfig<TInput>): UserConfig<TInput> {\n const plugins = config.plugins ?? []\n\n return {\n ...config,\n adapter: config.adapter ?? adapterOas(),\n parsers: config.parsers?.length ? config.parsers : [parserTs(), parserTsx(), parserMd()],\n reporters: config.reporters?.length ? config.reporters : [cliReporter, jsonReporter, fileReporter, htmlReporter],\n plugins: plugins.some((plugin) => plugin.name === pluginBarrelName) ? plugins : [...plugins, pluginBarrel()],\n output: { barrel: false, format: false, lint: false, ...config.output },\n }\n}\n\n/** Spec files an import loads as a module, the extensions `openapi-import` registers too. */\nconst specFilePattern = /\\.openapi\\.ya?ml$/\n\n/**\n * Builds the Kubb unplugin for every unplugin bundler. `unplugin-kubb` runs the Kubb build once for\n * each config with an `input` (only during `build` under Vite), and `unplugin-kubb:import` loads an\n * imported {@link specFilePattern} file as one module. Without `config`, it loads `kubb.config.*`.\n */\nexport const unpluginFactory: UnpluginFactory<Options | undefined, true> = (options, meta) => {\n const name = 'unplugin-kubb' as const\n const hooks = new Hookable<KubbHooks>()\n const reporter = createCliReporter()\n\n hooks.hook('kubb:generation:end', ({ config, diagnostics = [], filesCreated = 0, status = 'success', hrStart = process.hrtime() }) =>\n reporter.report({ config, diagnostics, filesCreated, status, hrStart }, { logLevel: logLevel.info }),\n )\n\n // Throw: webpack, Rspack, esbuild, and Farm contexts have no `this.error`. Keep the problem's code,\n // help and location, so the bundler shows the same diagnostic.\n const fail = (problem: ProblemDiagnostic | undefined, message: string) =>\n new Diagnostics.Error({ ...(problem ?? { code: Diagnostics.code.unknown, severity: 'error' }), message: `[${name}] ${message}` })\n\n async function readConfigs(): Promise<Array<UserConfig>> {\n if (options?.config) return [options.config]\n\n const file = findConfigFile()\n if (!file) {\n throw new Diagnostics.Error({\n code: Diagnostics.code.inputRequired,\n severity: 'error',\n message: `[${name}] Config is not set`,\n help: 'Pass your Kubb config as the `config` option of the plugin, or add a `kubb.config.ts`.',\n location: { kind: 'config' },\n })\n }\n return loadConfigFile<UserConfig>({ file, cli: {} })\n }\n\n // Loaded once per instance, like the generation below: restart the build after editing the config file.\n let loaded: ReturnType<typeof readConfigs> | undefined\n const loadConfigs = () => (loaded ??= readConfigs())\n\n async function runBuild() {\n for (const config of (await loadConfigs()).filter((config) => config.input)) {\n const result = await createKubb(applyDefaults(config) as Config, { hooks }).generate()\n if (result.success) continue\n\n const failedCount = Diagnostics.failedPlugins(result.diagnostics).length\n const firstError = result.diagnostics.filter(Diagnostics.isProblem).find((diagnostic) => diagnostic.severity === 'error')\n throw fail(firstError, failedCount > 0 ? `Build Error with ${failedCount} failed plugins` : (firstError?.message ?? 'Build failed'))\n }\n }\n\n // A rerun with `output.clean` loops webpack and Rspack watchers, so generate once per instance.\n let generation: Promise<void> | undefined\n\n return [\n {\n name,\n enforce: 'pre',\n apply: meta.framework === 'vite' ? 'build' : undefined,\n async buildStart() {\n generation ??= runBuild().catch((error: unknown) => {\n generation = undefined\n throw error\n })\n await generation\n },\n },\n {\n name: `${name}:import`,\n enforce: 'pre',\n loadInclude: (id) => specFilePattern.test(id),\n async load(id) {\n try {\n const config = selectConfig({ configs: await loadConfigs(), fileName: id, cwd: process.cwd() })\n if (!config) {\n throw new Diagnostics.Error({\n code: Diagnostics.code.unknown,\n severity: 'error',\n message: `[${name}] No Kubb config applies to ${id}`,\n help: 'Set `input` of a config to this spec, or add a config without `input` to serve every imported spec.',\n location: { kind: 'config' },\n })\n }\n const { text, errors } = await generateModule({ root: path.dirname(id), input: id, config })\n if (errors.length) throw fail(errors[0], `${id}: ${errors[0]!.message}`)\n\n // Bundlers do not strip types from a `.yaml` module, so hand them JavaScript.\n return stripTypes(text, `${id}.ts`)\n } catch (error) {\n // unplugin's webpack and Rspack loader never settles when `load` throws, so report the error instead.\n if (meta.framework !== 'webpack' && meta.framework !== 'rspack') throw error\n this.error(error as Error)\n return 'export {}'\n }\n },\n },\n ]\n}\n"],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { UserConfig } from "@kubb/core";
2
2
  import { UnpluginFactory } from "unplugin";
3
- //#region src/unpluginFactory.d.ts
4
3
  export type Options = {
5
4
  /**
6
5
  * Kubb config passed to the unplugin entry point. When not set, the plugin loads
@@ -25,5 +24,4 @@ export declare function applyDefaults<TInput>(config: UserConfig<TInput>): UserC
25
24
  * imported {@link specFilePattern} file as one module. Without `config`, it loads `kubb.config.*`.
26
25
  */
27
26
  export declare const unpluginFactory: UnpluginFactory<Options | undefined, true>;
28
- //#endregion
29
27
  //# sourceMappingURL=unpluginFactory.d.ts.map
@@ -1 +1 @@
1
- export { t as applyDefaults, n as unpluginFactory } from "./unpluginFactory-uoTNZoUA.js";
1
+ export { t as applyDefaults, n as unpluginFactory } from "./unpluginFactory-BXVWsHOt.js";
package/dist/vite.d.ts CHANGED
@@ -1,6 +1,4 @@
1
1
  import { Options } from "./unpluginFactory.js";
2
- //#region src/vite.d.ts
3
2
  declare const _default: (options?: Options | undefined) => import("vite").Plugin<any>[] | import("vite").Plugin<any>;
4
- //#endregion
5
3
  export { _default as default };
6
4
  //# sourceMappingURL=vite.d.ts.map
package/dist/vite.js CHANGED
@@ -1,8 +1,7 @@
1
- import { n as unpluginFactory } from "./unpluginFactory-uoTNZoUA.js";
1
+ import { n as unpluginFactory } from "./unpluginFactory-BXVWsHOt.js";
2
2
  import { createVitePlugin } from "unplugin";
3
- //#region src/vite.ts
3
+ // src/vite.ts
4
4
  var vite_default = createVitePlugin(unpluginFactory);
5
- //#endregion
6
5
  export { vite_default as default };
7
6
 
8
7
  //# sourceMappingURL=vite.js.map
package/dist/webpack.d.ts CHANGED
@@ -1,6 +1,4 @@
1
1
  import { Options } from "./unpluginFactory.js";
2
- //#region src/webpack.d.ts
3
2
  declare const _default: (options?: Options | undefined) => import("webpack").WebpackPluginInstance;
4
- //#endregion
5
3
  export { _default as default };
6
4
  //# sourceMappingURL=webpack.d.ts.map
package/dist/webpack.js CHANGED
@@ -1,8 +1,7 @@
1
- import { n as unpluginFactory } from "./unpluginFactory-uoTNZoUA.js";
1
+ import { n as unpluginFactory } from "./unpluginFactory-BXVWsHOt.js";
2
2
  import { createWebpackPlugin } from "unplugin";
3
- //#region src/webpack.ts
3
+ // src/webpack.ts
4
4
  var webpack_default = createWebpackPlugin(unpluginFactory);
5
- //#endregion
6
5
  export { webpack_default as default };
7
6
 
8
7
  //# sourceMappingURL=webpack.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "unplugin-kubb",
3
- "version": "5.14.6",
3
+ "version": "5.15.0",
4
4
  "description": "Integration of Kubb for Vite, webpack, Rollup, Rolldown, Rspack, esbuild, Farm, Nuxt, and Astro.",
5
5
  "keywords": [
6
6
  "astro",
@@ -105,11 +105,11 @@
105
105
  "registry": "https://registry.npmjs.org/"
106
106
  },
107
107
  "dependencies": {
108
- "@kubb/adapter-oas": "5.14.6",
109
- "@kubb/core": "5.14.6",
110
- "@kubb/parser-md": "5.14.6",
111
- "@kubb/parser-ts": "5.14.6",
112
- "@kubb/plugin-barrel": "5.14.6",
108
+ "@kubb/adapter-oas": "5.15.0",
109
+ "@kubb/core": "5.15.0",
110
+ "@kubb/parser-md": "5.15.0",
111
+ "@kubb/parser-ts": "5.15.0",
112
+ "@kubb/plugin-barrel": "5.15.0",
113
113
  "jiti": "^2.7.0",
114
114
  "unplugin": "^3.4.0",
115
115
  "yuku-codegen": "^0.19.0",
@@ -118,15 +118,15 @@
118
118
  "devDependencies": {
119
119
  "@farmfe/core": "^1.7.11",
120
120
  "@internals/shared": "0.0.1",
121
- "@kubb/ast": "5.14.6",
121
+ "@kubb/ast": "5.15.0",
122
122
  "@nuxt/kit": "^4.6.2",
123
123
  "@nuxt/schema": "^4.6.2",
124
124
  "@rspack/core": "^2.2.9",
125
125
  "esbuild": "^0.28.2",
126
- "rolldown": "^1.2.14",
127
- "rollup": "^4.64.12",
126
+ "rolldown": "^1.2.15",
127
+ "rollup": "^4.65.0",
128
128
  "vite": "^8.3.5",
129
- "webpack": "^5.112.0"
129
+ "webpack": "^5.112.2"
130
130
  },
131
131
  "peerDependencies": {
132
132
  "@farmfe/core": "^1.7.0",