//! MNOTE 首页组件(Wolai 风格) use super::layout::PageLayout; use leptos::prelude::*; /// MNOTE 首页。 #[component] pub fn HomePage( /// 侧栏页面树 HTML(可选) #[prop(optional)] sidebar_tree_html: Option, /// 工作区名称(可选) #[prop(optional)] workspace_name: Option, /// 工作区 id(可选) #[prop(optional)] workspace_id: Option, /// workspace shell 侧栏 sections HTML(可选) #[prop(optional)] workspace_sidebar_html: Option, /// 当前选中的页面 id(可选) #[prop(optional)] active_page_id: Option, /// 当前选中的页面标题(可选) #[prop(optional)] active_page_title: Option, /// 是否显示管理员授权入口 #[prop(optional)] show_admin_access_policy: bool, ) -> impl IntoView { let active_page_id = active_page_id.unwrap_or_default(); let active_page_title = active_page_title .map(|value| value.trim().to_string()) .filter(|value| !value.is_empty()) .unwrap_or_else(|| "个人".to_string()); let has_active_page = !active_page_id.trim().is_empty(); let workspace_id = workspace_id .map(|value| value.trim().to_string()) .filter(|value| !value.is_empty()); let active_href = workspace_id .as_deref() .map(|workspace_id| format!("/documents/{active_page_id}?workspaceId={workspace_id}")) .unwrap_or_else(|| format!("/documents/{active_page_id}")); let enable_tree_live = false; view! { {move || if has_active_page { view! {

{active_page_title.clone()}

"个人空间" "工作区首页"
"打开当前页面"
}.into_any() } else { view! {
}.into_any() }}
} }