use crate::models::note::Note;
use crate::util::note_fmt;
use crate::{services, util};
use colored::Colorize;
fn format_result(score: i64, note: &Note) -> String {
format!(
"{}\t{}",
format!("(score {score: >3})").purple().bold(),
vec![
note_fmt::format_note_icons(note),
note_fmt::format_note_summary(note)
]
.iter()
.filter(|s| !s.is_empty())
.cloned()
.collect::<Vec<String>>()
.join(" ")
)
}
pub fn find_fuzzy(text: &str) {
let results = services::notes::fuzzy_search(text);
println!(
"{}",
util::search::format_search_results(text, &results, |tuple| format_result(tuple.0, &tuple.1))
);
}