fix: review import templates #33
@@ -188,7 +188,13 @@ export function generateCleanArchitecture(
|
||||
Object.keys(tagsMap).forEach((tag) => {
|
||||
const imports: { classname: string; classFilename: string; classVarName: string }[] = [];
|
||||
Object.keys(schemas).forEach((s) => {
|
||||
if (tagsMap[tag].some((op) => op.returnType === s || op.returnType === `Array<${s}>`)) {
|
||||
const usedAsReturn = tagsMap[tag].some(
|
||||
(op) => op.returnType === s || op.returnType === `Array<${s}>`
|
||||
);
|
||||
const usedAsParam = tagsMap[tag].some((op) =>
|
||||
op.allParams.some((p) => p.dataType === s || p.dataType === `Array<${s}>`)
|
||||
);
|
||||
if (usedAsReturn || usedAsParam) {
|
||||
imports.push({
|
||||
classname: s,
|
||||
classFilename: toCamelCase(s),
|
||||
|
||||
@@ -65,13 +65,21 @@ export interface OpenApiOperation {
|
||||
* Operación normalizada y lista para ser consumida por los templates Mustache.
|
||||
* Cada instancia representa un endpoint agrupado bajo un tag del API.
|
||||
*/
|
||||
export interface TagOperationParam {
|
||||
paramName: string;
|
||||
dataType: string;
|
||||
description: string;
|
||||
required: boolean;
|
||||
'-last': boolean;
|
||||
}
|
||||
|
||||
export interface TagOperation {
|
||||
nickname: string;
|
||||
summary: string;
|
||||
notes: string;
|
||||
httpMethod: string;
|
||||
path: string;
|
||||
allParams: unknown[];
|
||||
allParams: TagOperationParam[];
|
||||
hasQueryParams: boolean;
|
||||
queryParams: unknown[];
|
||||
hasBodyParam: boolean;
|
||||
|
||||
Reference in New Issue
Block a user