use dioxus::prelude::*;

#[derive(Clone, Routable, Debug, PartialEq, serde::Serialize, serde::Deserialize)]
#[rustfmt::skip]
enum Route {
    #[layout(AdminLayout)]
    #[route("/")]
    Home {},
}

pub fn App() -> Element {
    rsx! {
        Router::<Route> {}
    }
}

fn Home() -> Element {
    rsx! {
        h2 { "Hello!" }
    }
}

fn AdminLayout() -> Element {
    rsx! {
        h1 { "Admin UI" }
        SuspenseBoundary { fallback: |_context: SuspenseContext| rsx! { "..." },
            main { Outlet::<Route> {} }
        }
    }
}