UNPKG

unleash-server

Version:

Unleash is an enterprise ready feature toggles service. It provides different strategies for handling feature toggles.

41 lines 1.46 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const express_session_1 = __importDefault(require("express-session")); const connect_session_knex_1 = __importDefault(require("connect-session-knex")); const date_fns_1 = require("date-fns"); function sessionDb(config, knex) { let store; const { db, cookieName } = config.session; const age = (0, date_fns_1.hoursToMilliseconds)(config.session.ttlHours) || (0, date_fns_1.hoursToMilliseconds)(48); const KnexSessionStore = (0, connect_session_knex_1.default)(express_session_1.default); if (db) { store = new KnexSessionStore({ tablename: 'unleash_session', createtable: false, knex, }); } else { store = new express_session_1.default.MemoryStore(); } return (0, express_session_1.default)({ name: cookieName, rolling: false, resave: false, saveUninitialized: false, store, secret: [config.server.secret], cookie: { path: config.server.baseUriPath === '' ? '/' : config.server.baseUriPath, secure: config.secureHeaders, maxAge: age, }, }); } exports.default = sessionDb; //# sourceMappingURL=session-db.js.map