From e4556afcc9735e7dfbe9b947ea1e1e63df5ee355 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 18 Feb 2024 13:13:16 +0200 Subject: [PATCH] server-ts: Port services/session_secret --- src/routes/session_parser.js | 2 +- .../{session_secret.js => session_secret.ts} | 18 ++++++++++-------- 2 files changed, 11 insertions(+), 9 deletions(-) rename src/services/{session_secret.js => session_secret.ts} (55%) diff --git a/src/routes/session_parser.js b/src/routes/session_parser.js index a2e62e851..afe99fa2f 100644 --- a/src/routes/session_parser.js +++ b/src/routes/session_parser.js @@ -1,5 +1,5 @@ const session = require("express-session"); -const sessionSecret = require('../services/session_secret.js'); +const sessionSecret = require('../services/session_secret'); const dataDir = require('../services/data_dir'); const FileStore = require('session-file-store')(session); diff --git a/src/services/session_secret.js b/src/services/session_secret.ts similarity index 55% rename from src/services/session_secret.js rename to src/services/session_secret.ts index 16c1ed8c3..3721cf63f 100644 --- a/src/services/session_secret.js +++ b/src/services/session_secret.ts @@ -1,15 +1,17 @@ "use strict"; -const fs = require('fs'); -const crypto = require('crypto'); -const dataDir = require('./data_dir'); -const log = require('./log'); +import fs = require('fs'); +import crypto = require('crypto'); +import dataDir = require('./data_dir'); +import log = require('./log'); const sessionSecretPath = `${dataDir.TRILIUM_DATA_DIR}/session_secret.txt`; let sessionSecret; -function randomValueHex(len) { +const ENCODING = "ascii"; + +function randomValueHex(len: number) { return crypto.randomBytes(Math.ceil(len / 2)) .toString('hex') // convert to hexadecimal format .slice(0, len).toUpperCase(); // return required number of characters @@ -20,10 +22,10 @@ if (!fs.existsSync(sessionSecretPath)) { log.info("Generated session secret"); - fs.writeFileSync(sessionSecretPath, sessionSecret, 'ASCII'); + fs.writeFileSync(sessionSecretPath, sessionSecret, ENCODING); } else { - sessionSecret = fs.readFileSync(sessionSecretPath, 'ASCII'); + sessionSecret = fs.readFileSync(sessionSecretPath, ENCODING); } -module.exports = sessionSecret; +export = sessionSecret;