edc_web_components/pages/
new_transfer_processes.rs1use crate::components::CreateTransferProcess;
2use patternfly_yew::prelude::*;
3use yew::prelude::*;
4
5#[derive(Clone, Debug, PartialEq, Properties)]
6pub struct NewTransferProcessPageProps {
7 #[prop_or("New Transfer Process".to_string())]
8 pub title: String,
9 #[prop_or(None)]
10 pub tag_line: Option<String>,
11 #[prop_or_default]
12 pub contract_agreement_id: Option<String>,
13 #[prop_or_default]
14 pub counter_party_address: Option<String>,
15 pub on_create: Callback<String>,
16}
17
18#[component]
19pub fn NewTransferProcessPage(props: &NewTransferProcessPageProps) -> Html {
20 let tag_line = props
21 .tag_line
22 .as_ref()
23 .map(|tag_line| html!(<p>{ tag_line }</p>))
24 .unwrap_or_default();
25
26 html!(
27 <>
28 <Title level={Level::H2} size={Size::XXXLarge}>{ &props.title }</Title>
29 { tag_line }
30 <CreateTransferProcess
31 contract_agreement_id={props.contract_agreement_id.clone()}
32 counter_party_address={props.counter_party_address.clone()}
33 on_create={props.on_create.clone()}
34 />
35 </>
36 )
37}