use ratatui_core::text::Line;
use crate::highlight::CodeHighlighter;
use crate::style::{StyleSheet, Theme};
use crate::term::image::ImageData;
use super::image::ImageResolver;
use super::to_lines;
pub(super) fn text(line: &Line) -> String {
line.spans.iter().map(|s| s.content.as_ref()).collect()
}
pub(super) fn plain(source: &str, width: u16) -> Vec<String> {
to_lines(
source,
width,
&Theme::default(),
&StyleSheet::default(),
CodeHighlighter::Plain,
)
.iter()
.map(text)
.collect()
}
pub(super) struct StubResolver;
impl ImageResolver for StubResolver {
fn resolve(&self, url: &str) -> Option<ImageData> {
url.contains("ok")
.then(|| ImageData::from_rgba(4, 2, vec![0u8; 4 * 2 * 4]).unwrap())
}
}