diff --git a/src/pages/provider_portal.rs b/src/pages/provider_portal.rs index 145901b..8dc2018 100644 --- a/src/pages/provider_portal.rs +++ b/src/pages/provider_portal.rs @@ -1,42 +1,71 @@ -use crate::components::{Banner, DashboardButton}; +use crate::components::{Banner, DashboardButton, DateList, Loading}; use leptos::prelude::*; +use leptos_oidc::{AuthLoaded, Authenticated}; +use crate::pages::api::get_important_dates; +use crate::pages::UnauthenticatedPage; #[component] pub fn ProviderPortal() -> impl IntoView { + let dates_resource = OnceResource::new(async move { + get_important_dates().await + }); + + let dates_list = RwSignal::new(Vec::new()); + + Effect::new(move || { + if let Some(Ok(mut dates)) = dates_resource.get() { + dates.sort_by_key(|info| info.date.get_status()); + dates_list.set(dates); + } + }); + view! { -
-
-
-
- - - -
-
- -
+ + +
+
+
+
+ + + +
+
+
+
+

Important Dates

+
+
+
+ +
+
+
+
+
+
-
-
+ + } }