# services/drafts.py
from typing import Dict, Any, Optional
from flask import session


def get_draft_store() -> Dict[str, Any]:
    if "drafts" not in session:
        session["drafts"] = {}
    return session["drafts"]


def save_draft(draft_id: str, data: Dict[str, Any]) -> None:
    drafts = get_draft_store()
    drafts[draft_id] = data
    session["drafts"] = drafts
    session.modified = True


def load_draft(draft_id: str) -> Optional[Dict[str, Any]]:
    return get_draft_store().get(draft_id)
