feat: add data dir option
This commit is contained in:
+7
-3
@@ -3,13 +3,18 @@ import fs from "node:fs";
|
||||
import https from "node:https";
|
||||
import { createRequire } from "node:module";
|
||||
import path from "node:path";
|
||||
import { fileURLToPath } from "node:url";
|
||||
import { promisify } from "node:util";
|
||||
import type { Email } from "./types/email.ts";
|
||||
import type { Folder } from "./types/folder.ts";
|
||||
import type { LoginConfig } from "./types/login_config.ts";
|
||||
|
||||
let inMemoryPassword: string | null = null;
|
||||
let dataDir: string = "./data";
|
||||
|
||||
export function initDataDir(dir: string): void {
|
||||
dataDir = path.resolve(dir);
|
||||
fs.mkdirSync(dataDir, { recursive: true });
|
||||
}
|
||||
|
||||
export function setPassword(password: string): void {
|
||||
inMemoryPassword = password;
|
||||
@@ -74,8 +79,7 @@ ${body}
|
||||
}
|
||||
|
||||
function configFilePath(): string {
|
||||
const dir = path.dirname(fileURLToPath(import.meta.url));
|
||||
return path.join(dir, "config.json");
|
||||
return path.join(dataDir, "config.json");
|
||||
}
|
||||
|
||||
export function loadConfig(): LoginConfig {
|
||||
|
||||
Reference in New Issue
Block a user