// packages/cli/src/utils/config.ts import { mkdir, writeFile, readFile } from "fs/promises"; import { join } from "path"; import { homedir } from "os"; const CONFIG_DIR = join(homedir(), ".miso"); const CONFIG_FILE = join(CONFIG_DIR, "org.json"); export interface OrgConfig { alias: string; instanceUrl: string; accessToken: string; auraToken: string; savedAt: number; cookies: { name: string; value: string }[]; } async function ensureConfigDir(): Promise { await mkdir(CONFIG_DIR, { recursive: true }); } export async function saveOrgConfig( alias: string, instanceUrl: string, accessToken: string, auraToken: string, cookies: { name: string; value: string }[] ): Promise { const config: OrgConfig = { alias, instanceUrl, accessToken, auraToken, cookies, savedAt: Date.now(), }; await ensureConfigDir(); await writeFile(CONFIG_FILE, JSON.stringify(config, null, 2)); } export async function getCurrentOrg(): Promise { try { const data = await readFile(CONFIG_FILE, "utf-8"); return JSON.parse(data); } catch (error) { return null; } }