use teloxide_core::types::Message;
use super::Renderer;
pub trait RenderMessageTextHelper {
#[must_use]
fn html_text(&self) -> Option<String>;
#[must_use]
fn markdown_text(&self) -> Option<String>;
#[must_use]
fn html_caption(&self) -> Option<String>;
#[must_use]
fn markdown_caption(&self) -> Option<String>;
}
impl RenderMessageTextHelper for Message {
fn html_text(&self) -> Option<String> {
self.text()
.zip(self.entities())
.map(|(text, entities)| Renderer::new(text, entities).as_html())
}
fn markdown_text(&self) -> Option<String> {
self.text()
.zip(self.entities())
.map(|(text, entities)| Renderer::new(text, entities).as_markdown())
}
fn html_caption(&self) -> Option<String> {
self.caption()
.zip(self.caption_entities())
.map(|(text, entities)| Renderer::new(text, entities).as_html())
}
fn markdown_caption(&self) -> Option<String> {
self.caption()
.zip(self.caption_entities())
.map(|(text, entities)| Renderer::new(text, entities).as_markdown())
}
}