from pathlib import Path from loguru import logger from ..config import PLACEHOLDER_MAP class QueryLoader: def __init__(self, placeholders: dict[str, str] | None = None): self.placeholders = placeholders or PLACEHOLDER_MAP def load(self, path: Path) -> str: logger.debug(f"Loading query from {path}") with open(path, "r") as f: query = f.read() for placeholder, value in self.placeholders.items(): query = query.replace(placeholder, value) return query