feat: update to upstream v0.541.0 (#141)

Co-authored-by: rust-for-web[bot] <191031261+rust-for-web[bot]@users.noreply.github.com>
This commit is contained in:
rust-for-web[bot] 2025-08-22 19:02:43 +02:00 committed by GitHub
parent f6ae14c549
commit 692e0a14ce
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
25 changed files with 581 additions and 77 deletions

View file

@ -26,6 +26,7 @@ pub fn Icons() -> Element {
IconsN1 {}
IconsO1 {}
IconsP1 {}
IconsP2 {}
IconsQ1 {}
IconsR1 {}
IconsS1 {}
@ -2128,9 +2129,9 @@ pub fn IconsC1() -> Element {
),
(
rsx! {
Chrome {}
Chromium {}
},
"Chrome",
"Chromium",
),
(
rsx! {
@ -6791,6 +6792,12 @@ pub fn IconsP1() -> Element {
},
"Panel Left Open",
),
(
rsx! {
PanelLeftRightDashed {}
},
"Panel Left Right Dashed",
),
(
rsx! {
PanelRight {}
@ -6821,6 +6828,12 @@ pub fn IconsP1() -> Element {
},
"Panel Top",
),
(
rsx! {
PanelTopBottomDashed {}
},
"Panel Top Bottom Dashed",
),
(
rsx! {
PanelTopClose {}
@ -7247,12 +7260,6 @@ pub fn IconsP1() -> Element {
},
"Puzzle",
),
(
rsx! {
Pyramid {}
},
"Pyramid",
),
];
rsx! {
for (icon , name) in icons {
@ -7266,6 +7273,25 @@ pub fn IconsP1() -> Element {
}
}
#[component]
pub fn IconsP2() -> Element {
let icons = [(
rsx! {
Pyramid {}
},
"Pyramid",
)];
rsx! {
for (icon , name) in icons {
div {
key: "{name}",
class: "flex flex-wrap items-center gap-4 text-sm",
{icon}
span { {name} }
}
}
}
}
#[component]
pub fn IconsQ1() -> Element {
let icons = [
(

View file

@ -460,7 +460,7 @@ pub fn IconsC() -> impl IntoView {
(view! { <ChevronsRightLeft /> }.into_any(), "Chevrons Right Left"),
(view! { <ChevronsUp /> }.into_any(), "Chevrons Up"),
(view! { <ChevronsUpDown /> }.into_any(), "Chevrons Up Down"),
(view! { <Chrome /> }.into_any(), "Chrome"),
(view! { <Chromium /> }.into_any(), "Chromium"),
(view! { <Church /> }.into_any(), "Church"),
(view! { <Cigarette /> }.into_any(), "Cigarette"),
(view! { <CigaretteOff /> }.into_any(), "Cigarette Off"),
@ -1425,11 +1425,13 @@ pub fn IconsP() -> impl IntoView {
(view! { <PanelLeftClose /> }.into_any(), "Panel Left Close"),
(view! { <PanelLeftDashed /> }.into_any(), "Panel Left Dashed"),
(view! { <PanelLeftOpen /> }.into_any(), "Panel Left Open"),
(view! { <PanelLeftRightDashed /> }.into_any(), "Panel Left Right Dashed"),
(view! { <PanelRight /> }.into_any(), "Panel Right"),
(view! { <PanelRightClose /> }.into_any(), "Panel Right Close"),
(view! { <PanelRightDashed /> }.into_any(), "Panel Right Dashed"),
(view! { <PanelRightOpen /> }.into_any(), "Panel Right Open"),
(view! { <PanelTop /> }.into_any(), "Panel Top"),
(view! { <PanelTopBottomDashed /> }.into_any(), "Panel Top Bottom Dashed"),
(view! { <PanelTopClose /> }.into_any(), "Panel Top Close"),
(view! { <PanelTopDashed /> }.into_any(), "Panel Top Dashed"),
(view! { <PanelTopOpen /> }.into_any(), "Panel Top Open"),

View file

@ -477,7 +477,7 @@ pub fn IconsC() -> Html {
(html! { <ChevronsRightLeft /> }, "Chevrons Right Left"),
(html! { <ChevronsUp /> }, "Chevrons Up"),
(html! { <ChevronsUpDown /> }, "Chevrons Up Down"),
(html! { <Chrome /> }, "Chrome"),
(html! { <Chromium /> }, "Chromium"),
(html! { <Church /> }, "Church"),
(html! { <Cigarette /> }, "Cigarette"),
(html! { <CigaretteOff /> }, "Cigarette Off"),
@ -1447,11 +1447,19 @@ pub fn IconsP() -> Html {
(html! { <PanelLeftClose /> }, "Panel Left Close"),
(html! { <PanelLeftDashed /> }, "Panel Left Dashed"),
(html! { <PanelLeftOpen /> }, "Panel Left Open"),
(
html! { <PanelLeftRightDashed /> },
"Panel Left Right Dashed",
),
(html! { <PanelRight /> }, "Panel Right"),
(html! { <PanelRightClose /> }, "Panel Right Close"),
(html! { <PanelRightDashed /> }, "Panel Right Dashed"),
(html! { <PanelRightOpen /> }, "Panel Right Open"),
(html! { <PanelTop /> }, "Panel Top"),
(
html! { <PanelTopBottomDashed /> },
"Panel Top Bottom Dashed",
),
(html! { <PanelTopClose /> }, "Panel Top Close"),
(html! { <PanelTopDashed /> }, "Panel Top Dashed"),
(html! { <PanelTopOpen /> }, "Panel Top Open"),

View file

@ -34,24 +34,23 @@ pub fn Building(props: BuildingProps) -> Element {
"stroke-width": "{stroke_width}",
"stroke-linecap": "round",
"stroke-linejoin": "round",
rect {
"width": "16",
"height": "20",
"x": "4",
"y": "2",
"rx": "2",
"ry": "2",
}
path { "d": "M9 22v-4h6v4" }
path { "d": "M8 6h.01" }
path { "d": "M16 6h.01" }
path { "d": "M12 6h.01" }
path { "d": "M12 10h.01" }
path { "d": "M12 14h.01" }
path { "d": "M12 6h.01" }
path { "d": "M16 10h.01" }
path { "d": "M16 14h.01" }
path { "d": "M16 6h.01" }
path { "d": "M8 10h.01" }
path { "d": "M8 14h.01" }
path { "d": "M8 6h.01" }
path { "d": "M9 22v-3a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v3" }
rect {
"x": "4",
"y": "2",
"width": "16",
"height": "20",
"rx": "2",
}
}
}
}

View file

@ -0,0 +1,44 @@
use dioxus::prelude::*;
#[derive(Clone, PartialEq, Props)]
pub struct ChromiumProps {
#[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<String>,
pub style: Option<String>,
}
#[component]
pub fn Chromium(props: ChromiumProps) -> 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": "M10.88 21.94 15.46 14" }
path { "d": "M21.17 8H12" }
path { "d": "M3.95 6.06 8.54 14" }
circle { "cx": "12", "cy": "12", "r": "10" }
circle { "cx": "12", "cy": "12", "r": "4" }
}
}
}

View file

@ -34,20 +34,20 @@ pub fn Cog(props: CogProps) -> Element {
"stroke-width": "{stroke_width}",
"stroke-linecap": "round",
"stroke-linejoin": "round",
path { "d": "M12 20a8 8 0 1 0 0-16 8 8 0 0 0 0 16Z" }
path { "d": "M12 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z" }
path { "d": "M12 2v2" }
path { "d": "M12 22v-2" }
path { "d": "m17 20.66-1-1.73" }
path { "d": "M11 10.27 7 3.34" }
path { "d": "m20.66 17-1.73-1" }
path { "d": "m3.34 7 1.73 1" }
path { "d": "m11 13.73-4 6.93" }
path { "d": "M12 22v-2" }
path { "d": "M12 2v2" }
path { "d": "M14 12h8" }
path { "d": "m17 20.66-1-1.73" }
path { "d": "m17 3.34-1 1.73" }
path { "d": "M2 12h2" }
path { "d": "m20.66 17-1.73-1" }
path { "d": "m20.66 7-1.73 1" }
path { "d": "m3.34 17 1.73-1" }
path { "d": "m17 3.34-1 1.73" }
path { "d": "m11 13.73-4 6.93" }
path { "d": "m3.34 7 1.73 1" }
circle { "cx": "12", "cy": "12", "r": "2" }
circle { "cx": "12", "cy": "12", "r": "8" }
}
}
}

View file

@ -807,7 +807,7 @@ mod chevrons_up;
#[cfg(feature = "arrows")]
mod chevrons_up_down;
#[cfg(feature = "brands")]
mod chrome;
mod chromium;
#[cfg(any(feature = "buildings", feature = "navigation"))]
mod church;
#[cfg(any(feature = "travel", feature = "transportation", feature = "medical"))]
@ -2593,6 +2593,8 @@ mod panel_left_dashed;
#[cfg(any(feature = "layout", feature = "arrows"))]
mod panel_left_open;
#[cfg(feature = "layout")]
mod panel_left_right_dashed;
#[cfg(feature = "layout")]
mod panel_right;
#[cfg(any(feature = "layout", feature = "arrows"))]
mod panel_right_close;
@ -2602,6 +2604,8 @@ mod panel_right_dashed;
mod panel_right_open;
#[cfg(any(feature = "layout", feature = "design", feature = "development"))]
mod panel_top;
#[cfg(feature = "layout")]
mod panel_top_bottom_dashed;
#[cfg(any(feature = "layout", feature = "arrows"))]
mod panel_top_close;
#[cfg(feature = "layout")]
@ -4956,7 +4960,7 @@ pub use chevrons_up::*;
#[cfg(feature = "arrows")]
pub use chevrons_up_down::*;
#[cfg(feature = "brands")]
pub use chrome::*;
pub use chromium::*;
#[cfg(any(feature = "buildings", feature = "navigation"))]
pub use church::*;
#[cfg(any(feature = "travel", feature = "transportation", feature = "medical"))]
@ -6742,6 +6746,8 @@ pub use panel_left_dashed::*;
#[cfg(any(feature = "layout", feature = "arrows"))]
pub use panel_left_open::*;
#[cfg(feature = "layout")]
pub use panel_left_right_dashed::*;
#[cfg(feature = "layout")]
pub use panel_right::*;
#[cfg(any(feature = "layout", feature = "arrows"))]
pub use panel_right_close::*;
@ -6751,6 +6757,8 @@ pub use panel_right_dashed::*;
pub use panel_right_open::*;
#[cfg(any(feature = "layout", feature = "design", feature = "development"))]
pub use panel_top::*;
#[cfg(feature = "layout")]
pub use panel_top_bottom_dashed::*;
#[cfg(any(feature = "layout", feature = "arrows"))]
pub use panel_top_close::*;
#[cfg(feature = "layout")]

View file

@ -0,0 +1,54 @@
use dioxus::prelude::*;
#[derive(Clone, PartialEq, Props)]
pub struct PanelLeftRightDashedProps {
#[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<String>,
pub style: Option<String>,
}
#[component]
pub fn PanelLeftRightDashed(props: PanelLeftRightDashedProps) -> 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": "M16 10V9" }
path { "d": "M16 15v-1" }
path { "d": "M16 21v-2" }
path { "d": "M16 5V3" }
path { "d": "M8 10V9" }
path { "d": "M8 15v-1" }
path { "d": "M8 21v-2" }
path { "d": "M8 5V3" }
rect {
"x": "3",
"y": "3",
"width": "18",
"height": "18",
"rx": "2",
}
}
}
}

View file

@ -0,0 +1,54 @@
use dioxus::prelude::*;
#[derive(Clone, PartialEq, Props)]
pub struct PanelTopBottomDashedProps {
#[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<String>,
pub style: Option<String>,
}
#[component]
pub fn PanelTopBottomDashed(props: PanelTopBottomDashedProps) -> 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": "M14 16h1" }
path { "d": "M14 8h1" }
path { "d": "M19 16h2" }
path { "d": "M19 8h2" }
path { "d": "M3 16h2" }
path { "d": "M3 8h2" }
path { "d": "M9 16h1" }
path { "d": "M9 8h1" }
rect {
"x": "3",
"y": "3",
"width": "18",
"height": "18",
"rx": "2",
}
}
}
}

