pub mod client;
pub mod controller;
pub mod render;
pub mod safe_hud;
pub mod state;
mod handle;
pub use client::SpinnerClient;
pub use controller::SpinnerController;
use handle::SpinnerHandle;
use safe_hud::SafeHud;
#[must_use]
pub fn start(title: impl Into<String>) -> (SpinnerClient, SpinnerController) {
let safe_hud = SafeHud::new(title);
let handle = SpinnerHandle::spawn(safe_hud.clone());
let client = SpinnerClient::new(safe_hud.clone());
let controller = SpinnerController::new(handle, safe_hud);
(client, controller)
}