From fef2bcb6e2bb463b551429b566219a416f1143e5 Mon Sep 17 00:00:00 2001 From: allburov Date: Sun, 16 Jul 2023 16:25:41 +0700 Subject: [PATCH] [core] create directory before saving file --- src/core/storage.core.ts | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/core/storage.core.ts b/src/core/storage.core.ts index 936f94b4..adfe6767 100644 --- a/src/core/storage.core.ts +++ b/src/core/storage.core.ts @@ -39,11 +39,22 @@ class LocalSessionConfigRepository extends SessionConfigRepository { return undefined; } - const content = await fs.readFile(filepath, 'utf-8'); + // Try to load config + let content; + try { + content = await fs.readFile(filepath, 'utf-8'); + } catch (error) { + return undefined; + } + return JSON.parse(content); } async save(sessionName: string, config: SessionConfig) { + // Create folder if not exist + const folder = this.storage.getFolderPath(sessionName); + await fs.mkdir(folder, { recursive: true }); + // Save config const filepath = this.getFilePath(sessionName); const content = JSON.stringify(config || null); await fs.writeFile(filepath, content);