import os from "os"; import fs from "fs/promises"; import type { Config } from "../types.js"; const configPath: string = new URL( `${os.homedir()}/.config/dephelp/`, import.meta.url, ).pathname; const configFile: string = `${configPath}/config.json`; const sampleConfig: Config = { path: "/your/projects/ (absolute path!)", email: { host: "mail.example.com", port: 587, secure: true, auth: { user: "example", pass: "example-password", }, senderEmail: "audit@example.com", senderName: "Dependency Reporter", subject: "Your Project(s) are insecure!", reciever: "your@beautiful.email", }, }; export const getConfig = async (): Promise => { const content = await fs.readFile(configFile, { encoding: "utf8" }); const config: Config = JSON.parse(content); return config; }; export const initConfig = async () => { try { await fs.access(configPath); } catch { await fs.mkdir(configPath); } try { await fs.writeFile(`${configFile}`, JSON.stringify(sampleConfig, null, 2)); console.log(`Config got generated in /.config/dephelp/config.json`); } catch (error) { console.error(error); } };