edc-web-ui 0.3.1

A Rust Web interface with patternfly-yew client for EDC
use crate::main_application::MainView;
use edc_web_components::contexts::{EdcConnectorContextProvider, EdcIdentityHubContextProvider};
use patternfly_yew::prelude::*;
use yew::prelude::*;

#[derive(Properties, PartialEq, Clone)]
pub struct LoggedInApplicationProps {
  pub management_url: String,
  pub participant_id: String,
  pub api_key: Option<String>,
  pub onlogout: Callback<()>,
}

#[component()]
pub fn LoggedInApplication(props: &LoggedInApplicationProps) -> Html {
  html!(
    <EdcConnectorContextProvider
      management_url={props.management_url.clone()}
      api_key={props.api_key.clone()}
    >
      <EdcIdentityHubContextProvider participant_id={props.participant_id.clone()}>
        <BackdropViewer>
          <MainView onlogout={props.onlogout.clone()} />
        </BackdropViewer>
      </EdcIdentityHubContextProvider>
    </EdcConnectorContextProvider>
  )
}