View file

@ -34,10 +34,17 @@ pub fn Wallpaper(props: WallpaperProps) -> Element {
"stroke-width": "{stroke_width}",
"stroke-linecap": "round",
"stroke-linejoin": "round",
circle { "cx": "8", "cy": "9", "r": "2" }
path { "d": "m9 17 6.1-6.1a2 2 0 0 1 2.81.01L22 15V5a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2" }
path { "d": "M8 21h8" }
path { "d": "M12 17v4" }
path { "d": "M8 21h8" }
path { "d": "m9 17 6.1-6.1a2 2 0 0 1 2.81.01L22 15" }
circle { "cx": "8", "cy": "9", "r": "2" }
rect {
"x": "2",
"y": "3",
"width": "20",
"height": "14",
"rx": "2",
}
}
}
}

View file

@ -29,17 +29,17 @@ pub fn Building(
stroke-linecap="round"
stroke-linejoin="round"
>
<rect width="16" height="20" x="4" y="2" rx="2" ry="2" />
<path d="M9 22v-4h6v4" />
<path d="M8 6h.01" />
<path d="M16 6h.01" />
<path d="M12 6h.01" />
<path d="M12 10h.01" />
<path d="M12 14h.01" />
<path d="M12 6h.01" />
<path d="M16 10h.01" />
<path d="M16 14h.01" />
<path d="M16 6h.01" />
<path d="M8 10h.01" />
<path d="M8 14h.01" />
<path d="M8 6h.01" />
<path d="M9 22v-3a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v3" />
<rect x="4" y="2" width="16" height="20" rx="2" />
</svg>
}
}

