create-koa-server
Version:
Koa API/WEB server
15 lines (13 loc) • 713 B
JavaScript
const R = require('ramda');
const fs = require('fs');
const path = require('path');
const constants = require('../../../constants');
const toCamelCase = require('../../../utils/to-camel-case');
const getDirectories = R.curry(require('../../../utils/get-directories'))(fs, path);
const getHooks = R.curry(require('../../get-middlewares'))(require, getDirectories, toCamelCase);
const handleError = require('./handle-error');
const getHandler = R.curry(require('./get-handler'))(Object.keys, getHooks);
const createErrorHandler = R.curry(require('./create'))(path, getHandler, constants.HOOKS_ERROR_HANDLER_FOLDER, handleError);
module.exports = {
register: R.curry(require('./register'))(createErrorHandler)
};