iris_reader/ui/search.rs
1use ratatui::text::{Line, Span};
2
3use crate::{search::SearchState, theme::Theme};
4
5pub fn prompt(search: &SearchState, theme: &Theme) -> Line<'static> {
6 let count = if search.query.is_empty() {
7 String::new()
8 } else {
9 format!(" {} matches", search.matches.len())
10 };
11 Line::from(vec![
12 Span::styled("/", theme.search_prompt),
13 Span::styled(search.query.clone(), theme.document),
14 Span::styled("_", theme.search_prompt),
15 Span::styled(count, theme.status),
16 ])
17}