1 | const express = require('express');
|
2 |
|
3 | const Response = {
|
4 | status (code = 200) {
|
5 | return this;
|
6 | },
|
7 | send (body = {}) {
|
8 | return this;
|
9 | },
|
10 | json (value) {
|
11 | return this;
|
12 | }
|
13 | }
|
14 |
|
15 | const ROUTE_METHOD = Object.freeze({
|
16 | GET: 'get',
|
17 | POST: 'post',
|
18 | UPDATE: 'update',
|
19 | DELETE: 'delete'
|
20 | });
|
21 |
|
22 | const createOptions = {
|
23 | path: '/sample',
|
24 | method: 'get',
|
25 | handler: async (req, res = Response, next) => {
|
26 | return res.status(200).send({});
|
27 | }
|
28 | };
|
29 |
|
30 | const RouterFactory = {
|
31 | create (options = createOptions) {
|
32 | const router = express.Router();
|
33 | return router[options.method](options.path, options.handler);
|
34 | }
|
35 | }
|
36 |
|
37 | exports.RouterFactory = RouterFactory;
|
38 | exports.ROUTE_METHOD = ROUTE_METHOD; |
\ | No newline at end of file |