Something went wrong. Try again.
fork of hey-api/openapi-ts because I need some additional things
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445import type { OperationPathStrategy, OperationStructureStrategy } from '@hey-api/shared';import { OperationPath, OperationStrategy } from '@hey-api/shared';
import type { HeyApiSdkPlugin } from '../types';
function resolvePath(plugin: HeyApiSdkPlugin['Instance']): OperationPathStrategy { if (plugin.config.operations.nesting === 'id') { return OperationPath.id(); }
if (plugin.config.operations.nesting === 'operationId') { return OperationPath.fromOperationId({ delimiters: plugin.config.operations.nestingDelimiters, fallback: OperationPath.id(), }); }
return plugin.config.operations.nesting;}
export function resolveStrategy(plugin: HeyApiSdkPlugin['Instance']): OperationStructureStrategy { // if (plugin.config.operations.strategy === 'flat') { // return OperationStrategy.flat({ // path: (operation) => [resolvePath(plugin)(operation).join('.')], // }); // }
if (plugin.config.operations.strategy === 'single') { const root = plugin.config.operations.containerName; return OperationStrategy.single({ path: resolvePath(plugin), root: typeof root.name === 'string' ? root.name : (root.name?.('') ?? ''), }); }
if (plugin.config.operations.strategy === 'byTags') { return OperationStrategy.byTags({ fallback: plugin.config.operations.strategyDefaultTag, path: resolvePath(plugin), }); }
return plugin.config.operations.strategy;}