@kubb/plugin-oas 3.0.0-alpha.13 → 3.0.0-alpha.14

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.
Files changed (64) hide show
  1. package/dist/OperationGenerator-BqfyX5-8.d.cts +554 -0
  2. package/dist/OperationGenerator-BqfyX5-8.d.ts +554 -0
  3. package/dist/{Schema-B1vcPGiK.d.ts → Schema-BgpIlA79.d.cts} +2 -2
  4. package/dist/{Schema-DoSFh7Qd.d.cts → Schema-ExMIJOhD.d.ts} +2 -2
  5. package/dist/{chunk-G35AGMCZ.cjs → chunk-2S2QRJPN.cjs} +4 -4
  6. package/dist/{chunk-G35AGMCZ.cjs.map → chunk-2S2QRJPN.cjs.map} +1 -1
  7. package/dist/chunk-6BDSF64V.cjs +97 -0
  8. package/dist/chunk-6BDSF64V.cjs.map +1 -0
  9. package/dist/chunk-A2T3ZQOU.js +93 -0
  10. package/dist/chunk-A2T3ZQOU.js.map +1 -0
  11. package/dist/{chunk-5QUCRUOD.js → chunk-B4WIB7UG.js} +4 -4
  12. package/dist/chunk-B4WIB7UG.js.map +1 -0
  13. package/dist/{chunk-NW6726BC.js → chunk-E2Z4IRAI.js} +4 -4
  14. package/dist/{chunk-NW6726BC.js.map → chunk-E2Z4IRAI.js.map} +1 -1
  15. package/dist/chunk-EJHTGW4H.js +6 -0
  16. package/dist/{chunk-N3GACHZX.js.map → chunk-EJHTGW4H.js.map} +1 -1
  17. package/dist/{chunk-TEEWKGS3.js → chunk-OSKSFHO2.js} +3 -3
  18. package/dist/{chunk-TEEWKGS3.js.map → chunk-OSKSFHO2.js.map} +1 -1
  19. package/dist/chunk-SMB4EG6V.cjs +8 -0
  20. package/dist/{chunk-KW7GCBTZ.cjs.map → chunk-SMB4EG6V.cjs.map} +1 -1
  21. package/dist/{chunk-JRZ3YURA.cjs → chunk-XELSZPJC.cjs} +4 -4
  22. package/dist/{chunk-JRZ3YURA.cjs.map → chunk-XELSZPJC.cjs.map} +1 -1
  23. package/dist/{chunk-FFFMYESV.cjs → chunk-YSPJF26N.cjs} +27 -27
  24. package/dist/chunk-YSPJF26N.cjs.map +1 -0
  25. package/dist/components.cjs +6 -6
  26. package/dist/components.d.cts +3 -5
  27. package/dist/components.d.ts +3 -5
  28. package/dist/components.js +3 -3
  29. package/dist/generators.cjs +15 -0
  30. package/dist/generators.cjs.map +1 -0
  31. package/dist/generators.d.cts +10 -0
  32. package/dist/generators.d.ts +10 -0
  33. package/dist/generators.js +6 -0
  34. package/dist/generators.js.map +1 -0
  35. package/dist/hooks.cjs +12 -12
  36. package/dist/hooks.d.cts +3 -4
  37. package/dist/hooks.d.ts +3 -4
  38. package/dist/hooks.js +3 -3
  39. package/dist/index.cjs +69 -100
  40. package/dist/index.cjs.map +1 -1
  41. package/dist/index.d.cts +2 -4
  42. package/dist/index.d.ts +2 -4
  43. package/dist/index.js +57 -93
  44. package/dist/index.js.map +1 -1
  45. package/dist/utils.cjs +9 -9
  46. package/dist/utils.d.cts +2 -2
  47. package/dist/utils.d.ts +2 -2
  48. package/dist/utils.js +3 -3
  49. package/package.json +18 -10
  50. package/src/components/Schema.tsx +1 -2
  51. package/src/generators/index.ts +1 -0
  52. package/src/generators/jsonGenerator.ts +30 -0
  53. package/src/plugin.ts +63 -43
  54. package/src/types.ts +18 -12
  55. package/dist/OperationGenerator-By5WOmWB.d.ts +0 -165
  56. package/dist/OperationGenerator-Gd1X7wUz.d.cts +0 -165
  57. package/dist/SchemaMapper-sGcY1xL5.d.cts +0 -247
  58. package/dist/SchemaMapper-sGcY1xL5.d.ts +0 -247
  59. package/dist/chunk-5QUCRUOD.js.map +0 -1
  60. package/dist/chunk-FFFMYESV.cjs.map +0 -1
  61. package/dist/chunk-KW7GCBTZ.cjs +0 -8
  62. package/dist/chunk-N3GACHZX.js +0 -6
  63. package/dist/types-CZTUCaE5.d.cts +0 -145
  64. package/dist/types-CZTUCaE5.d.ts +0 -145