View file

@ -0,0 +1,39 @@
use leptos::{prelude::*, svg::Svg};
#[component]
pub fn Chromium(
#[prop(default = 24.into(), into)] size: Signal<usize>,
#[prop(default = "currentColor".into(), into)] color: Signal<String>,
#[prop(default = "none".into(), into)] fill: Signal<String>,
#[prop(default = 2.into(), into)] stroke_width: Signal<usize>,
#[prop(default = false.into(), into)] absolute_stroke_width: Signal<bool>,
#[prop(optional)] node_ref: NodeRef<Svg>,
) -> impl IntoView {
let stroke_width = Signal::derive(move || {
if absolute_stroke_width.get() {
stroke_width.get() * 24 / size.get()
} else {
stroke_width.get()
}
});
view! {
<svg
node_ref=node_ref
class:lucide=true
xmlns="http://www.w3.org/2000/svg"
width=size
height=size
viewBox="0 0 24 24"
fill=fill
stroke=color
stroke-width=stroke_width
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M10.88 21.94 15.46 14" />
<path d="M21.17 8H12" />
<path d="M3.95 6.06 8.54 14" />
<circle cx="12" cy="12" r="10" />
<circle cx="12" cy="12" r="4" />
</svg>
}
}

View file

@ -29,20 +29,20 @@ pub fn Cog(
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M12 20a8 8 0 1 0 0-16 8 8 0 0 0 0 16Z" />
<path d="M12 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z" />
<path d="M12 2v2" />
<path d="M12 22v-2" />
<path d="m17 20.66-1-1.73" />
<path d="M11 10.27 7 3.34" />
<path d="m20.66 17-1.73-1" />
<path d="m3.34 7 1.73 1" />
<path d="m11 13.73-4 6.93" />
<path d="M12 22v-2" />
<path d="M12 2v2" />
<path d="M14 12h8" />
<path d="m17 20.66-1-1.73" />
<path d="m17 3.34-1 1.73" />
<path d="M2 12h2" />
<path d="m20.66 17-1.73-1" />
<path d="m20.66 7-1.73 1" />
<path d="m3.34 17 1.73-1" />
<path d="m17 3.34-1 1.73" />
<path d="m11 13.73-4 6.93" />
<path d="m3.34 7 1.73 1" />
<circle cx="12" cy="12" r="2" />
<circle cx="12" cy="12" r="8" />
</svg>
}
}

