atproto blogging
1use dioxus::prelude::*;
2use dioxus_primitives::hover_card::{
3 self, HoverCardContentProps, HoverCardProps, HoverCardTriggerProps,
4};
5
6#[component]
7pub fn HoverCard(props: HoverCardProps) -> Element {
8 rsx! {
9 document::Link { rel: "stylesheet", href: asset!("./style.css") }
10 hover_card::HoverCard {
11 class: "hover-card",
12 open: props.open,
13 default_open: props.default_open,
14 on_open_change: props.on_open_change,
15 disabled: props.disabled,
16 attributes: props.attributes,
17 {props.children}
18 }
19 }
20}
21
22#[component]
23pub fn HoverCardTrigger(props: HoverCardTriggerProps) -> Element {
24 rsx! {
25 hover_card::HoverCardTrigger {
26 class: "hover-card-trigger",
27 id: props.id,
28 attributes: props.attributes,
29 {props.children}
30 }
31 }
32}
33
34#[component]
35pub fn HoverCardContent(props: HoverCardContentProps) -> Element {
36 rsx! {
37 hover_card::HoverCardContent {
38 class: "hover-card-content",
39 side: props.side,
40 align: props.align,
41 id: props.id,
42 force_mount: props.force_mount,
43 attributes: props.attributes,
44 {props.children}
45 }
46 }
47}