- переименование в @gromlab/api-codegen, версия 1.0.3 - добавлена MIT лицензия - динамическое чтение версии из package.json - настроен build с копированием шаблонов и external biome - загрузка спецификации по URL для извлечения title - moduleNameFirstTag: true, cleanOutput: false
38 lines
1012 B
TypeScript
38 lines
1012 B
TypeScript
/**
|
|
* Конфигурация генератора API
|
|
*/
|
|
export interface GeneratorConfig {
|
|
/** Путь к файлу OpenAPI спецификации */
|
|
inputPath: string;
|
|
/** Путь для сохранения сгенерированных файлов */
|
|
outputPath: string;
|
|
/** Имя сгенерированного файла (без расширения) */
|
|
fileName?: string;
|
|
/** Генерировать SWR hooks для React */
|
|
useSwr?: boolean;
|
|
}
|
|
|
|
/**
|
|
* Валидация конфигурации генератора
|
|
*/
|
|
export function validateConfig(config: Partial<GeneratorConfig>): config is GeneratorConfig {
|
|
const errors: string[] = [];
|
|
|
|
if (!config.inputPath) {
|
|
errors.push('Input path is required (--input)');
|
|
}
|
|
|
|
if (!config.outputPath) {
|
|
errors.push('Output path is required (--output)');
|
|
}
|
|
|
|
if (errors.length > 0) {
|
|
throw new Error(`Configuration validation failed:\n${errors.map(e => ` - ${e}`).join('\n')}`);
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
|
|
|