@@ -0,0 +1,97 @@
1
+ 'use strict';
2
+
3
+ var chunkYSPJF26N_cjs = require('./chunk-YSPJF26N.cjs');
4
+ var chunkXELSZPJC_cjs = require('./chunk-XELSZPJC.cjs');
5
+ var transformers = require('@kubb/core/transformers');
6
+ var react = require('@kubb/react');
7
+
8
+ // src/generators/index.ts
9
+ chunkXELSZPJC_cjs.init_cjs_shims();
10
+
11
+ // src/generators/jsonGenerator.ts
12
+ chunkXELSZPJC_cjs.init_cjs_shims();
13
+
14
+ // src/generator.tsx
15
+ chunkXELSZPJC_cjs.init_cjs_shims();
16
+ var import_jsx_runtime = chunkXELSZPJC_cjs.__toESM(chunkYSPJF26N_cjs.require_jsx_runtime(), 1);
17
+ function createGenerator(parseOptions) {
18
+ return parseOptions;
19
+ }
20
+ function createReactGenerator(parseOptions) {
21
+ return {
22
+ ...parseOptions,
23
+ async operations({ instance, options, operations, operationsByMethod }) {
24
+ if (!parseOptions.Operations) {
25
+ return [];
26
+ }
27
+ const { pluginManager, oas, plugin, mode } = instance.context;
28
+ const root = react.createRoot({
29
+ logger: pluginManager.logger
30
+ });
31
+ root.render(
32
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(react.App, { pluginManager, plugin, mode, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(chunkYSPJF26N_cjs.Oas, { oas, operations, generator: instance, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(parseOptions.Operations, { operations, instance, operationsByMethod, options }) }) })
33
+ );
34
+ return root.files;
35
+ },
36
+ async operation({ instance, operation, options }) {
37
+ if (!parseOptions.Operation) {
38
+ return [];
39
+ }
40
+ const { pluginManager, oas, plugin, mode } = instance.context;
41
+ const root = react.createRoot({
42
+ logger: pluginManager.logger
43
+ });
44
+ root.render(
45
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(react.App, { pluginManager, plugin: { ...plugin, options }, mode, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(chunkYSPJF26N_cjs.Oas, { oas, operations: [operation], generator: instance, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(chunkYSPJF26N_cjs.Oas.Operation, { operation, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(parseOptions.Operation, { operation, options, instance }) }) }) })
46
+ );
47
+ return root.files;
48
+ },
49
+ async schema({ instance, schema, name, options }) {
50
+ if (!parseOptions.Schema) {
51
+ return [];
52
+ }
53
+ const { pluginManager, oas, plugin, mode } = instance.context;
54
+ const root = react.createRoot({
55
+ logger: pluginManager.logger
56
+ });
57
+ const tree = instance.parse({ schema, name });
58
+ root.render(
59
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(react.App, { pluginManager, plugin: { ...plugin, options }, mode, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(chunkYSPJF26N_cjs.Oas, { oas, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(chunkYSPJF26N_cjs.Oas.Schema, { name, value: schema, tree, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(parseOptions.Schema, { schema, options, instance, name }) }) }) })
60
+ );
61
+ return root.files;
62
+ }
63
+ };
64
+ }
65
+
66
+ // src/generators/jsonGenerator.ts
67
+ var jsonGenerator = createGenerator({
68
+ name: "plugin-oas",
69
+ async schema({ schema, name, instance }) {
70
+ const { pluginManager, plugin } = instance.context;
71
+ const file = pluginManager.getFile({
72
+ name: transformers.camelCase(name),
73
+ extName: ".json",
74
+ mode: "split",
75
+ pluginKey: plugin.key
76
+ });
77
+ return [
78
+ {
79
+ ...file,
80
+ sources: [
81
+ {
82
+ name: transformers.camelCase(name),
83
+ isExportable: false,
84
+ isIndexable: false,
85
+ value: JSON.stringify(schema)
86
+ }
87
+ ]
88
+ }
89
+ ];
90
+ }
91
+ });
92
+
93
+ exports.createGenerator = createGenerator;
94
+ exports.createReactGenerator = createReactGenerator;
95
+ exports.jsonGenerator = jsonGenerator;
96
+ //# sourceMappingURL=chunk-6BDSF64V.cjs.map
97
+ //# sourceMappingURL=chunk-6BDSF64V.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/generators/index.ts","../src/generators/jsonGenerator.ts","../src/generator.tsx"],"names":["init_cjs_shims","__toESM","require_jsx_runtime","createRoot","App","Oas","camelCase"],"mappings":"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","file":"chunk-6BDSF64V.cjs","sourcesContent":["export { jsonGenerator } from './jsonGenerator.ts'\n","import { camelCase } from '@kubb/core/transformers'\nimport { createGenerator } from '../generator.tsx'\nimport type { PluginOas } from '../types.ts'\n\nexport const jsonGenerator = createGenerator<PluginOas>({\n name: 'plugin-oas',\n async schema({ schema, name, instance }) {\n const { pluginManager, plugin } = instance.context\n const file = pluginManager.getFile({\n name: camelCase(name),\n extName: '.json',\n mode: 'split',\n pluginKey: plugin.key,\n })\n\n return [\n {\n ...file,\n sources: [\n {\n name: camelCase(name),\n isExportable: false,\n isIndexable: false,\n value: JSON.stringify(schema),\n },\n ],\n },\n ]\n },\n})\n","import type { PluginFactoryOptions } from '@kubb/core'\nimport type * as KubbFile from '@kubb/fs/types'\nimport type { Operation, SchemaObject } from '@kubb/oas'\nimport { Oas } from '@kubb/plugin-oas/components'\nimport { App, createRoot } from '@kubb/react'\nimport type { KubbNode } from '@kubb/react/types'\nimport type { OperationGenerator } from './OperationGenerator.ts'\nimport type { SchemaGenerator, SchemaGeneratorOptions } from './SchemaGenerator.ts'\nimport type { OperationsByMethod } from './types.ts'\n\ntype OperationsProps<TOptions extends PluginFactoryOptions> = {\n instance: Omit<OperationGenerator<TOptions>, 'build'>\n options: TOptions['resolvedOptions']\n operations: Array<Operation>\n operationsByMethod: OperationsByMethod\n}\n\ntype OperationProps<TOptions extends PluginFactoryOptions> = {\n instance: Omit<OperationGenerator<TOptions>, 'build'>\n options: TOptions['resolvedOptions']\n operation: Operation\n}\n\ntype SchemaProps<TOptions extends PluginFactoryOptions> = {\n instance: Omit<SchemaGenerator<SchemaGeneratorOptions, TOptions>, 'build'>\n name: string\n schema: SchemaObject\n options: TOptions['resolvedOptions']\n}\n\nexport type GeneratorOptions<TOptions extends PluginFactoryOptions> = {\n name: string\n operations?: (props: OperationsProps<TOptions>) => Promise<KubbFile.File[]>\n operation?: (props: OperationProps<TOptions>) => Promise<KubbFile.File[]>\n schema?: (props: SchemaProps<TOptions>) => Promise<KubbFile.File[]>\n}\n\nexport type Generator<TOptions extends PluginFactoryOptions> = GeneratorOptions<TOptions>\n\nexport function createGenerator<TOptions extends PluginFactoryOptions>(parseOptions: GeneratorOptions<TOptions>): Generator<TOptions> {\n return parseOptions\n}\n\nexport type ReactGeneratorOptions<TOptions extends PluginFactoryOptions> = {\n name: string\n Operations?: (props: OperationsProps<TOptions>) => KubbNode\n Operation?: (props: OperationProps<TOptions>) => KubbNode\n Schema?: (props: SchemaProps<TOptions>) => KubbNode\n /**\n * Combine all react nodes and only render ones(to string or render)\n */\n render?: () => any\n}\n\nexport function createReactGenerator<TOptions extends PluginFactoryOptions>(parseOptions: ReactGeneratorOptions<TOptions>): Generator<TOptions> {\n return {\n ...parseOptions,\n async operations({ instance, options, operations, operationsByMethod }) {\n if (!parseOptions.Operations) {\n return []\n }\n\n const { pluginManager, oas, plugin, mode } = instance.context\n const root = createRoot({\n logger: pluginManager.logger,\n })\n\n root.render(\n <App pluginManager={pluginManager} plugin={plugin} mode={mode}>\n <Oas oas={oas} operations={operations} generator={instance}>\n <parseOptions.Operations operations={operations} instance={instance} operationsByMethod={operationsByMethod} options={options} />\n </Oas>\n </App>,\n )\n\n return root.files\n },\n async operation({ instance, operation, options }) {\n if (!parseOptions.Operation) {\n return []\n }\n\n const { pluginManager, oas, plugin, mode } = instance.context\n const root = createRoot({\n logger: pluginManager.logger,\n })\n\n root.render(\n <App pluginManager={pluginManager} plugin={{ ...plugin, options }} mode={mode}>\n <Oas oas={oas} operations={[operation]} generator={instance}>\n <Oas.Operation operation={operation}>\n <parseOptions.Operation operation={operation} options={options} instance={instance} />\n </Oas.Operation>\n </Oas>\n </App>,\n )\n\n return root.files\n },\n async schema({ instance, schema, name, options }) {\n if (!parseOptions.Schema) {\n return []\n }\n\n const { pluginManager, oas, plugin, mode } = instance.context\n const root = createRoot({\n logger: pluginManager.logger,\n })\n\n const tree = instance.parse({ schema, name })\n\n root.render(\n <App pluginManager={pluginManager} plugin={{ ...plugin, options }} mode={mode}>\n <Oas oas={oas}>\n <Oas.Schema name={name} value={schema} tree={tree}>\n <parseOptions.Schema schema={schema} options={options} instance={instance} name={name} />\n </Oas.Schema>\n </Oas>\n </App>,\n )\n\n return root.files\n },\n }\n}\n"]}
@@ -0,0 +1,93 @@
1
+ import { require_jsx_runtime, Oas } from './chunk-B4WIB7UG.js';
2
+ import { init_esm_shims, __toESM } from './chunk-E2Z4IRAI.js';
3
+ import { camelCase } from '@kubb/core/transformers';
4
+ import { createRoot, App } from '@kubb/react';
5
+
6
+ // src/generators/index.ts
7
+ init_esm_shims();
8
+
9
+ // src/generators/jsonGenerator.ts
10
+ init_esm_shims();
11
+
12
+ // src/generator.tsx
13
+ init_esm_shims();
14
+ var import_jsx_runtime = __toESM(require_jsx_runtime(), 1);
15
+ function createGenerator(parseOptions) {
16
+ return parseOptions;
17
+ }
18
+ function createReactGenerator(parseOptions) {
19
+ return {
20
+ ...parseOptions,
21
+ async operations({ instance, options, operations, operationsByMethod }) {
22
+ if (!parseOptions.Operations) {
23
+ return [];
24
+ }
25
+ const { pluginManager, oas, plugin, mode } = instance.context;
26
+ const root = createRoot({
27
+ logger: pluginManager.logger
28
+ });
29
+ root.render(
30
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(App, { pluginManager, plugin, mode, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Oas, { oas, operations, generator: instance, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(parseOptions.Operations, { operations, instance, operationsByMethod, options }) }) })
31
+ );
32
+ return root.files;
33
+ },
34
+ async operation({ instance, operation, options }) {
35
+ if (!parseOptions.Operation) {
36
+ return [];
37
+ }
38
+ const { pluginManager, oas, plugin, mode } = instance.context;
39
+ const root = createRoot({
40
+ logger: pluginManager.logger
41
+ });
42
+ root.render(
43
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(App, { pluginManager, plugin: { ...plugin, options }, mode, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Oas, { oas, operations: [operation], generator: instance, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Oas.Operation, { operation, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(parseOptions.Operation, { operation, options, instance }) }) }) })
44
+ );
45
+ return root.files;
46
+ },
47
+ async schema({ instance, schema, name, options }) {
48
+ if (!parseOptions.Schema) {
49
+ return [];
50
+ }
51
+ const { pluginManager, oas, plugin, mode } = instance.context;
52
+ const root = createRoot({
53
+ logger: pluginManager.logger
54
+ });
55
+ const tree = instance.parse({ schema, name });
56
+ root.render(
57
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(App, { pluginManager, plugin: { ...plugin, options }, mode, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Oas, { oas, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Oas.Schema, { name, value: schema, tree, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(parseOptions.Schema, { schema, options, instance, name }) }) }) })
58
+ );
59
+ return root.files;
60
+ }
61
+ };
62
+ }
63
+
64
+ // src/generators/jsonGenerator.ts
65
+ var jsonGenerator = createGenerator({
66
+ name: "plugin-oas",
67
+ async schema({ schema, name, instance }) {
68
+ const { pluginManager, plugin } = instance.context;
69
+ const file = pluginManager.getFile({
70
+ name: camelCase(name),
71
+ extName: ".json",
72
+ mode: "split",
73
+ pluginKey: plugin.key
74
+ });
75
+ return [
76
+ {
77
+ ...file,
78
+ sources: [
79
+ {
80
+ name: camelCase(name),
81
+ isExportable: false,
82
+ isIndexable: false,
83
+ value: JSON.stringify(schema)
84
+ }
85
+ ]
86
+ }
87
+ ];
88
+ }
89
+ });
90
+
91
+ export { createGenerator, createReactGenerator, jsonGenerator };
92
+ //# sourceMappingURL=chunk-A2T3ZQOU.js.map
93
+ //# sourceMappingURL=chunk-A2T3ZQOU.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/generators/index.ts","../src/generators/jsonGenerator.ts","../src/generator.tsx"],"names":[],"mappings":"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","file":"chunk-A2T3ZQOU.js","sourcesContent":["export { jsonGenerator } from './jsonGenerator.ts'\n","import { camelCase } from '@kubb/core/transformers'\nimport { createGenerator } from '../generator.tsx'\nimport type { PluginOas } from '../types.ts'\n\nexport const jsonGenerator = createGenerator<PluginOas>({\n name: 'plugin-oas',\n async schema({ schema, name, instance }) {\n const { pluginManager, plugin } = instance.context\n const file = pluginManager.getFile({\n name: camelCase(name),\n extName: '.json',\n mode: 'split',\n pluginKey: plugin.key,\n })\n\n return [\n {\n ...file,\n sources: [\n {\n name: camelCase(name),\n isExportable: false,\n isIndexable: false,\n value: JSON.stringify(schema),\n },\n ],\n },\n ]\n },\n})\n","import type { PluginFactoryOptions } from '@kubb/core'\nimport type * as KubbFile from '@kubb/fs/types'\nimport type { Operation, SchemaObject } from '@kubb/oas'\nimport { Oas } from '@kubb/plugin-oas/components'\nimport { App, createRoot } from '@kubb/react'\nimport type { KubbNode } from '@kubb/react/types'\nimport type { OperationGenerator } from './OperationGenerator.ts'\nimport type { SchemaGenerator, SchemaGeneratorOptions } from './SchemaGenerator.ts'\nimport type { OperationsByMethod } from './types.ts'\n\ntype OperationsProps<TOptions extends PluginFactoryOptions> = {\n instance: Omit<OperationGenerator<TOptions>, 'build'>\n options: TOptions['resolvedOptions']\n operations: Array<Operation>\n operationsByMethod: OperationsByMethod\n}\n\ntype OperationProps<TOptions extends PluginFactoryOptions> = {\n instance: Omit<OperationGenerator<TOptions>, 'build'>\n options: TOptions['resolvedOptions']\n operation: Operation\n}\n\ntype SchemaProps<TOptions extends PluginFactoryOptions> = {\n instance: Omit<SchemaGenerator<SchemaGeneratorOptions, TOptions>, 'build'>\n name: string\n schema: SchemaObject\n options: TOptions['resolvedOptions']\n}\n\nexport type GeneratorOptions<TOptions extends PluginFactoryOptions> = {\n name: string\n operations?: (props: OperationsProps<TOptions>) => Promise<KubbFile.File[]>\n operation?: (props: OperationProps<TOptions>) => Promise<KubbFile.File[]>\n schema?: (props: SchemaProps<TOptions>) => Promise<KubbFile.File[]>\n}\n\nexport type Generator<TOptions extends PluginFactoryOptions> = GeneratorOptions<TOptions>\n\nexport function createGenerator<TOptions extends PluginFactoryOptions>(parseOptions: GeneratorOptions<TOptions>): Generator<TOptions> {\n return parseOptions\n}\n\nexport type ReactGeneratorOptions<TOptions extends PluginFactoryOptions> = {\n name: string\n Operations?: (props: OperationsProps<TOptions>) => KubbNode\n Operation?: (props: OperationProps<TOptions>) => KubbNode\n Schema?: (props: SchemaProps<TOptions>) => KubbNode\n /**\n * Combine all react nodes and only render ones(to string or render)\n */\n render?: () => any\n}\n\nexport function createReactGenerator<TOptions extends PluginFactoryOptions>(parseOptions: ReactGeneratorOptions<TOptions>): Generator<TOptions> {\n return {\n ...parseOptions,\n async operations({ instance, options, operations, operationsByMethod }) {\n if (!parseOptions.Operations) {\n return []\n }\n\n const { pluginManager, oas, plugin, mode } = instance.context\n const root = createRoot({\n logger: pluginManager.logger,\n })\n\n root.render(\n <App pluginManager={pluginManager} plugin={plugin} mode={mode}>\n <Oas oas={oas} operations={operations} generator={instance}>\n <parseOptions.Operations operations={operations} instance={instance} operationsByMethod={operationsByMethod} options={options} />\n </Oas>\n </App>,\n )\n\n return root.files\n },\n async operation({ instance, operation, options }) {\n if (!parseOptions.Operation) {\n return []\n }\n\n const { pluginManager, oas, plugin, mode } = instance.context\n const root = createRoot({\n logger: pluginManager.logger,\n })\n\n root.render(\n <App pluginManager={pluginManager} plugin={{ ...plugin, options }} mode={mode}>\n <Oas oas={oas} operations={[operation]} generator={instance}>\n <Oas.Operation operation={operation}>\n <parseOptions.Operation operation={operation} options={options} instance={instance} />\n </Oas.Operation>\n </Oas>\n </App>,\n )\n\n return root.files\n },\n async schema({ instance, schema, name, options }) {\n if (!parseOptions.Schema) {\n return []\n }\n\n const { pluginManager, oas, plugin, mode } = instance.context\n const root = createRoot({\n logger: pluginManager.logger,\n })\n\n const tree = instance.parse({ schema, name })\n\n root.render(\n <App pluginManager={pluginManager} plugin={{ ...plugin, options }} mode={mode}>\n <Oas oas={oas}>\n <Oas.Schema name={name} value={schema} tree={tree}>\n <parseOptions.Schema schema={schema} options={options} instance={instance} name={name} />\n </Oas.Schema>\n </Oas>\n </App>,\n )\n\n return root.files\n },\n }\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { __commonJS, init_esm_shims, __toESM, getSchemaFactory, getSchemas } from './chunk-NW6726BC.js';
1
+ import { __commonJS, init_esm_shims, __toESM, getSchemaFactory, getSchemas } from './chunk-E2Z4IRAI.js';
2
2
  import { BaseGenerator } from '@kubb/core';
