Skip to content

Commit 3262d57

Browse files
authored
Add support for Leptos stable (#17)
* Leptos nightly --> stable * cargo fmt
1 parent 538dd2b commit 3262d57

3 files changed

Lines changed: 23 additions & 21 deletions

File tree

packages/leptos/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ version.workspace = true
1111
[dependencies]
1212
cfg-if = "1.0.0"
1313
floating-ui-dom = { path = "../dom", version = "0.0.8" }
14-
leptos = { version = "0.6.9", features = ["nightly"] }
14+
leptos = { version = "0.6.9", features = [] }
1515
paste = "1.0.0"
1616
web-sys.workspace = true
1717

packages/leptos/src/types.rs

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ use floating_ui_dom::{
44
auto_update, AutoUpdateOptions, ElementOrVirtual, Middleware, MiddlewareData, Placement,
55
Strategy,
66
};
7-
use leptos::{Attribute, IntoAttribute, MaybeProp, MaybeSignal, Signal};
7+
use leptos::{Attribute, IntoAttribute, MaybeProp, MaybeSignal, Signal, SignalGet};
88
use web_sys::{Element, Window};
99

1010
pub type WhileElementsMountedFn =
@@ -103,7 +103,7 @@ impl UseFloatingOptions {
103103
auto_update(reference, floating, update, AutoUpdateOptions::default())
104104
});
105105
self.while_elements_mounted(MaybeProp::derive(move || {
106-
if enabled() {
106+
if enabled.get() {
107107
Some(auto_update_rc.clone())
108108
} else {
109109
None
@@ -122,7 +122,9 @@ impl UseFloatingOptions {
122122
})
123123
};
124124

125-
self.while_elements_mounted(MaybeProp::derive(move || Some(auto_update_rc(options()))))
125+
self.while_elements_mounted(MaybeProp::derive(move || {
126+
Some(auto_update_rc(options.get()))
127+
}))
126128
}
127129

128130
/// Set `while_elements_mounted` option to [`auto_update`] with `options` when `enabled` is `true`.
@@ -138,8 +140,8 @@ impl UseFloatingOptions {
138140
};
139141

140142
self.while_elements_mounted(MaybeProp::derive(move || {
141-
if enabled() {
142-
Some(auto_update_rc(options()))
143+
if enabled.get() {
144+
Some(auto_update_rc(options.get()))
143145
} else {
144146
None
145147
}

packages/leptos/src/use_floating.rs

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ use floating_ui_dom::{
77
use leptos::{
88
create_effect, create_memo, create_signal,
99
html::{AnyElement, ElementDescriptor},
10-
on_cleanup, watch, MaybeProp, NodeRef, SignalGet, SignalGetUntracked,
10+
on_cleanup, watch, MaybeProp, NodeRef, SignalGet, SignalGetUntracked, SignalSet,
1111
};
1212

1313
use crate::{
@@ -146,16 +146,16 @@ pub fn use_floating<
146146
let (is_positioned, set_is_positioned) = create_signal(false);
147147
let floating_styles = create_memo(move |_| {
148148
let initial_styles = FloatingStyles {
149-
position: strategy(),
149+
position: strategy.get(),
150150
top: "0".into(),
151151
left: "0".into(),
152152
transform: None,
153153
will_change: None,
154154
};
155155

156156
if let Some(floating_element) = floating.get_as_element() {
157-
let x_val = round_by_dpr(&floating_element, x());
158-
let y_val = round_by_dpr(&floating_element, y());
157+
let x_val = round_by_dpr(&floating_element, x.get());
158+
let y_val = round_by_dpr(&floating_element, y.get());
159159

160160
if transform_option() {
161161
FloatingStyles {
@@ -194,12 +194,12 @@ pub fn use_floating<
194194
&floating_element,
195195
Some(config),
196196
);
197-
set_x(position.x);
198-
set_y(position.y);
199-
set_strategy(position.strategy);
200-
set_placement(position.placement);
201-
set_middleware_data(position.middleware_data);
202-
set_is_positioned(true);
197+
set_x.set(position.x);
198+
set_y.set(position.y);
199+
set_strategy.set(position.strategy);
200+
set_placement.set(position.placement);
201+
set_middleware_data.set(position.middleware_data);
202+
set_is_positioned.set(true);
203203
}
204204
}
205205
}
@@ -247,7 +247,7 @@ pub fn use_floating<
247247

248248
let reset = move || {
249249
if !open_option() {
250-
set_is_positioned(false);
250+
set_is_positioned.set(false);
251251
}
252252
};
253253

@@ -288,28 +288,28 @@ pub fn use_floating<
288288
let strategy_update_rc = update_rc.clone();
289289
let middleware_update_rc = update_rc.clone();
290290
_ = watch(
291-
options.placement,
291+
move || options.placement.get(),
292292
move |_, _, _| {
293293
placement_update_rc();
294294
},
295295
false,
296296
);
297297
_ = watch(
298-
options.strategy,
298+
move || options.strategy.get(),
299299
move |_, _, _| {
300300
strategy_update_rc();
301301
},
302302
false,
303303
);
304304
_ = watch(
305-
options.middleware,
305+
move || options.middleware.get(),
306306
move |_, _, _| {
307307
middleware_update_rc();
308308
},
309309
false,
310310
);
311311
_ = watch(
312-
options.while_elements_mounted,
312+
move || options.while_elements_mounted.get(),
313313
move |_, _, _| {
314314
attach_rc();
315315
},

0 commit comments

Comments
 (0)