Testing ratatui

This commit is contained in:
Marco De Araujo 2025-12-24 07:36:23 -04:00
parent 843d05bec9
commit ae9065a1e0
7 changed files with 25 additions and 47 deletions

View file

@ -1,12 +1,11 @@
use anyhow::Result;
use clap::Parser;
use std::result::Result::Ok;
mod i18n;
use i18n::init_locales;
mod api;
use crate::core::unify_data;
use api::UptimeKumaClient;
mod i18n;
use api::UptimeKumaEndpoints;
use crate::ui::App;
mod core;
mod data;
mod ui;
@ -22,39 +21,11 @@ struct Args {
}
fn main() -> Result<()> {
init_locales()?;
i18n::init_locales()?;
let args = Args::parse();
let client = UptimeKumaClient::new();
let endpoints = UptimeKumaEndpoints::new(&args.base_url, &args.slug)?;
let heartbeat_data = client.fetch_heartbeat(&endpoints)?;
let status_page_data = client.fetch_status_page(&endpoints)?;
let unified_data = unify_data(&status_page_data, &heartbeat_data);
println!("Title: {}", unified_data.title);
for monitor in unified_data.monitors {
println!("Monitor ID: {}", monitor.monitor_info.id);
println!("Nome: {}", monitor.monitor_info.name);
println!(
"Uptime Service: {}",
monitor.uptime_data.expect("Formgen?").get_perc_formated()
);
println!(
"Status atual: {}",
monitor
.heartbeats
.last()
.map(|h| if h.status == 1 {
"✅ Online"
} else {
"❌ Offline"
})
.unwrap_or("❓ Sem dados")
);
}
let mut app = App::new(endpoints)?;
app.run()?;
Ok(())
}