From 88547233e24876958799e73dbd34d8df0dadee97 Mon Sep 17 00:00:00 2001 From: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> Date: Thu, 27 Mar 2025 21:35:48 +1100 Subject: launcher: transparency action --- src/config/funcs.ts | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/config/funcs.ts') diff --git a/src/config/funcs.ts b/src/config/funcs.ts index 473c502..93a8ef5 100644 --- a/src/config/funcs.ts +++ b/src/config/funcs.ts @@ -1,4 +1,4 @@ -import { GLib, monitorFile, readFileAsync, Variable } from "astal"; +import { GLib, monitorFile, readFileAsync, Variable, writeFileAsync } from "astal"; import config from "."; import { loadStyleAsync } from "../../app"; import defaults from "./defaults"; @@ -92,3 +92,11 @@ export const initConfig = () => { monitorFile(CONFIG, () => updateConfig().catch(e => console.warn(`Invalid config: ${e}`))); updateConfig().catch(e => console.warn(`Invalid config: ${e}`)); }; + +export const setConfig = async (path: string, value: any) => { + const conf = JSON.parse(await readFileAsync(CONFIG)); + let obj = conf; + for (const p of path.split(".").slice(0, -1)) obj = obj[p]; + obj[path.split(".").at(-1)!] = value; + await writeFileAsync(CONFIG, JSON.stringify(conf, null, 4)); +}; -- cgit v1.2.3-freya