View file

@ -807,7 +807,7 @@ mod chevrons_up;
#[cfg(feature = "arrows")]
mod chevrons_up_down;
#[cfg(feature = "brands")]
mod chrome;
mod chromium;
#[cfg(any(feature = "buildings", feature = "navigation"))]
mod church;
#[cfg(any(feature = "travel", feature = "transportation", feature = "medical"))]
@ -2593,6 +2593,8 @@ mod panel_left_dashed;
#[cfg(any(feature = "layout", feature = "arrows"))]
mod panel_left_open;
#[cfg(feature = "layout")]
mod panel_left_right_dashed;
#[cfg(feature = "layout")]
mod panel_right;
#[cfg(any(feature = "layout", feature = "arrows"))]
mod panel_right_close;
@ -2602,6 +2604,8 @@ mod panel_right_dashed;
mod panel_right_open;
#[cfg(any(feature = "layout", feature = "design", feature = "development"))]
mod panel_top;
#[cfg(feature = "layout")]
mod panel_top_bottom_dashed;
#[cfg(any(feature = "layout", feature = "arrows"))]
mod panel_top_close;
#[cfg(feature = "layout")]
@ -4956,7 +4960,7 @@ pub use chevrons_up::*;
#[cfg(feature = "arrows")]
pub use chevrons_up_down::*;
#[cfg(feature = "brands")]
pub use chrome::*;
pub use chromium::*;
#[cfg(any(feature = "buildings", feature = "navigation"))]
pub use church::*;
#[cfg(any(feature = "travel", feature = "transportation", feature = "medical"))]
@ -6742,6 +6746,8 @@ pub use panel_left_dashed::*;
#[cfg(any(feature = "layout", feature = "arrows"))]
pub use panel_left_open::*;
#[cfg(feature = "layout")]
pub use panel_left_right_dashed::*;
#[cfg(feature = "layout")]
pub use panel_right::*;
#[cfg(any(feature = "layout", feature = "arrows"))]
pub use panel_right_close::*;
@ -6751,6 +6757,8 @@ pub use panel_right_dashed::*;
pub use panel_right_open::*;
#[cfg(any(feature = "layout", feature = "design", feature = "development"))]
pub use panel_top::*;
#[cfg(feature = "layout")]
pub use panel_top_bottom_dashed::*;
#[cfg(any(feature = "layout", feature = "arrows"))]
pub use panel_top_close::*;
#[cfg(feature = "layout")]

