UNPKG

@kubb/plugin-oas

Version:
97 lines (93 loc) 3.87 kB
'use strict'; var chunkDEDONPUL_cjs = require('./chunk-DEDONPUL.cjs'); var chunkKXB5DUFD_cjs = require('./chunk-KXB5DUFD.cjs'); var transformers = require('@kubb/core/transformers'); var react = require('@kubb/react'); var jsxRuntime = require('@kubb/react/jsx-runtime'); function createGenerator(parseOptions) { return parseOptions; } function createReactGenerator(parseOptions) { return { ...parseOptions, async operations({ instance, options, operations, operationsByMethod }) { if (!parseOptions.Operations) { return []; } const { pluginManager, oas, plugin, mode } = instance.context; const root = react.createRoot({ logger: pluginManager.logger }); const Component = parseOptions.Operations.bind(this); root.render( /* @__PURE__ */ jsxRuntime.jsx(react.App, { pluginManager, plugin, mode, children: /* @__PURE__ */ jsxRuntime.jsx(chunkKXB5DUFD_cjs.Oas, { oas, operations, generator: instance, children: /* @__PURE__ */ jsxRuntime.jsx(Component, { operations, instance, operationsByMethod, options }) }) }) ); return root.files; }, async operation({ instance, operation, options }) { if (!parseOptions.Operation) { return []; } const { pluginManager, oas, plugin, mode } = instance.context; const root = react.createRoot({ logger: pluginManager.logger }); const Component = parseOptions.Operation.bind(this); root.render( /* @__PURE__ */ jsxRuntime.jsx(react.App, { pluginManager, plugin: { ...plugin, options }, mode, children: /* @__PURE__ */ jsxRuntime.jsx(chunkKXB5DUFD_cjs.Oas, { oas, operations: [operation], generator: instance, children: /* @__PURE__ */ jsxRuntime.jsx(chunkKXB5DUFD_cjs.Oas.Operation, { operation, children: /* @__PURE__ */ jsxRuntime.jsx(Component, { operation, options, instance }) }) }) }) ); return root.files; }, async schema({ instance, schema, options }) { if (!parseOptions.Schema) { return []; } const { pluginManager, oas, plugin, mode } = instance.context; const root = react.createRoot({ logger: pluginManager.logger }); const Component = parseOptions.Schema.bind(this); root.render( /* @__PURE__ */ jsxRuntime.jsx(react.App, { pluginManager, plugin: { ...plugin, options }, mode, children: /* @__PURE__ */ jsxRuntime.jsx(chunkKXB5DUFD_cjs.Oas, { oas, children: /* @__PURE__ */ jsxRuntime.jsx(chunkKXB5DUFD_cjs.Oas.Schema, { name: schema.name, value: schema.value, tree: schema.tree, children: /* @__PURE__ */ jsxRuntime.jsx(Component, { schema, options, instance }) }) }) }) ); return root.files; } }; } // src/generators/jsonGenerator.ts var jsonGenerator = createGenerator({ name: "plugin-oas", async schema({ schema, instance }) { const { pluginManager, plugin } = instance.context; const file = pluginManager.getFile({ name: transformers.camelCase(schema.name), extname: ".json", mode: "split", pluginKey: plugin.key }); return [ { ...file, sources: [ { name: transformers.camelCase(schema.name), isExportable: false, isIndexable: false, value: JSON.stringify(schema.value) } ], banner: chunkDEDONPUL_cjs.getBanner({ oas: instance.context.oas, output: plugin.options.output, config: pluginManager.config }), format: chunkDEDONPUL_cjs.getFooter({ oas: instance.context.oas, output: plugin.options.output }) } ]; } }); exports.createGenerator = createGenerator; exports.createReactGenerator = createReactGenerator; exports.jsonGenerator = jsonGenerator; //# sourceMappingURL=chunk-DUZZHEQI.cjs.map //# sourceMappingURL=chunk-DUZZHEQI.cjs.map