"""Formatting helpers used to convert things.""" from amberelectric.models.price_descriptor import PriceDescriptor DESCRIPTOR_MAP: dict[str, str] = { PriceDescriptor.SPIKE: "spike", PriceDescriptor.HIGH: "high", PriceDescriptor.NEUTRAL: "neutral", PriceDescriptor.LOW: "low", PriceDescriptor.VERYLOW: "very_low", PriceDescriptor.EXTREMELYLOW: "extremely_low", PriceDescriptor.NEGATIVE: "negative", } def normalize_descriptor(descriptor: PriceDescriptor | None) -> str | None: """Return the snake case versions of descriptor names. Returns None if the name is not recognized.""" if descriptor in DESCRIPTOR_MAP: return DESCRIPTOR_MAP[descriptor] return None def format_cents_to_dollars(cents: float) -> float: """Return a formatted conversion from cents to dollars.""" return round(cents / 100, 2)