View file

@ -0,0 +1,43 @@
use leptos::{prelude::*, svg::Svg};
#[component]
pub fn PanelLeftRightDashed(
#[prop(default = 24.into(), into)] size: Signal<usize>,
#[prop(default = "currentColor".into(), into)] color: Signal<String>,
#[prop(default = "none".into(), into)] fill: Signal<String>,
#[prop(default = 2.into(), into)] stroke_width: Signal<usize>,
#[prop(default = false.into(), into)] absolute_stroke_width: Signal<bool>,
#[prop(optional)] node_ref: NodeRef<Svg>,
) -> impl IntoView {
let stroke_width = Signal::derive(move || {
if absolute_stroke_width.get() {
stroke_width.get() * 24 / size.get()
} else {
stroke_width.get()
}
});
view! {
<svg
node_ref=node_ref
class:lucide=true
xmlns="http://www.w3.org/2000/svg"
width=size
height=size
viewBox="0 0 24 24"
fill=fill
stroke=color
stroke-width=stroke_width
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M16 10V9" />
<path d="M16 15v-1" />
<path d="M16 21v-2" />
<path d="M16 5V3" />
<path d="M8 10V9" />
<path d="M8 15v-1" />
<path d="M8 21v-2" />
<path d="M8 5V3" />
<rect x="3" y="3" width="18" height="18" rx="2" />
</svg>
}
}

