use colored::{ColoredString, Colorize};
pub trait CatppuccinExt {
fn rosewater(&self) -> ColoredString;
fn flamingo(&self) -> ColoredString;
fn pink(&self) -> ColoredString;
fn mauve(&self) -> ColoredString;
fn ctp_red(&self) -> ColoredString;
fn maroon(&self) -> ColoredString;
fn peach(&self) -> ColoredString;
fn ctp_yellow(&self) -> ColoredString;
fn ctp_green(&self) -> ColoredString;
fn teal(&self) -> ColoredString;
fn sky(&self) -> ColoredString;
fn sapphire(&self) -> ColoredString;
fn ctp_blue(&self) -> ColoredString;
fn lavender(&self) -> ColoredString;
fn text(&self) -> ColoredString;
fn subtext1(&self) -> ColoredString;
fn subtext0(&self) -> ColoredString;
fn ctp_white(&self) -> ColoredString;
fn overlay2(&self) -> ColoredString;
fn overlay1(&self) -> ColoredString;
fn overlay0(&self) -> ColoredString;
fn surface2(&self) -> ColoredString;
fn surface1(&self) -> ColoredString;
fn surface0(&self) -> ColoredString;
}
impl<S: AsRef<str>> CatppuccinExt for S {
fn rosewater(&self) -> ColoredString {
self.as_ref().bright_white()
}
fn flamingo(&self) -> ColoredString {
self.as_ref().bright_red()
}
fn pink(&self) -> ColoredString {
self.as_ref().bright_magenta()
}
fn mauve(&self) -> ColoredString {
self.as_ref().bright_purple()
}
fn ctp_red(&self) -> ColoredString {
self.as_ref().bright_red()
}
fn maroon(&self) -> ColoredString {
self.as_ref().red()
}
fn peach(&self) -> ColoredString {
self.as_ref().bright_yellow()
}
fn ctp_yellow(&self) -> ColoredString {
self.as_ref().bright_yellow()
}
fn ctp_green(&self) -> ColoredString {
self.as_ref().bright_green()
}
fn teal(&self) -> ColoredString {
self.as_ref().cyan()
}
fn sky(&self) -> ColoredString {
self.as_ref().bright_cyan()
}
fn sapphire(&self) -> ColoredString {
self.as_ref().bright_cyan()
}
fn ctp_blue(&self) -> ColoredString {
self.as_ref().bright_blue()
}
fn lavender(&self) -> ColoredString {
self.as_ref().bright_purple()
}
fn text(&self) -> ColoredString {
self.as_ref().bright_white()
}
fn subtext1(&self) -> ColoredString {
self.as_ref().white()
}
fn subtext0(&self) -> ColoredString {
self.as_ref().white()
}
fn ctp_white(&self) -> ColoredString {
self.as_ref().bright_white()
}
fn overlay2(&self) -> ColoredString {
self.as_ref().white()
}
fn overlay1(&self) -> ColoredString {
self.as_ref().bright_black()
}
fn overlay0(&self) -> ColoredString {
self.as_ref().bright_black()
}
fn surface2(&self) -> ColoredString {
self.as_ref().bright_black()
}
fn surface1(&self) -> ColoredString {
self.as_ref().bright_black()
}
fn surface0(&self) -> ColoredString {
self.as_ref().bright_black()
}
}