3
3
  import transformers, { pascalCase } from '@kubb/core/transformers';
4
4
  import { getUniqueName } from '@kubb/core/utils';
@@ -3797,7 +3797,7 @@ var SchemaContext = createContext({
3797
3797
  function Schema({ name, value, tree = [], children }) {
3798
3798
  return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(SchemaContext.Provider, { value: { name, schema: value, tree }, children });
3799
3799
  }
3800
- Schema.File = function({ output, isTypeOnly, children }) {
3800
+ Schema.File = function({ isTypeOnly, children }) {
3801
3801
  const { plugin, pluginManager, mode } = useApp();
3802
3802
  const { name } = useSchema();
3803
3803
  if (mode === "single") {
@@ -3929,5 +3929,5 @@ react/cjs/react-jsx-runtime.development.js:
3929
3929
  */
3930
3930
 
3931
3931
  export { Oas, Operation, Schema, SchemaGenerator, isKeyword, require_jsx_runtime, schemaKeywords, useSchema };
3932
- //# sourceMappingURL=chunk-5QUCRUOD.js.map
3933
- //# sourceMappingURL=chunk-5QUCRUOD.js.map
3932
+ //# sourceMappingURL=chunk-B4WIB7UG.js.map
3933
+ //# sourceMappingURL=chunk-B4WIB7UG.js.map