View file

@ -0,0 +1,43 @@
use leptos::{prelude::*, svg::Svg};
#[component]
pub fn PanelTopBottomDashed(
#[prop(default = 24.into(), into)] size: Signal<usize>,
#[prop(default = "currentColor".into(), into)] color: Signal<String>,
#[prop(default = "none".into(), into)] fill: Signal<String>,
#[prop(default = 2.into(), into)] stroke_width: Signal<usize>,
#[prop(default = false.into(), into)] absolute_stroke_width: Signal<bool>,
#[prop(optional)] node_ref: NodeRef<Svg>,
) -> impl IntoView {
let stroke_width = Signal::derive(move || {
if absolute_stroke_width.get() {
stroke_width.get() * 24 / size.get()
} else {
stroke_width.get()
}
});
view! {
<svg
node_ref=node_ref
class:lucide=true
xmlns="http://www.w3.org/2000/svg"
width=size
height=size
viewBox="0 0 24 24"
fill=fill
stroke=color
stroke-width=stroke_width
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M14 16h1" />
<path d="M14 8h1" />
<path d="M19 16h2" />
<path d="M19 8h2" />
<path d="M3 16h2" />
<path d="M3 8h2" />
<path d="M9 16h1" />
<path d="M9 8h1" />
<rect x="3" y="3" width="18" height="18" rx="2" />
</svg>
}
}

View file

@ -29,10 +29,11 @@ pub fn Wallpaper(
stroke-linecap="round"
stroke-linejoin="round"
>
<circle cx="8" cy="9" r="2" />
<path d="m9 17 6.1-6.1a2 2 0 0 1 2.81.01L22 15V5a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2" />
<path d="M8 21h8" />
<path d="M12 17v4" />
<path d="M8 21h8" />
<path d="m9 17 6.1-6.1a2 2 0 0 1 2.81.01L22 15" />
<circle cx="8" cy="9" r="2" />
<rect x="2" y="3" width="20" height="14" rx="2" />
</svg>
}
}

View file

@ -41,17 +41,17 @@ pub fn Building(props: &BuildingProps) -> Html {
stroke-linecap="round"
stroke-linejoin="round"
>
<rect width="16" height="20" x="4" y="2" rx="2" ry="2" />
<path d="M9 22v-4h6v4" />
<path d="M8 6h.01" />
<path d="M16 6h.01" />
<path d="M12 6h.01" />
<path d="M12 10h.01" />
<path d="M12 14h.01" />
<path d="M12 6h.01" />
<path d="M16 10h.01" />
<path d="M16 14h.01" />
<path d="M16 6h.01" />
<path d="M8 10h.01" />
<path d="M8 14h.01" />
<path d="M8 6h.01" />
<path d="M9 22v-3a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v3" />
<rect x="4" y="2" width="16" height="20" rx="2" />
</svg>
}
}

View file

