Skip to content
This repository was archived by the owner on Feb 2, 2026. It is now read-only.

Commit c6ebf5b

Browse files
chore(popper): upgrade to Leptos v0.7+ (#532)
1 parent 1d5e69d commit c6ebf5b

11 files changed

Lines changed: 271 additions & 251 deletions

File tree

Cargo.lock

Lines changed: 48 additions & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ members = [
2121
"packages/primitives/leptos/focus-guards",
2222
"packages/primitives/leptos/id",
2323
"packages/primitives/leptos/label",
24+
"packages/primitives/leptos/popper",
2425
"packages/primitives/leptos/portal",
2526
"packages/primitives/leptos/primitive",
2627
"packages/primitives/leptos/separator",
@@ -68,7 +69,7 @@ radix-leptos-focus-guards = { path = "./packages/primitives/leptos/focus-guards"
6869
radix-leptos-icons = { path = "./packages/icons/leptos", version = "0.0.2" }
6970
radix-leptos-id = { path = "./packages/primitives/leptos/id", version = "0.0.2" }
7071
radix-leptos-label = { path = "./packages/primitives/leptos/label", version = "0.0.2" }
71-
# radix-leptos-popper = { path = "./packages/primitives/leptos/popper", version = "0.0.2" }
72+
radix-leptos-popper = { path = "./packages/primitives/leptos/popper", version = "0.0.2" }
7273
radix-leptos-portal = { path = "./packages/primitives/leptos/portal", version = "0.0.2" }
7374
# radix-leptos-presence = { path = "./packages/primitives/leptos/presence", version = "0.0.2" }
7475
radix-leptos-primitive = { path = "./packages/primitives/leptos/primitive", version = "0.0.2" }

packages/primitives/leptos/compose-refs/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,4 @@ version.workspace = true
1010

1111
[dependencies]
1212
leptos.workspace = true
13+
leptos-node-ref.workspace = true
Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,21 @@
1-
use leptos::web_sys::Element;
2-
use leptos::{html::ElementType, prelude::*, tachys::html::node_ref::NodeRefContainer};
1+
use leptos::{html::Div, prelude::*, tachys::html::node_ref::NodeRefContainer};
2+
use leptos_node_ref::AnyNodeRef;
33

4-
fn compose_refs<T: ElementType<Output = Element> + Clone + 'static>(
5-
refs: Vec<NodeRef<T>>,
6-
) -> NodeRef<T> {
7-
let composed_ref = NodeRef::new();
4+
fn compose_refs(refs: Vec<AnyNodeRef>) -> AnyNodeRef {
5+
let composed_ref = AnyNodeRef::new();
86

97
Effect::new(move |_| {
108
if let Some(node) = composed_ref.get() {
119
for r#ref in &refs {
12-
r#ref.load(&node);
10+
NodeRefContainer::<Div>::load(*r#ref, &node);
11+
// r#ref.load_any(&node);
1312
}
1413
}
1514
});
1615

1716
composed_ref
1817
}
1918

20-
pub fn use_composed_refs<T: ElementType<Output = Element> + Clone + 'static>(
21-
refs: Vec<NodeRef<T>>,
22-
) -> NodeRef<T> {
19+
pub fn use_composed_refs(refs: Vec<AnyNodeRef>) -> AnyNodeRef {
2320
compose_refs(refs)
2421
}

packages/primitives/leptos/popper/Cargo.toml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,15 @@ repository.workspace = true
99
version.workspace = true
1010

1111
[dependencies]
12-
floating-ui-leptos = "0.3.0"
12+
floating-ui-leptos = "0.4.0"
1313
leptos.workspace = true
14+
leptos-maybe-callback.workspace = true
15+
leptos-node-ref.workspace = true
1416
radix-leptos-arrow.workspace = true
1517
radix-leptos-compose-refs.workspace = true
18+
radix-leptos-primitive.workspace = true
1619
radix-leptos-use-size.workspace = true
20+
send_wrapper.workspace = true
1721
serde.workspace = true
1822
serde_json.workspace = true
1923
web-sys.workspace = true

0 commit comments

Comments
 (0)