19 lines
491 B
Python
19 lines
491 B
Python
from __future__ import annotations
|
|
|
|
from typing import Iterable
|
|
|
|
from core.models import Message
|
|
|
|
|
|
def normalize_message_text(message: Message) -> str:
|
|
text = str(getattr(message, "text", "") or "").strip()
|
|
return text or "(no text)"
|
|
|
|
|
|
def plain_text_lines(messages: Iterable[Message]) -> list[str]:
|
|
return [normalize_message_text(message) for message in list(messages)]
|
|
|
|
|
|
def plain_text_blob(messages: Iterable[Message]) -> str:
|
|
return "\n".join(plain_text_lines(messages))
|