Skip to main content

leptos_use_resize_observer/
options.rs

1use default_struct_builder::DefaultBuilder;
2
3/// Options for [`use_resize_observer_with_options`](crate::use_resize_observer_with_options).
4#[derive(DefaultBuilder, Clone, Default)]
5pub struct UseResizeObserverOptions {
6    /// The box that is used to determine the dimensions of the target. Defaults to `ContentBox`.
7    #[builder(into)]
8    pub box_: Option<web_sys::ResizeObserverBoxOptions>,
9}
10
11impl From<UseResizeObserverOptions> for web_sys::ResizeObserverOptions {
12    fn from(val: UseResizeObserverOptions) -> Self {
13        let options = web_sys::ResizeObserverOptions::new();
14        options.set_box(
15            val.box_
16                .unwrap_or(web_sys::ResizeObserverBoxOptions::ContentBox),
17        );
18        options
19    }
20}