badan-expresser
Version:
A serializer to use Express as the core of Badan
49 lines (48 loc) • 1.11 kB
JavaScript
// src/index.ts
import { BadanCoreSerializer, Respond, Use, Responder } from "badan-serializers";
import { Response, Application, Request } from "express";
var BadanExpresser = class extends BadanCoreSerializer {
responder(res) {
return (status, response) => {
res.status(status).send(response);
};
}
user(app) {
return (...handlers) => {
app.use(handlers);
};
}
setListener(app, api) {
switch (api.method) {
case "All":
app.all(api.url, api.handler);
break;
case "Get":
app.get(api.url, api.handler);
break;
case "Post":
app.post(api.url, api.handler);
break;
case "Put":
app.put(api.url, api.handler);
break;
case "Delete":
app.delete(api.url, api.handler);
break;
case "Patch":
app.patch(api.url, api.handler);
break;
default:
throw Error(`invalid requiste method: '${api.method}' at ${api.constructor.name}`);
}
}
};
export {
Application,
BadanExpresser,
Request,
Respond,
Responder,
Response,
Use
};