pib-viewer 0.8.0

A viewer for public governmental data served over OParl
// SPDX-FileCopyrightText: Politik im Blick developers
// SPDX-FileCopyrightText: Wolfgang Silbermayr <wolfgang@silbermayr.at>
//
// SPDX-License-Identifier: AGPL-3.0-or-later OR EUPL-1.2

use dioxus::prelude::{Props, component, dioxus_elements, rsx};
use dioxus_core::Element;
use dioxus_i18n::t;
use dioxus_router::Link;
use oparl_types::AgendaItem;

use crate::route::{Route, UrlEncoded};

#[derive(Debug, Clone, PartialEq, Props)]
pub struct AgendaItemProps {
    agenda_item: AgendaItem,
}

#[component]
pub fn AgendaItem(props: AgendaItemProps) -> Element {
    rsx! {
        Link {
            to: Route::AgendaItem{ agenda_item_url: UrlEncoded::from(props.agenda_item.id) },
            span {
                class: "infobox",
                span {
                    class: "label",
                    if let Some(name) = props.agenda_item.name {
                        "{name}"
                    } else {
                        i { { t!("unknown-name") } }
                    }
                }
            }
        }
    }
}