"""File operation helpers""" import json import shutil def load(file: str) -> dict: """Load a json file directly as a dict""" with open(file) as f: return json.load(f) def save(file: str, content: dict): """ Save out a content dictionary to a file Stores it in an intermediary file first incase the dump fails """ intermediate = file + ".nxt" with open(intermediate, "w") as f: json.dump(content, f, indent=4) shutil.move(intermediate, file)