@hv-kit/hexpress
Version:
facilitates typescript backend development with express
55 lines • 2.41 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.runServer = void 0;
const express_1 = __importDefault(require("express"));
const express_promise_router_1 = __importDefault(require("express-promise-router"));
const cors_1 = __importDefault(require("cors"));
const morgan_1 = __importDefault(require("morgan"));
// import bodyParser from 'body-parser';
const helmet_1 = __importDefault(require("helmet"));
const express_session_1 = __importDefault(require("express-session"));
// import cookieSession from 'cookie-session';
const cookie_parser_1 = __importDefault(require("cookie-parser"));
const csurf_1 = __importDefault(require("csurf"));
const hexpress_config_json_1 = __importDefault(require("../../../../hexpress.config.json"));
const string_1 = require("../scripts/string");
const hexpress_1 = require("../hexpress");
function runServer(allModules, allMiddlewares) {
const app = (0, express_1.default)();
const router = (0, express_promise_router_1.default)();
const staticRep = hexpress_config_json_1.default.server.static_rep;
const port = hexpress_config_json_1.default.server.port;
const csrfProtection = (0, csurf_1.default)({ cookie: true });
app.set('view options', {
layout: false,
});
app.set('trust proxy', 1);
app.disable('x-powered-by');
app.use(router);
app.use(express_1.default.json());
app.use((0, cookie_parser_1.default)());
// app.use(csrfProtection)
app.use((0, morgan_1.default)('combined'));
app.use((0, cors_1.default)());
app.use((0, helmet_1.default)({
contentSecurityPolicy: false,
}));
app.use((0, express_session_1.default)({
secret: (0, string_1.RandomF)(10, 'alphanumeric'),
resave: false,
saveUninitialized: true,
cookie: { secure: true },
}));
app.set('port', port);
allMiddlewares.forEach((middleware) => {
app.use(middleware);
});
app.use('/assets/', express_1.default.static(staticRep));
(0, hexpress_1.InitController)(app, allModules);
app.listen(port, () => console.log(`App listening at http://localhost:${port}`));
}
exports.runServer = runServer;
//# sourceMappingURL=server.js.map