use dioxus::prelude::{Props, component, dioxus_elements, rsx};
use dioxus_core::Element;
use dioxus_i18n::t;
use dioxus_router::Link;
use oparl_types::Body;
use crate::route::{Route, UrlEncoded};
#[derive(Debug, Clone, PartialEq, Props)]
pub struct BodyListProps {
bodies: Vec<Body>,
}
#[component]
pub fn BodyList(props: BodyListProps) -> Element {
rsx! {
div {
class: "card",
div {
class: "header",
h2 { { t!("bodies") } }
}
ul {
class: "sectional",
style: "list-style-type: '🏛️ '; padding-left: 1.5em;",
for body in props.bodies {
li {
key: "{body.id}",
Link {
to: Route::Body { body_url: UrlEncoded::from(body.id)},
"{body.name}"
}
}
}
}
}
}
}