use anyhow::Result;
use crate::tui::app::App;
use crate::tui::config_overlay::{
config_info_overlay, config_init_overlay, config_paths_overlay, config_status_overlay,
database_stats_overlay,
};
impl App {
pub(super) fn show_config_status(&mut self) -> Result<()> {
self.pending_shortcut.clear();
self.overlay = Some(config_status_overlay(&self.store)?);
Ok(())
}
pub(super) fn show_config_info(&mut self) -> Result<()> {
self.pending_shortcut.clear();
self.overlay = Some(config_info_overlay(&self.store)?);
Ok(())
}
pub(super) fn show_config_paths(&mut self) -> Result<()> {
self.pending_shortcut.clear();
self.overlay = Some(config_paths_overlay(&self.store)?);
Ok(())
}
pub(super) async fn show_database_stats(&mut self) -> Result<()> {
self.pending_shortcut.clear();
self.store.load_database_stats().await?;
self.overlay = Some(database_stats_overlay(&self.store)?);
Ok(())
}
pub(super) fn begin_config_init(&mut self) -> Result<()> {
self.pending_shortcut.clear();
self.overlay = Some(config_init_overlay()?);
Ok(())
}
pub(super) fn submit_config_init(&mut self) -> Result<()> {
let message = self.store.init_config()?;
self.set_success(message);
Ok(())
}
}