@ -0,0 +1,51 @@
use yew::prelude::*;
#[derive(PartialEq, Properties)]
pub struct ChromiumProps {
#[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<AttrValue>,
#[prop_or_default]
pub node_ref: NodeRef,
}
#[function_component]
pub fn Chromium(props: &ChromiumProps) -> Html {
let stroke_width = if props.absolute_stroke_width {
props.stroke_width * 24 / props.size
} else {
props.stroke_width
};
html! {
<svg
ref={props.node_ref.clone()}
class={classes!("lucide", props.class
.clone())}
style={props.style.clone()}
xmlns="http://www.w3.org/2000/svg"
width={props.size.to_string()}
height={props.size.to_string()}
viewBox="0 0 24 24"
fill={& props.fill}
stroke={& props.color}
stroke-width={stroke_width.to_string()}
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M10.88 21.94 15.46 14" />
<path d="M21.17 8H12" />
<path d="M3.95 6.06 8.54 14" />
<circle cx="12" cy="12" r="10" />
<circle cx="12" cy="12" r="4" />
</svg>
}
}

View file

@ -41,20 +41,20 @@ pub fn Cog(props: &CogProps) -> Html {
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M12 20a8 8 0 1 0 0-16 8 8 0 0 0 0 16Z" />
<path d="M12 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z" />
<path d="M12 2v2" />
<path d="M12 22v-2" />
<path d="m17 20.66-1-1.73" />
<path d="M11 10.27 7 3.34" />
<path d="m20.66 17-1.73-1" />
<path d="m3.34 7 1.73 1" />
<path d="m11 13.73-4 6.93" />
<path d="M12 22v-2" />
<path d="M12 2v2" />
<path d="M14 12h8" />
<path d="m17 20.66-1-1.73" />
<path d="m17 3.34-1 1.73" />
<path d="M2 12h2" />
<path d="m20.66 17-1.73-1" />
<path d="m20.66 7-1.73 1" />
<path d="m3.34 17 1.73-1" />
<path d="m17 3.34-1 1.73" />
<path d="m11 13.73-4 6.93" />
<path d="m3.34 7 1.73 1" />
<circle cx="12" cy="12" r="2" />
<circle cx="12" cy="12" r="8" />
</svg>
}
}

View file

@ -809,7 +809,7 @@ mod chevrons_up;
#[cfg(feature = "arrows")]
mod chevrons_up_down;
#[cfg(feature = "brands")]
mod chrome;
mod chromium;
#[cfg(any(feature = "buildings", feature = "navigation"))]
mod church;
#[cfg(any(feature = "travel", feature = "transportation", feature = "medical"))]
@ -2595,6 +2595,8 @@ mod panel_left_dashed;
#[cfg(any(feature = "layout", feature = "arrows"))]
mod panel_left_open;
#[cfg(feature = "layout")]
mod panel_left_right_dashed;
#[cfg(feature = "layout")]
mod panel_right;
#[cfg(any(feature = "layout", feature = "arrows"))]
mod panel_right_close;
@ -2604,6 +2606,8 @@ mod panel_right_dashed;
mod panel_right_open;
#[cfg(any(feature = "layout", feature = "design", feature = "development"))]
mod panel_top;
#[cfg(feature = "layout")]
mod panel_top_bottom_dashed;
#[cfg(any(feature = "layout", feature = "arrows"))]
mod panel_top_close;
#[cfg(feature = "layout")]
@ -4958,7 +4962,7 @@ pub use chevrons_up::*;
#[cfg(feature = "arrows")]
pub use chevrons_up_down::*;
#[cfg(feature = "brands")]
pub use chrome::*;
pub use chromium::*;
#[cfg(any(feature = "buildings", feature = "navigation"))]
pub use church::*;
#[cfg(any(feature = "travel", feature = "transportation", feature = "medical"))]
@ -6744,6 +6748,8 @@ pub use panel_left_dashed::*;
#[cfg(any(feature = "layout", feature = "arrows"))]
pub use panel_left_open::*;
#[cfg(feature = "layout")]
pub use panel_left_right_dashed::*;
#[cfg(feature = "layout")]
pub use panel_right::*;
#[cfg(any(feature = "layout", feature = "arrows"))]
pub use panel_right_close::*;
@ -6753,6 +6759,8 @@ pub use panel_right_dashed::*;
pub use panel_right_open::*;
#[cfg(any(feature = "layout", feature = "design", feature = "development"))]
pub use panel_top::*;
#[cfg(feature = "layout")]
pub use panel_top_bottom_dashed::*;
#[cfg(any(feature = "layout", feature = "arrows"))]
pub use panel_top_close::*;
#[cfg(feature = "layout")]

