diff options
| author | Leo Goetz <dev@leogtz.de> | 2026-05-24 13:37:55 +0200 |
|---|---|---|
| committer | Leo Goetz <dev@leogtz.de> | 2026-05-24 13:37:55 +0200 |
| commit | e765e1acdfe8e25c41b267eedd878c739d3e5261 (patch) | |
| tree | 9a6bd76623f42b0bb800e42394736480a630ce79 /src/utils | |
| parent | ca8537af0ab596fddd8d72e6630f278326ef5360 (diff) | |
Diffstat (limited to 'src/utils')
| -rw-r--r-- | src/utils/config.ts | 14 | ||||
| -rw-r--r-- | src/utils/email.ts | 32 |
2 files changed, 24 insertions, 22 deletions
diff --git a/src/utils/config.ts b/src/utils/config.ts index 62080f7..0706312 100644 --- a/src/utils/config.ts +++ b/src/utils/config.ts @@ -3,7 +3,7 @@ import fs from "fs/promises"; import type { Config } from "../types.js"; const configPath: string = new URL( - `${os.homedir()}/.config/dephelp/`, + `${os.homedir()}/.config/dephelp`, import.meta.url, ).pathname; @@ -34,15 +34,11 @@ export const getConfig = async (): Promise<Config> => { export const initConfig = async () => { try { - await fs.access(configPath); + await fs.access(configFile); + console.log(`You already have a config at: ${configFile}`); } catch { - await fs.mkdir(configPath); - } - - try { + await fs.mkdir(configPath, { recursive: true }); await fs.writeFile(`${configFile}`, JSON.stringify(sampleConfig, null, 2)); - console.log(`Config got generated in /.config/dephelp/config.json`); - } catch (error) { - console.error(error); + console.log(`Config got generated: ${configFile}`); } }; diff --git a/src/utils/email.ts b/src/utils/email.ts index 828603b..54fd591 100644 --- a/src/utils/email.ts +++ b/src/utils/email.ts @@ -1,18 +1,24 @@ import type { Config, EmailConfig } from "../types.js"; import { getConfig } from "./config.js"; -const config: Config = await getConfig(); +export const getEmailConfig = async (): Promise<EmailConfig> => { + const config: Config = await getConfig(); -export const emailConfig: EmailConfig = { - host: config.email!.host, - port: config.email!.port, - secure: config.email!.secure, - auth: { - user: config.email!.auth.user, - pass: config.email!.auth.pass, - }, - senderEmail: config.email!.senderEmail, - senderName: config.email!.senderName, - subject: config.email!.subject, - reciever: config.email!.reciever, + if (!config.email) { + throw new Error("Email configuration is missing in config.json"); + } + + return { + host: config.email.host, + port: config.email.port, + secure: config.email.secure, + auth: { + user: config.email.auth.user, + pass: config.email.auth.pass, + }, + senderEmail: config.email.senderEmail, + senderName: config.email.senderName, + subject: config.email.subject, + reciever: config.email.reciever, + }; }; |
