INNER CODE UNIT · Python
format_time
GHJJ123/brainrotguard · i18n/__init__.py:112
def format_time(hhmm: str | None, locale: str | None, time_format: str | None = None) -> str | None:
"""Locale-aware time formatting with optional explicit time format."""
if hhmm is None:
return None
try:
hour, minute = map(int, hhmm.split(":"))
except (ValueError, AttributeError):
return hhmm
if _uses_24h(locale, time_format):
return f"{hour:02d}:{minute:02d}"
suffix = "AM" if hour < 12 else "PM"
display_hour = hour % 12 or 12
if minute == 0:
return f"{display_hour} {suffix}"
return f"{display_hour}:{minute:02d} {suffix}"