View file

@ -0,0 +1,55 @@
use yew::prelude::*;
#[derive(PartialEq, Properties)]
pub struct PanelLeftRightDashedProps {
#[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<AttrValue>,
#[prop_or_default]
pub node_ref: NodeRef,
}
#[function_component]
pub fn PanelLeftRightDashed(props: &PanelLeftRightDashedProps) -> Html {
let stroke_width = if props.absolute_stroke_width {
props.stroke_width * 24 / props.size
} else {
props.stroke_width
};
html! {
<svg
ref={props.node_ref.clone()}
class={classes!("lucide", props.class
.clone())}
style={props.style.clone()}
xmlns="http://www.w3.org/2000/svg"
width={props.size.to_string()}
height={props.size.to_string()}
viewBox="0 0 24 24"
fill={& props.fill}
stroke={& props.color}
stroke-width={stroke_width.to_string()}
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M16 10V9" />
<path d="M16 15v-1" />
<path d="M16 21v-2" />
<path d="M16 5V3" />
<path d="M8 10V9" />
<path d="M8 15v-1" />
<path d="M8 21v-2" />
<path d="M8 5V3" />
<rect x="3" y="3" width="18" height="18" rx="2" />
</svg>
}
}

View file

@ -0,0 +1,55 @@
use yew::prelude::*;
#[derive(PartialEq, Properties)]
pub struct PanelTopBottomDashedProps {
#[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<AttrValue>,
#[prop_or_default]
pub node_ref: NodeRef,
}
#[function_component]
pub fn PanelTopBottomDashed(props: &PanelTopBottomDashedProps) -> Html {
let stroke_width = if props.absolute_stroke_width {
props.stroke_width * 24 / props.size
} else {
props.stroke_width
};
html! {
<svg
ref={props.node_ref.clone()}
class={classes!("lucide", props.class
.clone())}
style={props.style.clone()}
xmlns="http://www.w3.org/2000/svg"
width={props.size.to_string()}
height={props.size.to_string()}
viewBox="0 0 24 24"
fill={& props.fill}
stroke={& props.color}
stroke-width={stroke_width.to_string()}
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M14 16h1" />
<path d="M14 8h1" />
<path d="M19 16h2" />
<path d="M19 8h2" />
<path d="M3 16h2" />
<path d="M3 8h2" />
<path d="M9 16h1" />
<path d="M9 8h1" />
<rect x="3" y="3" width="18" height="18" rx="2" />
</svg>
}
}

View file

@ -41,12 +41,11 @@ pub fn Wallpaper(props: &WallpaperProps) -> Html {
stroke-linecap="round"
stroke-linejoin="round"
>
<circle cx="8" cy="9" r="2" />
<path
d="m9 17 6.1-6.1a2 2 0 0 1 2.81.01L22 15V5a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2"
/>
<path d="M8 21h8" />
<path d="M12 17v4" />
<path d="M8 21h8" />
<path d="m9 17 6.1-6.1a2 2 0 0 1 2.81.01L22 15" />
<circle cx="8" cy="9" r="2" />
<rect x="2" y="3" width="20" height="14" rx="2" />
</svg>
}
}

View file

@ -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.540.0";
pub const UPSTREAM_GIT_REF: &str = "0.541.0";
pub const UPSTREAM_GITHUB_URL: &str = "https://github.com/lucide-icons/lucide";