"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.createApp = createApp; const express_1 = __importDefault(require("express")); const express_session_1 = __importDefault(require("express-session")); const node_path_1 = __importDefault(require("node:path")); const node_url_1 = require("node:url"); const loadConfig_js_1 = require("./config/loadConfig.js"); const boardRouter_js_1 = require("./routes/boardRouter.js"); const __dirname = node_path_1.default.dirname((0, node_url_1.fileURLToPath)(import.meta.url)); function createApp() { const appCfg = (0, loadConfig_js_1.loadAppConfig)(); const app = (0, express_1.default)(); if (appCfg.trustProxy) { app.set("trust proxy", 1); } app.use((0, express_session_1.default)({ name: "board.sid", secret: appCfg.sessionSecret, resave: false, saveUninitialized: false, cookie: { path: "/", httpOnly: true, secure: appCfg.cookieSecure, sameSite: appCfg.cookieSameSite, maxAge: appCfg.sessionMaxAgeMs, }, })); app.set("views", node_path_1.default.join(__dirname, "../views")); app.set("view engine", "ejs"); app.use("/board", (0, boardRouter_js_1.createBoardRouter)(appCfg)); app.use((_req, res) => { res.status(404).send("Not Found"); }); return { app, appCfg }; } //# sourceMappingURL=app.js.map