@bee.js/node
Version:
A JavaScript framework for making Node.js API´s
39 lines (32 loc) • 1 kB
JavaScript
const express = require("express");
const log = require("./log");
const route = require("../WEB/route");
const freeRoute = require("../WEB/freeRoute");
module.exports = function () {
if (!global.routes) return;
const router = express.Router();
const controllers = global.controllers;
global.routes?.map((r) => {
let controller =
typeof r.controller !== "string"
? r.controller
: r.controller.split(".").reduce((obj, i) => {
return obj && obj[i]
? obj[i]
: (log(
`The controller '${i}' is not found in '${r.controller}'`,
1
),
() => null);
}, controllers);
!router[r.method || "get"]
? console.log(`ERROR: method not found`, r)
: router[r.method || "get"](
r.route,
r.free ? freeRoute : route,
controller
);
});
log(`${Object.keys(global.routes).length} route(s)`);
return router;
};