fork of hey-api/openapi-ts because I need some additional things
1import { definePluginConfig } from '@hey-api/shared';
2
3import { resolveOperations } from './operations';
4import { handler } from './plugin';
5import type { HeyApiSdkPlugin } from './types';
6
7export const defaultConfig: HeyApiSdkPlugin['Config'] = {
8 config: {
9 // auth: true,
10 client: true,
11 comments: true,
12 includeInEntry: true,
13 paramsStructure: 'grouped',
14 // responseStyle: 'fields',
15 // transformer: false,
16 // validator: false,
17 },
18 handler,
19 name: '@hey-api/python-sdk',
20 resolveConfig: (plugin, context) => {
21 if (plugin.config.client) {
22 if (typeof plugin.config.client === 'boolean') {
23 plugin.config.client = context.pluginByTag('client', {
24 defaultPlugin: '@hey-api/client-httpx',
25 });
26 }
27 plugin.dependencies.add(plugin.config.client!);
28 } else {
29 plugin.config.client = false;
30 }
31 // if (plugin.config.transformer) {
32 // if (typeof plugin.config.transformer === 'boolean') {
33 // plugin.config.transformer = context.pluginByTag('transformer');
34 // }
35 // plugin.dependencies.add(plugin.config.transformer!);
36 // } else {
37 // plugin.config.transformer = false;
38 // }
39 // if (typeof plugin.config.validator !== 'object') {
40 // plugin.config.validator = {
41 // request: plugin.config.validator,
42 // response: plugin.config.validator,
43 // };
44 // }
45 // if (plugin.config.validator.request) {
46 // if (typeof plugin.config.validator.request === 'boolean') {
47 // plugin.config.validator.request = context.pluginByTag('validator');
48 // }
49 // plugin.dependencies.add(plugin.config.validator.request!);
50 // } else {
51 // plugin.config.validator.request = false;
52 // }
53 // if (plugin.config.validator.response) {
54 // if (typeof plugin.config.validator.response === 'boolean') {
55 // plugin.config.validator.response = context.pluginByTag('validator');
56 // }
57 // plugin.dependencies.add(plugin.config.validator.response!);
58 // } else {
59 // plugin.config.validator.response = false;
60 // }
61 // plugin.config.examples = resolveExamples(plugin.config, context);
62 plugin.config.operations = resolveOperations(plugin.config, context);
63 },
64};
65
66/**
67 * Type helper for `@hey-api/python-sdk` plugin, returns {@link Plugin.Config} object
68 */
69export const defineConfig = definePluginConfig(defaultConfig);