import yaml import os CONFIG_PATH = os.path.join(os.path.dirname(os.path.abspath(__file__)), "config.yaml") _defaults = { "homeassistant": { "url": "ws://homeassistant.local:8123/api/websocket", "token": "", }, "pages": [], } def load_config(path=None): p = path or CONFIG_PATH with open(p, "r") as f: cfg = yaml.safe_load(f) if not cfg: cfg = {} for k, v in _defaults.items(): if k not in cfg: cfg[k] = v return cfg def save_config(cfg, path=None): p = path or CONFIG_PATH with open(p, "w") as f: yaml.dump(cfg, f, default_flow_style=False, sort_keys=False)