22 lines
672 B
Rust
22 lines
672 B
Rust
use leptos::prelude::*;
|
|
use tailwind_fuse::tw_merge;
|
|
|
|
#[derive(Clone, Copy, PartialEq, Eq, Default, Debug)]
|
|
pub enum SeparatorOrientation { #[default] Horizontal, Vertical }
|
|
|
|
#[component]
|
|
pub fn Separator(
|
|
#[prop(into, optional)] orientation: Signal<SeparatorOrientation>,
|
|
#[prop(into, optional)] class: String,
|
|
) -> impl IntoView {
|
|
let class_signal = move || tw_merge!(
|
|
"shrink-0 bg-border",
|
|
match orientation.get() {
|
|
SeparatorOrientation::Horizontal => "h-[1px] w-full",
|
|
SeparatorOrientation::Vertical => "h-full w-[1px]",
|
|
},
|
|
class.clone()
|
|
);
|
|
view! { <div class=class_signal role="none" /> }
|
|
}
|