biji_ui/components/menu/
mod.rs1use crate::components::menubar::{context::RootContext, menu::Menu as MenuComponent};
2use leptos::prelude::*;
3
4pub use crate::components::menubar::item::Item;
5pub use crate::components::menubar::item::SubMenuItem as SubMenu;
6pub use crate::components::menubar::item::SubMenuItemContent as SubMenuContent;
7pub use crate::components::menubar::item::SubMenuItemTrigger as SubMenuTrigger;
8pub use crate::components::menubar::menu::MenuContent as Content;
9pub use crate::components::menubar::menu::MenuTrigger as Trigger;
10
11#[component]
12pub fn Menu(
13 #[prop(default = false)] disabled: bool,
14 #[prop(into, optional)] class: String,
15 #[prop(default = false)] allow_loop: bool,
16 children: Children,
17) -> impl IntoView {
18 let ctx = RootContext {
19 allow_item_loop: allow_loop,
20 ..RootContext::default()
21 };
22
23 provide_context(ctx);
24
25 view! {
26 <MenuComponent disabled={disabled} class={class}>
27 {children()}
28 </MenuComponent>
29 }
30}