use ratatui::widgets::ListState; use crate::config::*; use crate::logger::*; pub enum AppRenderDir { Vertical, Horizontal, } pub enum MenuState { Main, List, } pub enum CurrentState { Lookup, Menu, } pub struct App { pub domain_input: String, pub whois_info: Vec, pub dns_info: Vec, pub render_direction: AppRenderDir, pub current_state: CurrentState, pub menu_state: MenuState, pub config: Config, pub state: ListState, } impl App { pub fn new() -> App { App { domain_input: String::new(), whois_info: vec![], dns_info: vec![], render_direction: AppRenderDir::Vertical, current_state: CurrentState::Lookup, menu_state: MenuState::Main, config: Config::load(), state: ListState::default(), } } }