use leptos::leptos_dom::*;
use leptos::*;
use leptos_icons::*;
use crate::auth::get_user;
use crate::auth::logout;
#[component]
pub fn Personal() -> impl IntoView {
view! {
}
}
#[component]
pub fn Profile() -> impl IntoView {
let (dropdown_open, set_dropdown_open) = create_signal(false);
let user = create_local_resource(move || dropdown_open.get(), |_| async move { get_user().await });
let logged_in = create_local_resource(move || dropdown_open.get(), |_| async move { get_user().await.is_ok() });
let open_dropdown = move |_| {
set_dropdown_open.update(|value| *value = !*value);
};
let user_profile_picture = move || {
user.get().map(|user| {
if let Ok(user) = user {
return format!("/assets/images/profile/{}.webp", user.id.unwrap());
} else {
return "".to_string();
}
})
};
view! {