feat: Implement Clean Architecture code generation with Mustache templates
- Added `clean-arch.generator.ts` for generating models, mappers, repositories, use cases, and providers based on OpenAPI specs. - Introduced `dto.generator.ts` to invoke `openapi-generator-cli` for generating DTOs and organizing them. - Created `report.generator.ts` to generate a JSON report of the generation process. - Implemented `analyzer.ts` for parsing OpenAPI/Swagger files and extracting relevant data. - Defined new types in `cli.types.ts`, `generation.types.ts`, `openapi.types.ts`, and `swagger.types.ts` for better type safety. - Added utility functions in `filesystem.ts` for creating directory structures and cleaning up temporary files. - Developed logging utilities in `logger.ts` for better console output. - Included OpenAPI generator checks and installation in `openapi-generator.ts`. - Added type mapping utility in `type-mapper.ts` for converting OpenAPI types to TypeScript types. - Updated `package.json` scripts to lint all TypeScript files. - Modified `tsconfig.json` to include all TypeScript files in the project.
This commit is contained in:
27
src/types/generation.types.ts
Normal file
27
src/types/generation.types.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
/**
|
||||
* Contadores acumulativos de artefactos generados durante el proceso.
|
||||
*/
|
||||
export interface GeneratedCount {
|
||||
models: number;
|
||||
repositories: number;
|
||||
mappers: number;
|
||||
useCases: number;
|
||||
providers: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* Reporte final de generación que se persiste como `generation-report.json`.
|
||||
*/
|
||||
export interface GenerationReport {
|
||||
timestamp: string;
|
||||
tags: number;
|
||||
endpoints: number;
|
||||
outputDirectory: string;
|
||||
structure: {
|
||||
dtos: number;
|
||||
repositories: number;
|
||||
mappers: number;
|
||||
useCases: number;
|
||||
providers: number;
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user