use leptos::prelude::*;
use crate::backend::data::User;
use crate::components::modal_box::{DialogOpener, ModalBody, ModalDialog};
use crate::components::theme::Theme;
use crate::components::user_menu::{MenuOpener, UserMenu};
use crate::locales::trl;
use crate::pages::change_pwd::ChangePassword;
use crate::pages::profile_edit::ProfileEdit;
#[component]
fn about(opener: DialogOpener) -> impl IntoView {
view! {
{trl("Online booking application for sports facilities and service providers.")}
{format!(" v {}", env!("CARGO_PKG_VERSION"))}
}
}
#[component]
pub fn AdminPortal(children: Children) -> impl IntoView {
let user_menu = MenuOpener::new();
let settings_menu = MenuOpener::new();
let (user, set_user) = signal(User::default());
let editor = DialogOpener::new();
let pw_changer = DialogOpener::new();
let drawer = use_context::().expect("No drawer opener");
let about_dlg = DialogOpener::new();
let theme = use_context::().expect("No theme");
view! {
// Dark theme is limited to the admin portal: the stylesheet is loaded only here