From 5ca236518b338dc014bf5e7e2a399620c4ecbbba Mon Sep 17 00:00:00 2001 From: "rust-for-web[bot]" <191031261+rust-for-web[bot]@users.noreply.github.com> Date: Thu, 31 Jul 2025 19:40:10 +0000 Subject: [PATCH] feat: update to upstream v0.532.0 (#125) Co-authored-by: rust-for-web[bot] <191031261+rust-for-web[bot]@users.noreply.github.com> --- book-examples/dioxus/src/icons.rs | 6 ++++ book-examples/leptos/src/icons.rs | 1 + book-examples/yew/src/icons.rs | 1 + packages/dioxus/src/gavel.rs | 4 +-- packages/dioxus/src/hammer.rs | 4 +-- packages/dioxus/src/handbag.rs | 41 +++++++++++++++++++++++++ packages/dioxus/src/lib.rs | 4 +++ packages/dioxus/src/pickaxe.rs | 8 ++--- packages/dioxus/src/wrench.rs | 2 +- packages/leptos/src/gavel.rs | 4 +-- packages/leptos/src/hammer.rs | 4 +-- packages/leptos/src/handbag.rs | 36 ++++++++++++++++++++++ packages/leptos/src/lib.rs | 4 +++ packages/leptos/src/pickaxe.rs | 8 ++--- packages/leptos/src/wrench.rs | 2 +- packages/yew/src/gavel.rs | 4 +-- packages/yew/src/hammer.rs | 4 +-- packages/yew/src/handbag.rs | 50 +++++++++++++++++++++++++++++++ packages/yew/src/lib.rs | 4 +++ packages/yew/src/pickaxe.rs | 8 ++--- packages/yew/src/wrench.rs | 2 +- scripts/src/lib.rs | 2 +- 22 files changed, 175 insertions(+), 28 deletions(-) create mode 100644 packages/dioxus/src/handbag.rs create mode 100644 packages/leptos/src/handbag.rs create mode 100644 packages/yew/src/handbag.rs diff --git a/book-examples/dioxus/src/icons.rs b/book-examples/dioxus/src/icons.rs index 7bab8dd..9736120 100644 --- a/book-examples/dioxus/src/icons.rs +++ b/book-examples/dioxus/src/icons.rs @@ -4754,6 +4754,12 @@ pub fn IconsH1() -> Element { }, "Hand Platter", ), + ( + rsx! { + Handbag {} + }, + "Handbag", + ), ( rsx! { Handshake {} diff --git a/book-examples/leptos/src/icons.rs b/book-examples/leptos/src/icons.rs index ee8a96d..23aa163 100644 --- a/book-examples/leptos/src/icons.rs +++ b/book-examples/leptos/src/icons.rs @@ -969,6 +969,7 @@ pub fn IconsH() -> impl IntoView { (view! { }.into_any(), "Hand Helping"), (view! { }.into_any(), "Hand Metal"), (view! { }.into_any(), "Hand Platter"), + (view! { }.into_any(), "Handbag"), (view! { }.into_any(), "Handshake"), (view! { }.into_any(), "Hard Drive"), (view! { }.into_any(), "Hard Drive Download"), diff --git a/book-examples/yew/src/icons.rs b/book-examples/yew/src/icons.rs index 5c074bb..b71521e 100644 --- a/book-examples/yew/src/icons.rs +++ b/book-examples/yew/src/icons.rs @@ -999,6 +999,7 @@ pub fn IconsH() -> Html { (html! { }, "Hand Helping"), (html! { }, "Hand Metal"), (html! { }, "Hand Platter"), + (html! { }, "Handbag"), (html! { }, "Handshake"), (html! { }, "Hard Drive"), (html! { }, "Hard Drive Download"), diff --git a/packages/dioxus/src/gavel.rs b/packages/dioxus/src/gavel.rs index 228ea5d..219f37b 100644 --- a/packages/dioxus/src/gavel.rs +++ b/packages/dioxus/src/gavel.rs @@ -34,11 +34,11 @@ pub fn Gavel(props: GavelProps) -> Element { "stroke-width": "{stroke_width}", "stroke-linecap": "round", "stroke-linejoin": "round", - path { "d": "m14.5 12.5-8 8a2.119 2.119 0 1 1-3-3l8-8" } + path { "d": "m14.499 12.501-8.88 8.879a1 1 0 0 1-3.001-3L11.5 9.5" } path { "d": "m16 16 6-6" } + path { "d": "m21 11-8-8" } path { "d": "m8 8 6-6" } path { "d": "m9 7 8 8" } - path { "d": "m21 11-8-8" } } } } diff --git a/packages/dioxus/src/hammer.rs b/packages/dioxus/src/hammer.rs index 2b208ea..f700048 100644 --- a/packages/dioxus/src/hammer.rs +++ b/packages/dioxus/src/hammer.rs @@ -34,9 +34,9 @@ pub fn Hammer(props: HammerProps) -> Element { "stroke-width": "{stroke_width}", "stroke-linecap": "round", "stroke-linejoin": "round", - path { "d": "m15 12-8.373 8.373a1 1 0 1 1-3-3L12 9" } + path { "d": "m15 12-9.373 9.373a1 1 0 0 1-3.001-3L12 9" } path { "d": "m18 15 4-4" } - path { "d": "m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172V7l-2.26-2.26a6 6 0 0 0-4.202-1.756L9 2.96l.92.82A6.18 6.18 0 0 1 12 8.4V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5" } + path { "d": "m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172v-.344a2 2 0 0 0-.586-1.414l-1.657-1.657A6 6 0 0 0 12.516 3H9l1.243 1.243A6 6 0 0 1 12 8.485V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5" } } } } diff --git a/packages/dioxus/src/handbag.rs b/packages/dioxus/src/handbag.rs new file mode 100644 index 0000000..dea27c6 --- /dev/null +++ b/packages/dioxus/src/handbag.rs @@ -0,0 +1,41 @@ +use dioxus::prelude::*; +#[derive(Clone, PartialEq, Props)] +pub struct HandbagProps { + #[props(default = 24)] + pub size: usize, + #[props(default = "currentColor".to_owned())] + pub color: String, + #[props(default = "none".to_owned())] + pub fill: String, + #[props(default = 2)] + pub stroke_width: usize, + #[props(default = false)] + pub absolute_stroke_width: bool, + pub class: Option, + pub style: Option, +} +#[component] +pub fn Handbag(props: HandbagProps) -> Element { + let stroke_width = if props.absolute_stroke_width { + props.stroke_width * 24 / props.size + } else { + props.stroke_width + }; + rsx! { + svg { + "xmlns": "http://www.w3.org/2000/svg", + "class": if let Some(class) = props.class { "{class}" }, + "style": if let Some(style) = props.style { "{style}" }, + "width": "{props.size}", + "height": "{props.size}", + "viewBox": "0 0 24 24", + "fill": "{props.fill}", + "stroke": "{props.color}", + "stroke-width": "{stroke_width}", + "stroke-linecap": "round", + "stroke-linejoin": "round", + path { "d": "M2.048 18.566A2 2 0 0 0 4 21h16a2 2 0 0 0 1.952-2.434l-2-9A2 2 0 0 0 18 8H6a2 2 0 0 0-1.952 1.566z" } + path { "d": "M8 11V6a4 4 0 0 1 8 0v5" } + } + } +} diff --git a/packages/dioxus/src/lib.rs b/packages/dioxus/src/lib.rs index 71c8761..43e74a2 100644 --- a/packages/dioxus/src/lib.rs +++ b/packages/dioxus/src/lib.rs @@ -1791,6 +1791,8 @@ mod hand_helping; mod hand_metal; #[cfg(any(feature = "food-beverage", feature = "people"))] mod hand_platter; +#[cfg(any(feature = "shopping", feature = "transportation"))] +mod handbag; #[cfg(any( feature = "account", feature = "social", @@ -5911,6 +5913,8 @@ pub use hand_helping::*; pub use hand_metal::*; #[cfg(any(feature = "food-beverage", feature = "people"))] pub use hand_platter::*; +#[cfg(any(feature = "shopping", feature = "transportation"))] +pub use handbag::*; #[cfg(any( feature = "account", feature = "social", diff --git a/packages/dioxus/src/pickaxe.rs b/packages/dioxus/src/pickaxe.rs index 62dfe32..cce214f 100644 --- a/packages/dioxus/src/pickaxe.rs +++ b/packages/dioxus/src/pickaxe.rs @@ -34,10 +34,10 @@ pub fn Pickaxe(props: PickaxeProps) -> Element { "stroke-width": "{stroke_width}", "stroke-linecap": "round", "stroke-linejoin": "round", - path { "d": "M14.531 12.469 6.619 20.38a1 1 0 1 1-3-3l7.912-7.912" } - path { "d": "M15.686 4.314A12.5 12.5 0 0 0 5.461 2.958 1 1 0 0 0 5.58 4.71a22 22 0 0 1 6.318 3.393" } - path { "d": "M17.7 3.7a1 1 0 0 0-1.4 0l-4.6 4.6a1 1 0 0 0 0 1.4l2.6 2.6a1 1 0 0 0 1.4 0l4.6-4.6a1 1 0 0 0 0-1.4z" } - path { "d": "M19.686 8.314a12.501 12.501 0 0 1 1.356 10.225 1 1 0 0 1-1.751-.119 22 22 0 0 0-3.393-6.319" } + path { "d": "m14 13-8.381 8.38a1 1 0 0 1-3.001-3L11 9.999" } + path { "d": "M15.973 4.027A13 13 0 0 0 5.902 2.373c-1.398.342-1.092 2.158.277 2.601a19.9 19.9 0 0 1 5.822 3.024" } + path { "d": "M16.001 11.999a19.9 19.9 0 0 1 3.024 5.824c.444 1.369 2.26 1.676 2.603.278A13 13 0 0 0 20 8.069" } + path { "d": "M18.352 3.352a1.205 1.205 0 0 0-1.704 0l-5.296 5.296a1.205 1.205 0 0 0 0 1.704l2.296 2.296a1.205 1.205 0 0 0 1.704 0l5.296-5.296a1.205 1.205 0 0 0 0-1.704z" } } } } diff --git a/packages/dioxus/src/wrench.rs b/packages/dioxus/src/wrench.rs index 0c03046..cf3183a 100644 --- a/packages/dioxus/src/wrench.rs +++ b/packages/dioxus/src/wrench.rs @@ -34,7 +34,7 @@ pub fn Wrench(props: WrenchProps) -> Element { "stroke-width": "{stroke_width}", "stroke-linecap": "round", "stroke-linejoin": "round", - path { "d": "M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z" } + path { "d": "M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z" } } } } diff --git a/packages/leptos/src/gavel.rs b/packages/leptos/src/gavel.rs index d92e529..b45d4b4 100644 --- a/packages/leptos/src/gavel.rs +++ b/packages/leptos/src/gavel.rs @@ -29,11 +29,11 @@ pub fn Gavel( stroke-linecap="round" stroke-linejoin="round" > - + + - } } diff --git a/packages/leptos/src/hammer.rs b/packages/leptos/src/hammer.rs index 16de304..e66a8dc 100644 --- a/packages/leptos/src/hammer.rs +++ b/packages/leptos/src/hammer.rs @@ -29,9 +29,9 @@ pub fn Hammer( stroke-linecap="round" stroke-linejoin="round" > - + - + } } diff --git a/packages/leptos/src/handbag.rs b/packages/leptos/src/handbag.rs new file mode 100644 index 0000000..4158eb1 --- /dev/null +++ b/packages/leptos/src/handbag.rs @@ -0,0 +1,36 @@ +use leptos::{prelude::*, svg::Svg}; +#[component] +pub fn Handbag( + #[prop(default = 24.into(), into)] size: Signal, + #[prop(default = "currentColor".into(), into)] color: Signal, + #[prop(default = "none".into(), into)] fill: Signal, + #[prop(default = 2.into(), into)] stroke_width: Signal, + #[prop(default = false.into(), into)] absolute_stroke_width: Signal, + #[prop(optional)] node_ref: NodeRef, +) -> impl IntoView { + let stroke_width = Signal::derive(move || { + if absolute_stroke_width.get() { + stroke_width.get() * 24 / size.get() + } else { + stroke_width.get() + } + }); + view! { + + + + + } +} diff --git a/packages/leptos/src/lib.rs b/packages/leptos/src/lib.rs index 0a9798c..2809976 100644 --- a/packages/leptos/src/lib.rs +++ b/packages/leptos/src/lib.rs @@ -1791,6 +1791,8 @@ mod hand_helping; mod hand_metal; #[cfg(any(feature = "food-beverage", feature = "people"))] mod hand_platter; +#[cfg(any(feature = "shopping", feature = "transportation"))] +mod handbag; #[cfg(any( feature = "account", feature = "social", @@ -5911,6 +5913,8 @@ pub use hand_helping::*; pub use hand_metal::*; #[cfg(any(feature = "food-beverage", feature = "people"))] pub use hand_platter::*; +#[cfg(any(feature = "shopping", feature = "transportation"))] +pub use handbag::*; #[cfg(any( feature = "account", feature = "social", diff --git a/packages/leptos/src/pickaxe.rs b/packages/leptos/src/pickaxe.rs index 40615a1..6475bb3 100644 --- a/packages/leptos/src/pickaxe.rs +++ b/packages/leptos/src/pickaxe.rs @@ -29,10 +29,10 @@ pub fn Pickaxe( stroke-linecap="round" stroke-linejoin="round" > - - - - + + + + } } diff --git a/packages/leptos/src/wrench.rs b/packages/leptos/src/wrench.rs index dde69f1..aa34305 100644 --- a/packages/leptos/src/wrench.rs +++ b/packages/leptos/src/wrench.rs @@ -29,7 +29,7 @@ pub fn Wrench( stroke-linecap="round" stroke-linejoin="round" > - + } } diff --git a/packages/yew/src/gavel.rs b/packages/yew/src/gavel.rs index 21dda99..1d5003d 100644 --- a/packages/yew/src/gavel.rs +++ b/packages/yew/src/gavel.rs @@ -41,11 +41,11 @@ pub fn Gavel(props: &GavelProps) -> Html { stroke-linecap="round" stroke-linejoin="round" > - + + - } } diff --git a/packages/yew/src/hammer.rs b/packages/yew/src/hammer.rs index 91e6c93..b8ae9c0 100644 --- a/packages/yew/src/hammer.rs +++ b/packages/yew/src/hammer.rs @@ -41,10 +41,10 @@ pub fn Hammer(props: &HammerProps) -> Html { stroke-linecap="round" stroke-linejoin="round" > - + } diff --git a/packages/yew/src/handbag.rs b/packages/yew/src/handbag.rs new file mode 100644 index 0000000..18225e9 --- /dev/null +++ b/packages/yew/src/handbag.rs @@ -0,0 +1,50 @@ +use yew::prelude::*; +#[derive(PartialEq, Properties)] +pub struct HandbagProps { + #[prop_or(24)] + pub size: usize, + #[prop_or(AttrValue::from("currentColor"))] + pub color: AttrValue, + #[prop_or(AttrValue::from("none"))] + pub fill: AttrValue, + #[prop_or(2)] + pub stroke_width: usize, + #[prop_or(false)] + pub absolute_stroke_width: bool, + #[prop_or_default] + pub class: Classes, + #[prop_or_default] + pub style: std::option::Option, + #[prop_or_default] + pub node_ref: NodeRef, +} +#[function_component] +pub fn Handbag(props: &HandbagProps) -> Html { + let stroke_width = if props.absolute_stroke_width { + props.stroke_width * 24 / props.size + } else { + props.stroke_width + }; + html! { + + + + + } +} diff --git a/packages/yew/src/lib.rs b/packages/yew/src/lib.rs index 9e590e6..17a3711 100644 --- a/packages/yew/src/lib.rs +++ b/packages/yew/src/lib.rs @@ -1793,6 +1793,8 @@ mod hand_helping; mod hand_metal; #[cfg(any(feature = "food-beverage", feature = "people"))] mod hand_platter; +#[cfg(any(feature = "shopping", feature = "transportation"))] +mod handbag; #[cfg(any( feature = "account", feature = "social", @@ -5913,6 +5915,8 @@ pub use hand_helping::*; pub use hand_metal::*; #[cfg(any(feature = "food-beverage", feature = "people"))] pub use hand_platter::*; +#[cfg(any(feature = "shopping", feature = "transportation"))] +pub use handbag::*; #[cfg(any( feature = "account", feature = "social", diff --git a/packages/yew/src/pickaxe.rs b/packages/yew/src/pickaxe.rs index fe468ab..dee630d 100644 --- a/packages/yew/src/pickaxe.rs +++ b/packages/yew/src/pickaxe.rs @@ -41,15 +41,15 @@ pub fn Pickaxe(props: &PickaxeProps) -> Html { stroke-linecap="round" stroke-linejoin="round" > - + } diff --git a/packages/yew/src/wrench.rs b/packages/yew/src/wrench.rs index 34d280b..503a07a 100644 --- a/packages/yew/src/wrench.rs +++ b/packages/yew/src/wrench.rs @@ -42,7 +42,7 @@ pub fn Wrench(props: &WrenchProps) -> Html { stroke-linejoin="round" > } diff --git a/scripts/src/lib.rs b/scripts/src/lib.rs index 93cc4c1..4c58066 100644 --- a/scripts/src/lib.rs +++ b/scripts/src/lib.rs @@ -11,5 +11,5 @@ pub const GITHUB_OWNER: &str = "RustForWeb"; pub const GITHUB_REPO: &str = "lucide"; pub const UPSTREAM_GIT_URL: &str = "https://github.com/lucide-icons/lucide.git"; -pub const UPSTREAM_GIT_REF: &str = "0.531.0"; +pub const UPSTREAM_GIT_REF: &str = "0.532.0"; pub const UPSTREAM_GITHUB_URL: &str = "https://github.com/lucide-icons/lucide";