tspace-spear
Version:
tspace-spear is a lightweight, high-performance API framework for Node.js that leverages the native HTTP server and supports uWebSockets.js (C++) for maximum speed and efficiency.
106 lines (92 loc) • 1.93 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.ControllerTemplate = void 0;
exports.ControllerTemplate = `
import {
type T,
Controller,
Middleware,
Get,
Post,
Put,
Delete,
ValidateDto
} from "tspace-spear";
import { CatService } from "./cat.service";
import { CreateCatDto , UpdateCatDto } from "./cat.dto";
import { LogMiddleware } from "../../common/middlewares/log.middleware";
class CatController {
constructor(
private catService: CatService = new CatService()
) {}
async index() {
const cats = this.catService.index();
return { cats };
}
async show({
params
}: T.Context<{
params: {
id: number;
};
}>) {
const cat = this.catService.show(+params.id);
return { cat }
}
async create({
body
}: T.Context<{
body: CreateCatDto;
}>) {
const cat = this.catService
.create({
name: body.name,
age: body.age
});
return { cat };
}
async update({
params,
body
}: T.Context<{
params: {
id: number;
};
body: UpdateCatDto;
}>) {
const cat = this.catService
.update(+params.id, {
name: body.name,
age: body.age
});
return { cat }
}
async remove({
params
}: T.Context<{
params: {
id: number;
};
}>) {
const deleted = this.catService
.remove(+params.id);
return deleted;
}
}
export { CatController };
export default CatController;
`;
//# sourceMappingURL=template.js.map