@alova/wormhole
Version:
More modern openAPI generating solution for alova.js
28 lines (27 loc) • 858 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.arrayTypeGenerator = arrayTypeGenerator;
const type_1 = require("../../../../type");
const utils_1 = require("./utils");
function arrayTypeGenerator(ast, ctx) {
const result = {
name: ast.keyName ?? '',
comment: (0, utils_1.setComment)(ast, ctx.options),
type: 'type',
code: '',
};
ctx.pathKey = '[]';
const paramsResult = ctx.next(ast.params, ctx.options);
const tsStr = (0, utils_1.getValue)(paramsResult, ctx.options);
if (ast.params.type !== type_1.ASTType.INTERFACE || tsStr === paramsResult.name) {
result.code = `(${tsStr})[]`;
}
else {
result.code = `Array<${tsStr}>`;
}
return result;
}
exports.default = {
type: type_1.ASTType.ARRAY,
generate: arrayTypeGenerator,
};