pib-viewer 0.5.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_router::Link;
use oparl_types::Person;

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

#[derive(Debug, Clone, PartialEq, Props)]
pub struct PersonProps {
    person: Person,
}

#[component]
pub fn Person(props: PersonProps) -> Element {
    rsx! {
        span {
            Link {
                to: Route::Person { person_url: UrlEncoded::from(props.person.id) },
                if let Some(name) = props.person.name {
                    "{name}"
                } else {
                    i {
                        "Unknown"
                    }
                }
            }
        }
    }
}