bridgets
Version:
<p align="center"> <a href="https://bridgets.co"> <img src="http://bridgets.co/assets/logo-short.svg" height="48" /> <h1 align="center">BridgeTS</h1> </a> </p>
35 lines • 1.48 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createRoutes = void 0;
const Controller_1 = require("../Controller");
const Errors_1 = require("../Errors");
const Utilities_1 = require("../Utilities");
const defaultServerRoutes = {
'not-found': {
endpoint: (0, Controller_1.handler)({
resolve: () => (0, Errors_1.httpError)('Not Found', 'Root not found'),
}),
},
};
const createRoutes = (routes, serverRoutes = defaultServerRoutes, prefix = '') => {
Object.entries(routes).forEach(([name, subRoutesOrController]) => {
if ((0, Utilities_1.isController)(subRoutesOrController))
createRoutesFromController(subRoutesOrController, serverRoutes, `${prefix}/${name}`);
else
(0, exports.createRoutes)(subRoutesOrController, serverRoutes, `${prefix}/${name}`);
});
return serverRoutes;
};
exports.createRoutes = createRoutes;
const createRoutesFromController = (controller, serverRoutes, prefix) => {
Object.entries(controller).forEach(([name, endpoint]) => {
if ((0, Utilities_1.isBridgeHandler)(endpoint))
serverRoutes[`${prefix}/${name}`] = {
endpoint: endpoint,
filesConfig: endpoint.filesConfig,
};
else if ((0, Utilities_1.isController)(endpoint))
createRoutesFromController(endpoint, serverRoutes, `${prefix}/${name}`);
});
};
//# sourceMappingURL=convert.js.map