@szegedsw/lib-node
Version:
A little framework published by Szeged Software Zrt. in order to enhance api endpoint security and create reuseable code. Email module, Logging system, and much more. Further improvements are expected.
27 lines • 1.21 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.sessionConfig = void 0;
const express_session_1 = __importDefault(require("express-session"));
const id_generation_1 = require("../functions/id-generation");
// eslint-disable-next-line @typescript-eslint/no-var-requires
const KnexSessionStore = require("connect-session-knex")(express_session_1.default);
// const memoryStore: any = require("memorystore")(session);
exports.sessionConfig = (env, genId, knex, tablename) => express_session_1.default({
genid: (req) => req.params.sessionId || (genId && genId()) || id_generation_1.genHexId(),
secret: env.cookieSecret || id_generation_1.genSyncId(),
name: env.cookieName,
// store: new memoryStore({ checkPeriod: 7200000 }),
store: new KnexSessionStore({ knex, tablename }),
resave: true,
rolling: true,
saveUninitialized: true,
cookie: {
httpOnly: env.cookieHttponly,
secure: env.cookieSecure,
maxAge: env.sessionTimeout,
},
});
//# sourceMappingURL=session-config.js.map